跳至内容

如何提高 Amazon Bedrock 知识库的搜索结果和检索准确性?

1 分钟阅读
0

我想提高我的 Amazon Bedrock 知识库的搜索结果准确性。

解决方法

使用基础模型解析文档

当文档内容复杂、非结构化或包含特定于域的术语时,最佳做法是使用基础模型来解析文档基础模型改进了文档中复杂数据的检索,例如嵌套表、图像中的文本以及文本的图形表示。要自定义基础模型解析文档的方式,请根据您的文档结构、域或用例提供相关说明。

使用高级分块策略

使用语义分块分层分块来提高检索增强生成 (RAG) 性能。

对于没有明确上下文边界的文档(例如法律文件或技术手册),请使用语义分块。语义分块提供更精确的信息提取和操作。

**注意:**使用语义分块会产生额外费用。成本取决于您的数据量。有关定价的信息,请参阅 Amazon Bedrock 53 定价

对于具有嵌套结构的复杂文档(例如技术文档或具有复杂格式和嵌套表的学术论文),请使用分层分块。分层分块使您可以有效地检索和浏览大型文档。首先使用基础模型解析数据,然后使用分层分块来提高生成的响应的准确性。

要自定义分块流程以符合您的 RAG 应用程序要求,请使用自定义 AWS Lambda 函数

筛选您的元数据

使用.csv 文件在数据来源中包含元数据。要减少所需文件的数量并改进数据管理,请使用列来指定内容字段和元数据字段。最佳做法是对大型 .csv 文件数据集使用此功能。

在文档字段或属性中添加筛选条件,以提高响应的相关性。您的数据来源可包含文档元数据属性或字段,以筛选和指定要嵌入的字段。有关详细信息,请参阅 Amazon Bedrock Knowledge Bases now supports metadata filtering to improve retrieval accuracy

自定义您的查询

将复杂查询修改为更小、更易于管理的子查询。当使用查询分解时,Amazon Bedrock 会在您的知识库上运行多个查询。要修改查询,请查看配置和自定义查询和响应生成中的 Query modifications(查询修改)选项卡。

默认情况下,当您查询知识库时,Amazon Bedrock 最多会返回五条与单个源分块对应的结果。要改进搜索结果,请增加 Amazon Bedrock 返回的源分块的数量。要增加源分块的数量,请查看配置和自定义查询和响应生成中的 Number of source chunks(源分块数量)选项卡。

使用混合搜索

要实现多重搜索算法功能,请使用混合搜索。语义搜索会根据文本的含义提供答案。但是,它无法捕获所有相关的关键字,并且依赖于所嵌入的用于表示文本含义的单词质量。混合搜索会将语义搜索与关键字搜索相结合,以改进搜索结果。

使用重排序模型

使用重排序模型提高 Amazon Bedrock 检索结果的相关性。

AWS 官方已更新 6 个月前