本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Amazon Bedrock 知识库中创建知识库
Amazon Bedrock 知识库允许您将专有信息集成到生成人工智能应用程序中,以创建检索增强生成 () 解决方案。RAG知识库会搜索您的数据以找到最有用的信息,并可以用它来回答自然语言问题。
注意
您无法使用根用户创建知识库。在开始这些步骤之前,请先IAM使用用户登录。
创建知识库时,需要设置知识库的配置和权限,选择要连接的数据源,选择将数据转换为嵌入的嵌入模型,以及用于保存矢量嵌入的矢量存储。选择您首选方法的选项卡,然后按照以下步骤操作:
- Console
-
为知识库设置配置和权限
-
AWS Management Console 使用具有 Amazon Bedrock 权限的IAM角色登录,然后通过以下网址打开 Amazon Bedrock 控制台。https://console.aws.amazon.com/bedrock/
-
在左侧导航窗格中,选择知识库。
-
在知识库部分,选择创建按钮。
-
(可选)更改默认名称并提供知识库的描述。
-
选择一个向 Amazon Bedrock 提供访问其他所需 AWS 服务的权限的 AWS Identity and Access Management (IAM) 角色。您可以让 Amazon Bedrock 创建服务角色,也可以选择您已创建的自定义角色。
-
选择要连接知识库的数据源。
-
(可选)向知识库添加标签。有关更多信息,请参阅 标记 Amazon Bedrock 资源。
-
(可选)配置要为知识库提供活动日志的服务。
-
转至下一节并按照中的将数据源连接到您的知识库步骤配置数据源。
-
选择嵌入模型,将您的数据转换为矢量嵌入。
-
(可选)展开 “其他配置” 部分以查看以下配置选项(并非所有型号都支持所有配置):
-
嵌入类型-是将数据转换为浮点 (float32) 向量嵌入(更精确,但成本更高)还是二进制向量嵌入(精度较低,但成本更低)。要了解哪些嵌入模型支持二进制向量,请参阅支持的嵌入模型。
-
矢量维度-值越高,精度越高,但会增加成本和延迟。
-
-
选择矢量存储来存储将用于查询的矢量嵌入。您有以下选项:
-
快速创建新的矢量存储库 — 选择一个可用的矢量库供亚马逊 Bedrock 创建。
-
Amazon OpenSearch Serverless — Amazon Bedrock 知识库创建了亚马逊 OpenSearch 无服务器矢量搜索集合和索引,并为您配置必填字段。
-
亚马逊 Aurora Postgre SQL Serverless — 亚马逊 Bedrock 开设了一家亚马逊 Aurora Postgre SQL 无服务器矢量商店。此过程从 Amazon S3 存储桶中获取非结构化文本数据,将其转换为文本块和矢量,然后将其存储在 Postgre 数据库中。SQL有关更多信息,请参阅为亚马逊 Bedrock 快速创建 Aurora Postgre SQL 知识库。
-
Amazon Neptune Analytics — Amazon Bedrock 使用检索增强生成 (RAG) 技术与图表相结合,增强生成式人工智能应用程序,以便最终用户可以获得更准确、更全面的响应。
-
-
选择已创建的矢量存储-选择支持的矢量存储,并在向量索引中标识矢量字段名称和元数据字段名称。有关更多信息,请参阅 将自己的向量存储用于知识库的先决条件。
注意
如果您的数据源是 Confluence SharePoint、Microsoft 或 Salesforce 实例,则唯一支持的矢量存储服务是 Amazon Serverless。 OpenSearch
-
-
如果您的数据源包含图像,请指定用于存储解析器将从数据URI中提取的图像的 Amazon S3。可以在查询期间返回图像。
注意
只有 Amazon S3 和自定义数据源支持多模式数据。
-
查看知识库的详细信息。在继续创建知识库之前,您可以编辑任何部分。
注意
创建知识库所用的时间取决于您的特定配置。知识库创建完成后,知识库的状态将更改为“已就绪”或“可用”。
知识库准备就绪并可供使用后,您可以首次同步数据来源,并在想要更新数据来源时进行同步。在控制台中选择知识库,然后在数据来源概述部分中选择同步。
-
- API
-
要创建知识库,请使用适用于 Amazon Bedrock 的代理构建时终端节点发送CreateKnowledgeBase请求。
注意
如果您要连接到非结构化数据源,并且希望让 Amazon Bedrock 在亚马逊 OpenSearch 服务中为您创建和管理矢量存储,请使用控制台。有关更多信息,请参阅 在 Amazon Bedrock 知识库中创建知识库。
以下字段是必填字段:
字段 Basic description 名称 知识库的名称 roleArn 知识库服务角色的。ARN knowledgeBaseConfiguration 包含知识库的配置。详情请见下文。 storageConfiguration (仅在连接到非结构化数据源时才需要)。包含您选择的数据源服务的配置。 在中
knowledgeBaseConfiguration
,指定您计划连接知识库的数据源,然后指定要使用的嵌入模型及其配置。type
ARN有关更多信息,请参阅VectorKnowledgeBaseConfiguration。 您可以指定以下类型:-
VECTOR
— 适用于非结构化数据源。指定ARN要使用的嵌入模型及其配置。有关更多信息,请参阅 VectorKnowledgeBaseConfiguration。 -
STRUCTURED
— 适用于结构化数据存储。指定要使用的结构化数据存储类型以及该数据存储的配置。
以下字段是可选字段:
字段 应用场景 description 知识库的描述。 clientToken 确保API请求只完成一次。有关更多信息,请参阅确保幂等性。 tags 将标签与流相关联。有关更多信息,请参阅 标记 Amazon Bedrock 资源。 该
knowledgeBaseConfiguration
字段映射到一个KnowledgeBaseConfiguration对象。在其中,在type
字段VECTOR
中指定。在中 VectorKnowledgeBaseConfiguration,指定ARN要使用的嵌入模型及其配置。该
storageConfiguration
字段映射到一个StorageConfiguration对象。在其中,指定您计划在type
字段中连接的矢量存储,并包括与该矢量存储对应的字段。有关您需要提供的信息的详细信息,请参阅中的每种矢量存储配置类型。StorageConfiguration -