有读者反馈之前写的内容没有写完,本篇对之前写的内容进行补充和完善。
检索增强生成简称RAG(Retrieval-augmented Generation),RAG为大语言模型安装了知识外挂,基础大语言模型不用训练,通过RAG技术与大语言模型结合在回答问题的时候,可以通过企业内部的知识库检索相关和最新的信息来生成内容,从而提高了回答问题的准确性、实时性和关联性。
基于语义的向量检索在RAG智能问答系统中,RAG检索环节中的检索的方式采用向量检索,即通过语义相关度匹配的方式进行检索。技术原理是通过将外部的知识库文档进行拆分成语义完整的段落或者句子,并将其转化为向量存储,而对用户的问题也同样进行向量化,然后通过用户问题与句子之间的语义相关性,查找出相关度最高的文本,找到后RAG系统会将用户的问题、相关内容一起提供给大模型,大语言模型推理出问题的答案。向量检索除了能够实现复杂语义的文本查找,还有其他优势:- 搜索ID等场景而这些场景恰恰是传统关键词搜索的优势所在,传统的关键词搜索的优势在于精准搜索、少量字符匹配等方面。
关键词检索极其局限性在信息检索的场景,“传统”方式是通过关键词搜索,大致过程为:- 建立关键词和原始语料的映射关系,常见的方法有倒序索引、TF-IDF、BM25等方法,其中TF-IDF、BM25通常用“稀疏向量(Sparse Vector)”来表示词频。
- 检索时,对检索语句进行关键词抽取,并通过建立的映射关系召回关联度最高的TopK原始语料。
关键词检索无法对语义进行理解,例如,检索词为“北大医院”,经过分词以后成为“北大”“医院”,这两个关键词都无法有效检索用户的预期目标“北京大学第一医院”这个目标。在文本搜索场景,首先需要确保最相关的结果能够出现在检索的结果中。向量检索和关键词检索各有优势,而引入混合检索结合了两种搜索技术的优点,并且弥补了各自的缺点。
混合检索是结合了两种或者多种搜索算法提高搜索结果相关性的搜索技术。而在RAG系统中,混合搜索最常见指向量检索和关键词检索的组合。不同的检索系统在寻找文本中各自擅长之间存在不同的联系,没有任何一种检索模式能够适用全部的情景,混合检索通过多个不同的检索系统组合,结合不同检索系统的优势,实现多个检索技术直接的互补。
产品电源
对目前行业中其他产品基于RAG的问答系统的检索方式进行调研。
Coze混合检索:结合全文检索与语义检索的优势,并对结果进行综合排序; 语义检索:基于向量的文本相关性查询,推荐在需要理解语义关联度和跨语言查询的场景使用; 全文检索:依赖于关键词的全文搜索,推荐在搜索具有特定名称、缩写词、短语或ID的场景使用;

- 关键词查询:精准查询,通过人名、地名等查询具体内容;
基于文档和知识库的RAG问答系统,在调研的产品中,通常会支持混合检索、向量检索和全文检索。作为平台用户可以选择使用哪种检索方式; 混合检索结合全文检索和向量检索的的优势,对召回的结果进行综合排序,让大模型生成的结果更好,也是各个平台优先推荐的;
|