详细内容或原文请订阅后点击阅览
如何使用混合搜索构建 Agentic RAG
了解如何构建强大的代理 RAG 系统如何使用混合搜索构建代理 RAG 帖子首先出现在 Towards Data Science 上。
来源:走向数据科学也称为 RAG,是一种在信息语料库中查找相关文档的强大方法,然后将其提供给法学硕士以回答用户问题。
传统上,RAG 首先使用向量相似度来查找语料库中相关的文档块,然后将最相关的块输入 LLM 以提供响应。
这在很多场景中都非常有效,因为语义相似性是查找最相关块的强大方法。然而,语义相似性在某些场景中会遇到困难,例如,当用户输入需要显式定位才能用作相关块的特定关键字或 ID 时。在这些情况下,向量相似度并不是那么有效,您需要一种更好的方法来找到最相关的块。
这就是关键字搜索的用武之地,您可以在使用关键字搜索和向量相似度(也称为混合搜索)的同时找到相关块,这也是我今天要讨论的主题。
为什么使用混合搜索
向量相似度非常强大。即使输入提示有拼写错误或使用同义词(例如单词 lift 而不是单词 lift),它也能够有效地从文档语料库中找到相关块。
然而,向量相似度在其他场景中存在不足,特别是在搜索特定关键字或标识号时。其原因是,与其他单词相比,向量相似度并没有对单个单词或 ID 进行特别高的权重。因此,关键字或关键标识符通常被其他相关单词淹没,这使得语义相似性很难找到最相关的块。
关键字搜索在关键字和特定标识符方面非常出色。例如,对于 BM25,如果您有一个单词仅存在于一个文档而不存在其他文档中,并且该单词出现在用户查询中,则该文档的权重将非常高,并且很可能包含在搜索结果中。
