游乐游手机版
首页/AI教程/文章详情

三次RAG项目实践,召回率从78%提升至92%

时间:2026-06-10 14:56
通过更换Embedding模型为BGE-large-zh,并引入混合检索(向量检索与BM25相结合)及添加Reranker重排序,实验结果表明,RAG系统的召回率从78%逐步提升至92%,首位命中率从45%升至68%。其中,混合检索具有最高的性价比,而Reranker重排序则显著地改善了用户体验。

一、第一个项目,上线第一天就翻车了

去年参与一个技术文档问答系统开发,上线第一天就遭遇用户提问:

做了3个RAG项目,我把召回率从78%折腾到了92%

“怎么处理登录超时?”

系统回答:“timeout参数的默认值是30秒。”

用户当场炸了:“我问的是怎么处理,不是参数是多少!”

查了日志才发现,问题出在检索环节——用户问题里的“处理”,与文档中的“排查步骤”在向量空间里距离很远,根本没有被召回。

这个教训很直接:RAG的核心不是大模型,而是检索。大模型再强大,如果没有召回到正确的文档,一切都是徒劳。

二、第一次优化:换Embedding模型,白捡5个点

最初为了省事,使用了开源通用Embedding模型。跑测试集,召回率只有78%。用户问10个问题,有2个答案根本不在前5条结果里。

后来换成了BGE-large-zh,其他都不变,召回率直接攀升到83%。

教训很清楚:Embedding模型决定了召回率的天花板。天花板低了,下面再怎么优化都无济于事。

如何选择?纯经验分享:

  • 中文通用场景:BGE-large-zh,兼顾效果与速度
  • 追求极致效果:text-embedding-3-large(效果好,但需调用API)
  • 本地部署、资源有限:M3E-large

判断方法?拿3个模型分别跑你的测试集,哪个高就用哪个,就这么简单。

三、第二次优化:加混合检索,又涨了5个点

换完模型后,发现还有漏网之鱼。

用户问:“API key怎么申请?”文档里写的是“获取访问凭证”。语义相近但用词完全不同,向量检索表现一般。

解决方案是混合检索:向量检索 + 关键词检索(BM25)。向量负责语义理解,关键词负责精确匹配,两个结果融合排序。

加了混合检索后,召回率从83%提升到88%。

这一步是性价比最高的优化——不需要换模型,不需要重新训练,改几行代码就能看到明显效果。

四、第三次优化:加Reranker,首位命中率大幅提升

混合检索之后,Top 5召回率到了88%。但用户反馈还是有问题:正确答案虽然在Top 5里,但经常排在第4、第5位。用户没耐心往下翻,直接说“系统找不到”。

解决方案:加入Reranker。在召回结果上,用CrossEncoder模型重新打分,把最相关的排到最前面。

加了Reranker之后,首位命中率从45%提升到68%。用户满意度明显提高,因为第一个结果就是对的。

注意:Reranker不需要对全量文档做,只对召回后的Top 20做即可,否则速度太慢。

五、完整链路数据

一个实验一个实验积累下来的数据:

  • 基线:纯向量检索 → 召回率78%
  • 第一轮:换BGE模型 → 召回率83%(+5%)
  • 第二轮:加混合检索 → 召回率88%(+5%)
  • 第三轮:加Reranker → 召回率92%(+4%)
  • 第四轮:领域微调 → 召回率94%(+2%)

结论:

  • 混合检索是性价比最高的优化,改几行代码涨5个点
  • Reranker是提升体验的关键,决定用户第一眼看到什么
  • 领域微调收益最低,不是非常刚需可以先不做

六、三个最容易踩的坑

坑一:不用测试集,凭感觉优化

没有测试集,你根本不知道修改后是变好了还是变差了。花一天时间标注100个问题-答案对,后面所有优化都有明确方向。

坑二:召回和排序混为一谈

召回阶段的目标是“别漏掉”,排序阶段的目标是“把最对的放第一个”。两个阶段的优化手段不同,不要混着调。

