多知识库设置和内容分割 - Amazon Connect

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

多知识库设置和内容分割

使用 Orchestration AI 代理时,您可以配置 “检索” 工具,允许您的 AI 代理搜索知识库并返回相关信息以回答用户问题。

每个 “检索” 工具都会查询一个知识库。通过配置多个检索工具,您可以让 AI 代理同时查询多个知识库,或者根据用户的问题智能地选择要搜索的知识库。定义明确的工具描述和提示说明使模型能够自动将查询路由到最相关的知识库。

您可以在两个级别上控制 AI 代理查询内容的方式:

  • 知识库级别:配置多个检索工具以查询不同的知识库。当你的内容被组织成多个知识库时,请使用这种方法。

  • 内容级别:使用内容分段仅查询单个知识库中的特定内容。

如何配置编排代理以查询多个知识库

您可以配置多个 “检索” 工具来查询不同的知识库。根据您的用例,您可以:

  • 同时查询所有知识库(并行调用)

  • 根据请求的上下文查询特定的知识库(条件调用)

设置多个 “检索” 工具

两种配置都需要相同的初始设置。请先完成这些步骤,然后按照特定用例的说明进行操作。

  1. 在 AWS 控制台中,您可以通过选择 “添加集成” 并按照指导体验来添加其他知识库。在此示例中,我们添加了 demo-byobkb 作为附加知识库。

    AI 代理域页面上显示了多个集成
  2. 在 AI Agent Designer 中,创建新的 Orchestration AI 代理,然后编辑默认的检索工具

    AI 代理生成器页面
  3. 将现有知识库与检索工具相关联。AI 代理将使用此知识库作为默认知识库

    为检索工具选择助手关联。
  4. 添加其他工具,选择 Amazon Connect 作为命名空间,然后选择检索 AI 工具的类型

    选择检索工具。
  5. 现在,选择除默认知识库之外要关联的其他知识库

    为检索工具选择助手关联。
  6. 以 “检索” 开头为每个其他检索工具命名(例如 Retrieve2、Retrieve3、、)。 RetrieveProducts RetrievePolicies

    命名检索工具
  7. 接下来,配置工具说明和示例。配置因您的用例而异。以下各节涵盖两种情况:同时查询所有知识库和有选择地查询知识库。

同时查询所有知识库

如果您希望代理同时搜索所有知识库以查找每个查询,请使用此配置。

配置工具说明

  1. 复制默认 “检索” 工具中的说明和示例,填写工具说明。

    检索工具说明
  2. 单击 “添加” 按钮创建新的 “检索” 工具。现在,您的工具列表应该有新的 “检索” 工具。

    包含多个检索工具的工具列表

    现在,您有了第二个 “检索” 工具。要同时使用所有 “检索” 工具,必须修改提示并说明如何同时调用它们。如果不进行此更改,则将只使用一个 “检索” 工具。

更新 parallel 调用的提示

  1. 修改提示以指示其使用多个 “检索” 工具。无法直接编辑默认的编排提示,因此您需要使用所做的更改创建副本。

    通过复制与您的用例相匹配的默认编排提示来创建新提示。在这个例子中,我们从 AgentAssistanceOrchestration 提示符中复制。

    创建新的 AI 提示屏幕
  2. 单击 “创建” 按钮,您将进入可以修改提示的页面。

  3. 根据您的编排类型修改您的提示:

    • 有关代理协助编排提示:

      在编排提示符中找到编号规则部分。本节以一行开头,类似于:

      Your goal is to resolve the customer's issue while also being responsive. While responding, follow these important rules:

      在本节中添加以下内容作为最后一条编号规则:

      CRITICAL - Multiple Retrieve Tools: When multiple Retrieve-type tools are available ([Retrieve], [Retrieve2]), you MUST invoke ALL of them simultaneously for any search request. Never use only one Retrieve tool when multiple are available-always select and invoke them together to ensure comprehensive results from all knowledge sources.

    • 对于自助服务编排提示:

      找到 core_behavior 部分。在该部分中添加以下规则:

      CRITICAL - Multiple Retrieve Tools: When multiple Retrieve-type tools are available ([Retrieve], [Retrieve2]), you MUST invoke ALL of them simultaneously for any search request. Never use only one Retrieve tool when multiple are available—always invoke them together to ensure comprehensive results from all knowledge sources.

    注意

    将方括号内的占位符替换为实际的工具名称。

有选择地查询知识库

如果您希望代理根据问题类型或上下文选择适当的知识库,请使用此配置。

为每个知识库配置工具说明

与并行调用不同,每个检索工具都需要不同的说明来描述何时应该使用它。这包括默认的 “检索” 工具,您必须更新其说明以将其与其他检索工具区分开来。使用反映每个知识库内容的描述性名称(例如 RetrieveProducts, RetrievePolicies)来帮助模型选择正确的工具。

  1. 对于每个 “检索” 工具(包括默认工具),编写具体的说明,描述其相关知识库的内容以及何时使用该工具。

    检索工具说明
  2. 单击 “添加” 按钮创建新的 “检索” 工具。现在,您的工具列表应该有新的 “检索” 工具。

    包含多个检索工具的工具列表

    现在,您有了第二个 “检索” 工具。要让代理根据上下文选择合适的工具,您必须修改提示,说明何时使用每种工具。

