为多模式内容创建知识库 - Amazon Bedrock

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

为多模式内容创建知识库

您可以使用控制台或 API 创建多模式知识库。根据您的多式联运处理需求选择您的方法。

重要

多模式支持仅在创建包含非结构化数据源的知识库时可用。结构化数据源不支持多模式内容处理。

Console
从控制台创建多模式知识库
  1. 使用有权使用 Amazon Bedrock 控制台的 IAM 身份登录。AWS 管理控制台然后,在 https://console.aws.amazon.com/bedrock 上打开 Amazon Bedrock 控制台。

  2. 在左侧导航窗格中,选择知识库

  3. 知识库部分中,选择创建,然后选择带有向量存储的知识库

  4. (可选)在知识库详细信息下方,更改默认名称并为知识库提供描述。

  5. IAM 权限下,选择一个能够向 Amazon Bedrock 授予对其他所需 AWS 服务的访问权限的 IAM 角色。您可以让 Amazon Bedrock 为您创建服务角色,也可以选择使用自己的自定义角色。有关多模式权限,请参阅多模式内容的权限

  6. 选择 Amazon S3 作为您的数据源,然后选择 “下一步” 来配置您的数据源。

    注意

    在创建知识库期间,您最多可以添加 5 个 Amazon S3 数据源。创建知识库后,可以添加其他数据源。

  7. 提供包含您的多式联运内容的存储桶的 S3 URI,并根据需要配置包含前缀。包含前缀是一个文件夹路径,可用于限制要摄取的内容。

  8. 在 “分块和解析配置” 下,选择您的解析策略:

    • Bedrock 默认解析器:推荐用于纯文本内容处理。该解析器处理常见的文本格式,同时忽略多模态文件。支持文本文档,包括 Word、Excel、HTML、Markdown、TXT 和 CSV 文件。

    • 基岩数据自动化 (BDA):将多模式内容转换为可搜索的文本表示形式。处理图像 PDFs、音频和视频文件以提取文本、生成视觉内容描述以及为音频和视频内容创建转录。

    • 基础模型解析器:为复杂的文档结构提供高级解析功能。处理图像 PDFs、结构化文档、表格和视觉丰富的内容,以提取文本并生成视觉元素的描述。

  9. 选择 “下一步”,然后选择您的嵌入模型和多模态处理方法。

    • Amazon Nova 多模态嵌入 V1.0:选择 A mazon Nova 嵌入 V1.0 进行直接的视觉和音频相似度搜索。配置音频和视频区块持续时间(1-30 秒,默认为 5 秒),以控制内容的分段方式。

      注意

      音频和视频分块参数是在嵌入模型级别配置的,而不是在数据源级别配置的。如果您为非多模嵌入模型提供此配置,则会发生验证异常。配置音频和视频区块持续时间(默认值:5 秒,范围:1-30 秒),以控制内容的分段方式。较短的区块可以实现精确的内容检索,而较长的区块可以保留更多的语义上下文。

      重要

      Amazon Nova 嵌入 v1.0 对在 audio/video 数据中搜索语音内容的支持有限。如果你需要支持语音,可以使用 Bedrock 数据自动化作为解析器。

    • 使用 BDA 进行文本嵌入:使用 BDA 处理时选择文本嵌入模型(例如 Titan 文本嵌入 v2)。文本嵌入模型将检索限制为纯文本内容,但您可以通过选择 Amazon Bedrock 数据自动化或基础模型作为解析器来启用多模式检索。

      注意

      如果你将 BDA 解析器与 Nova 多模态嵌入一起使用,Amazon Bedrock 知识库将首先使用 BDA 解析。在这种情况下,嵌入模型不会为图像、音频和视频生成原生多模态嵌入,因为 BDA 会将这些嵌入转换为文本表示。

  10. 如果使用 Nova 多模态嵌入,请通过指定用于存储已处理文件以供检索的 Amazon S3 存储桶来配置多模式存储目标。知识库会将解析后的图像存储到单个 Amazon S3 存储桶中,其文件夹创建为.bda,便于访问。

    生命周期策略建议

    使用 Nova 多模式嵌入时,Amazon Bedrock 会将瞬态数据存储在您的多模式存储目标中,并在处理完成后尝试将其删除。我们建议在临时数据路径上应用生命周期策略,以确保正确清理。有关详细说明,请参阅使用 Amazon S3 生命周期策略管理临时数据

  11. 矢量数据库部分,选择矢量存储方法,并根据所选的嵌入模型配置适当的维度。

  12. 选择 “下一步” 并查看知识库配置的详细信息,然后选择 “创建知识库”。

CLI
要创建多式联运知识库,请使用 AWS CLI
  • 使用 Nova 多模态嵌入创建知识库。发送CreateKnowledgeBase请求:

    aws bedrock-agent create-knowledge-base \ --cli-input-json file://kb-nova-mme.json

    的内容kb-nova-mme.json(用您的特定配置替换占位符值):

    { "knowledgeBaseConfiguration": { "vectorKnowledgeBaseConfiguration": { "embeddingModelArn": "arn:aws:bedrock:us-east-1::foundation-model/amazon.nova-2-multimodal-embeddings-v1:0", "supplementalDataStorageConfiguration": { "storageLocations": [ { "type": "S3", "s3Location": { "uri": "s3://<multimodal-storage-bucket>/" } } ] } }, "type": "VECTOR" }, "storageConfiguration": { "opensearchServerlessConfiguration": { "collectionArn": "arn:aws:aoss:us-east-1:<account-id>:collection/<collection-id>", "vectorIndexName": "<index-name>", "fieldMapping": { "vectorField": "<vector-field>", "textField": "<text-field>", "metadataField": "<metadata-field>" } }, "type": "OPENSEARCH_SERVERLESS" }, "name": "<knowledge-base-name>", "description": "Multimodal knowledge base with Nova Multimodal Embeddings" }

    替换以下占位符:

    • <multimodal-storage-bucket>-用于存储多模式文件的 S3 存储桶

    • <account-id>-您的 AWS 账户编号

    • <collection-id>- OpenSearch 无服务器集合 ID

    • <index-name>- OpenSearch 集合中的矢量索引名称(为所选嵌入模型配置了适当的尺寸)

    • <vector-field>-用于存储嵌入内容的字段名称

    • <text-field>-用于存储文本内容的字段名称

    • <metadata-field>-用于存储元数据的字段名称