RAG BM25 算法和重排,微调以外的手段

随着LLM 广泛应用,许多开发者开始通过定制化的调优,进一步提升模型性能。

传统模型微调面临许多挑战,尤其是在处理特定领域的任务时。RAG 应运而生。

微调能够提高模型的专门性,但也面临问题:数据需求大、计算资源要求高、隐私与安全问题,RAG 通过将 LLM 与外部知识库结合,在生成答案时检索相关信息,避免微调的高成本和复杂性。

RAG 包括两个主要部分:知识库创建和生成部分。

知识库创建包括文档分割、嵌入计算和向量存储三个步骤:

将大文档拆分为小片段,便于处理;为每个文档片段计算嵌入,转换为向量表示;将计算得到的嵌入存储在数据库中,便于后续检索。

生成部分包括查询处理、检索和生成回答三个环节:

当用户发出查询时,系统会首先计算查询的嵌入向量,根据查询嵌入检索相关的文档片段;系统将检索到的片段与查询一起输入到LLM,生成最终答案。

如此这般,使得模型能够在不进行微调的情况下,获得高质量的领域特定回答。

------ 以上这些是我们熟知的。

结构图、一图胜过千言:

但为进一步提高检索精度,很多RAG系统采用了混合检索方法,结合传统的关键词检索和语义检索。

BM25 就是基于关键词的检索算法之一!

(根据Anthropic的报告,使用混合检索方法能够将检索结果的准确性提高约1%)

BM25 特别适合检索包含精确关键词的文档,语义检索有助于找到语义相似的内容。

对于包含精确关键词的查询,BM25能迅速定位到相关文档,避免纯粹依赖嵌入模型的不足之处。

dart 复制代码
<document> 
{{WHOLE_DOCUMENT}} 
</document> 
Here is the chunk we want to situate within the whole document 
<chunk> 
{{CHUNK_CONTENT}} 
</chunk> 
Please give a short succinct context to situate this chunk within the overall document for the purposes of improving search retrieval of the chunk. Answer only with the succinct context and nothing else

这里,为每个文档片段生成上下文信息。将给定的片段与相关的上下文信息结合,通过嵌入模型处理片段。生成的嵌入将被存储在标准的向量数据库中。

同时更新BM25索引,这种情况下,使用基于关键词的搜索机制TF-IDF(词频-文档逆向),在每个片段中,添加50到100个标记。但是它会增加大量的开销,因为每个片段都要经过LLM处理,产生大量的标记。

所以,除了关键词算法,RAG 系统中,由于检索时主要依赖欧几里得距离或余弦相似度等基础方法,这种做法可能导致提取结果不够精确。为了进一步提高结果的质量,重新排序模型应运而生。

重新排序模型通过跨注意力机制对查询与文档片段进行比对,能够发现查询与文档之间的重要关系,弥补简单相似度计算模型的不足。

它的场景通常用于在提取到一些潜在相关的文档片段后,对它们进行重新排序,确保生成的回答更准确。

检索模型设计用于提取信息片段,通常紧凑高效,但依赖于基本的提取技术,如欧几里得距离或向量间的余弦相似度,优先考虑提取的速度和数量,可能导致结果不够准确。

相比之下,重新排序模型更复杂且较慢,不适合直接处理大量提取结果,通过重新排序检索模型提取的较小片段集合来优化结果。

其核心优势在于能够在用户查询与每个片段之间进行交叉-cross-attention,发现查询与片段之间的重要关系。

小结

从经验来看,RAG 不是万能的,它仍然依赖于高质量的文档片段和高效检索机制。

实战中,可以根据需求来制定优化策略,灵活使用这里介绍的BM25算法或者重排技术。

本篇通译自:medium.com/towards-art...

相关推荐
晨间晓17 分钟前
图片细节丰富不丰富?用华为云码道开发 OpenCV 纹理复杂度分析工具
人工智能·opencv·华为云
2603_9651481132 分钟前
电商选品调研:通过关键词搜索API获取市场热销商品,结合商品详情API分析竞品卖点与定价
开发语言·数据库·人工智能·python·信息可视化
镜象科技38 分钟前
什么是好的校园AI心理健康解决方案服务商?从中外校园心理服务的一天说起
人工智能
Geeys1 小时前
拼多多单品推广完整方案(可直接落地)
大数据·人工智能
泡椒鸡脚1 小时前
AI室内设计风格融合:把布局、材质和光影参考分开写
人工智能·材质
袁俪1 小时前
世界模型与智能体
人工智能
冬奇Lab1 小时前
开源项目第239期:Awesome DSH Plugin —— 5000+ 插件的 DeepSeek Harness 生态精选列表
人工智能·开源
生态学者1 小时前
Global Change Biology | 森林越“步调一致”,反而越怕干旱?树木生长与叶片活动的同步之谜
大数据·人工智能·算法·r语言·微信公众平台
迁移科技1 小时前
一框棒料的自动化跃迁:3D视觉如何点亮金属上下料工序
人工智能·自动化·视觉检测
China_Yanhy1 小时前
AI Agent 实习生工作日记 — Day 4(技术补充:agent_engine.py 底层实现)
人工智能