更新条件调用的提示

  1. 修改提示以指示其根据上下文选择相应的 “检索” 工具。无法直接编辑默认的编排提示,因此您需要使用所做的更改创建副本。

    通过复制与您的用例相匹配的默认编排提示来创建新提示。在这个例子中,我们从 AgentAssistanceOrchestration 提示符中复制。

    创建新的 AI 提示屏幕
  2. 单击 “创建” 按钮,您将进入可以修改提示的页面。

  3. 根据您的编排类型修改您的提示:

    • 有关代理协助编排提示:

      在编排提示符中找到编号规则部分。本节以一行开头,类似于:

      Your goal is to resolve the customer's issue while also being responsive. While responding, follow these important rules:

      在本节中添加以下内容作为最后一条编号规则:

      CRITICAL - Retrieve Tool Selection: You have multiple Retrieve tools. Each queries a different knowledge base. You MUST select only ONE tool per question based on the topic. - [Retrieve] contains [description]. - [Retrieve2] contains [description]. Evaluate the question, match it to the most relevant tool, and invoke only that tool.

    • 对于自助服务编排提示:

      找到 core_behavior 部分。在该部分中添加以下规则:

      CRITICAL - Retrieve Tool Selection: You have multiple Retrieve tools. Each queries a different knowledge base. You MUST select only ONE tool per question based on the topic. - [Retrieve] contains [description]. - [Retrieve2] contains [description]. Evaluate the question, match it to the most relevant tool, and invoke only that tool.

    注意

    将方括号内的占位符替换为实际的工具名称、描述和示例问题。

    精确选择刀具的最佳实践

    模型选择正确检索工具的能力取决于几个因素:工具名称、工具描述、工具示例和提示说明。请遵循以下准则:

    • 使用描述性工具名称:名称类似 RetrieveProducts 或 RetrievePolicies 帮助模型理解每个工具的用途。

    • 描述要具体:避免使用模糊的描述,比如 “一般信息”。列出每个知识库处理的特定主题、文档类型或问题类别。

    • 添加示例问题:在工具说明中加入示例问题,以帮助模型了解预期用例。

    • 避免重叠:确保工具名称、描述和示例相互排斥。重叠的内容可能会导致模型的选择不一致。

    • 将术语与用户语言相匹配:使用用户通常使用的相同单词和短语,而不仅仅是内部术语或技术术语。

    除了此处提供的示例之外,您的用例可能需要进行其他提示修改。

内容分割

内容分段允许您标记知识库内容并根据这些标签筛选检索结果。当你的 LLM 工具查询知识库时,它可以指定标签以仅检索与这些标签匹配的内容,从而实现来自特定内容子集的有针对性的响应。

注意

内容分段不适用于网络爬虫数据源类型。

按数据源类型为内容添加标签

为内容添加标签的过程因您的数据源类型而异。

S3、Salesforce、 SharePoint、Zendesk 和 ServiceNow

创建知识库后,您可以将标签应用于各个内容项以进行细分。标签应用于内容级别,这意味着必须对每条内容进行单独标记。

要为内容添加标签,请使用 Amazon Connect TagResource API。此 API 允许您以编程方式向知识库内容添加标签,然后可以在检索期间使用这些标签进行内容分段筛选。

有关为内容添加标签的示例,请参阅内容细分研讨会

在 “检索” 工具中使用标签

为内容添加标签后,您可以通过在 “检索” 工具配置中指定标签过滤器来筛选检索结果。

  1. 在检索工具配置中,导航至覆盖输入值部分。

  2. 添加键值对来定义标签过滤器。你需要两个替换才能按单个标签进行筛选。在这个例子中,我们使用equals作为过滤器运算符:

    • 将属性键设置retrievalConfiguration.filter.equals.key为,将值作为标签名称(例如number)。

      设置过滤键覆盖
    • 将属性键设置retrievalConfiguration.filter.equals.value为,将值作为标签值(例如one)。

      设置过滤器值覆盖

您可以使用任何以开头的筛选器配置retrievalConfiguration.filter来定义标签筛选标准。

已完成标签筛选器配置

Bedrock 知识库

对于 Bedrock 知识库数据源,内容不作为 Amazon Connect 资源存储,因此无法通过 TagResource API 进行标记。相反,您必须直接在 Bedrock 知识库数据源上定义元数据字段。

对于 S3 数据源,请参阅 Amazon Bedrock S3 数据源连接器用户指南中的文档元数据字段部分。

有关其他数据源类型,请参阅 Amazon Bedrock 文档中的摄取期间的自定义转换

在 “检索” 工具中使用元数据字段

Bedrock 知识库会自动为所有文件提供内置的元数据字段。您可以使用这些字段在 “检索” 工具中筛选检索结果,其配置方法与上述示例中显示的配置方法相同。

要仅从 Bedrock 知识库中的特定数据源检索结果,请按以下方式配置过滤器替代:

  • retrievalConfiguration.filter.equals.key = x-amz-bedrock-kb-data-source-id

  • retrievalConfiguration.filter.equals.value = [your-data-source-id]

这会筛选 “检索” 工具,使其仅从该特定数据源获取结果。您还可以使用相同的覆盖配置按在 Bedrock 数据源上定义的自定义元数据字段进行筛选。