坑三:一上来就搞Reranker

Reranker很慢,成本也高。先用好Embedding和混合检索,这两步能解决80%的问题。

七、给同行的实操建议

  • 先跑通测试集。没有测试集,所有优化都是盲人摸象。
  • 优化顺序别搞反。先换Embedding模型,再加混合检索,最后上Reranker。这个顺序的投入产出比最高。
  • 线上一定要加Reranker。它不是召回率的瓶颈,但是体验的关键。用户可没耐心翻到第3条。

八、写在最后

RAG召回优化并没有什么神秘秘籍。

就是选对Embedding、加上混合检索、配上Reranker。一步步来,效果是累积的。

如果你也正在被召回率困扰,希望这篇文章能帮你少踩几个坑。毕竟,这些坑都有人已经帮你踩过了。

(本文基于实际项目实战经验整理)
来源:https://cloud.tencent.com.cn/developer/article/2685436
上一篇外贸独立站多语言一键切换底层逻辑与功能详解 下一篇阿里云AnalyticDB MySQL与Hudi/Iceberg湖仓一体最佳架构实践
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
企业组织级AI赋能具体实施方法
AI教程 · 2026-06-30

企业组织级AI赋能具体实施方法

前段时间收到一位读者的留言,希望聊聊企业级、组织级的AI赋能究竟该怎么落地。巧的是,前几天刚看到一份咨询调研机构的数据:对近一两年所有企业级AI赋能项目的统计显示,超过90%的甲方企业认为,AI赋能在核心业务价值链上没有发挥任何实质性作用。除了AI辅助办公、企业智能知识库这类边缘应用起到了一些辅助效

Scrapy与Redis分布式架构的日本电商多平台数据聚合系统
AI教程 · 2026-06-30

Scrapy与Redis分布式架构的日本电商多平台数据聚合系统

从事日本电商数据聚合工作时,最大的难点在于要同时应对雅虎拍卖、煤炉(Mercari)、乐天和亚马逊日本站等截然不同的平台。以往使用单机爬虫,经常出现运行中崩溃的情况——单点故障、带宽利用率不足、数据存储混乱,这三大痛点令人困扰。 本文分享一套基于Scrapy + Redis的分布式爬虫方案,专门解决

详细PuTTY 0.81安装教程 SSH远程连接与自定义路径设置
AI教程 · 2026-06-30

详细PuTTY 0.81安装教程 SSH远程连接与自定义路径设置

​ PuTTY(简称PT)是一款轻量级开源SSH Telnet客户端,凭借简洁高效的特性,多年来始终是系统管理员与开发者进行远程连接的首选利器。本教程将详细介绍PuTTY 0 81版本的完整安装过程,并指导您自定义安装路径,以便更灵活地管理SSH远程连接工具。 安装准备 首先需要说明的是,整个安装流

在线教育系统必备功能:直播课堂与题库考试架构
AI教程 · 2026-06-30

在线教育系统必备功能:直播课堂与题库考试架构

很多人一想到做在线教育系统,第一反应往往是先把直播间和课程播放器搭起来,觉得“能看课”就万事大吉了。真到落地那天才发现,系统能不能顺滑跑起来,关键全藏在那些细节里——课程怎么组织、学习进度怎么记、考试怎么处理、后台怎么管得住。前端看起来就几个页面,后端其实是一整条业务链路。不管你是要做在线教育APP

ZStack源码级AI诊断套件让故障排查秒出答案
AI教程 · 2026-06-30

ZStack源码级AI诊断套件让故障排查秒出答案

一次故障排查,到底要花多少时间? 运维人员处理私有云、虚拟化平台的问题,流程大致都是这样:先翻日志看现象,再去文档里找对应机制,然后搜社区有没有类似案例,最后综合判断给出答复。简单问题半小时,复杂问题可能要跨天——而这些时间里,大部分精力耗在了“找信息”而不是“做决策”上。 类似的问题,也许每天都在