View a markdown version of this page

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

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

为多模态内容创建知识库

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

重要

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

Console
从控制台创建多模态知识库
  1. 使用有权使用亚马逊 Bedrock 控制台的 IAM 身份登录。 AWS 管理控制台 然后,在以下位置打开亚马逊 Bedrock 控制台。 https://console.aws.amazon.com/bedrock

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

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

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

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

  6. 选择 Amazon S3 作为您的数据源,然后选择 Next 来配置您的数据源。

    注意

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

  7. 提供包含您的多模式内容的存储桶的 S3 URI,并在需要时配置包含前缀。包含前缀是一个文件夹路径,可用于限制收录的内容。

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

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

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

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

  9. 选择 Next 并选择您的嵌入模型和多模态处理方法。

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

      注意

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

      重要

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

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

      注意

      如果您将 BDA 解析器与 Nova 多模态嵌入一起使用,亚马逊基岩知识库将首先使用 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 账户 ID

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

    • <index-name>- OpenSearch 集合中的矢量索引名称(为所选嵌入模型配置了相应的维度)

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

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

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