View a markdown version of this page

利用知识库来增强代理的响应生成能力 - Amazon Bedrock

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

利用知识库来增强代理的响应生成能力

Amazon Bedrock 知识库可以帮助您利用检索增强生成(RAG),后者是一种常用技术,可从数据存储中提取信息来增强大型语言模型(LLM)生成的响应。如果您使用数据来源和向量存储来建立知识库,应用程序就可以查询该知识库以返回信息,通过直接引用数据来源或使用根据查询结果生成的自然响应来回答查询。

要在 Amazon Bedrock 代理中使用 Amazon Bedrock 知识库,您必须先创建一个知识库,然后将知识库与代理关联。如果您尚未创建知识库,请参阅 利用 Amazon Bedrock 知识库检索数据并生成人工智能响应,了解并创建知识库。您可以在创建代理时或在代理创建完成后关联知识库。要将知识库与现有代理关联,请选择与您的首选方法对应的选项卡,然后按照以下步骤操作:

Console
添加知识库
  1. 使用有权使用 Amazon Bedrock 控制台的 IAM 身份登录。 AWS 管理控制台 然后,打开 Amazon Bedrock 控制台,网址为https://console.aws.amazon.com/bedrock

  2. 从左侧导航窗格中选择代理。然后,在代理部分选择一个代理。

  3. 选择在代理生成器中编辑

  4. 知识库部分,选择添加

  5. 选择您创建的知识库,并提供有关代理应如何与之交互的说明。这些说明告诉客服人员在对话期间何时以及如何查询此知识库。代理在其提示上下文中包含这些说明,以决定是否从知识库中检索给定用户请求的信息。例如:Use this knowledge base to answer questions about company HR policies, benefits, and employee guidelines. Only query it when the user asks about internal company policies.

  6. 选择添加。此时顶部会出现成功横幅。

  7. 要在测试代理之前将所做的更改应用于代理,选择准备

API

要将知识库与代理关联,请向 Amazon Bedrock 构建时终端节点的代理发送AssociateAgentKnowledgeBase请求。

下表介绍了请求中的字段。

  • 以下字段是必填字段:

    字段 简短描述
    agentId 代理的 ID
    agentVersion 代理的版本
    知识 BaseId 知识库的 ID
  • 以下字段是可选字段:

    字段 简短描述
    描述 告诉代理何时以及如何查询此知识库的说明。代理在其提示中包含此文本,以确定是否要从知识库中检索给定用户请求的信息。将其写成指令,描述知识库包含的内容以及何时使用它。例如:Use this knowledge base to answer customer questions about product specifications, pricing, and availability. Do not query it for general conversation.
    知识 BaseState 要防止代理查询知识库,需指定 DISABLED

在调用代理时,您可以使用 InvokeAgent 请求中的 sessionState 字段修改附加到代理的知识库的查询配置。有关更多信息,请参阅 控制代理会话上下文