来源:互联网 更新时间:2026-06-12 14:06
如果你用过RAG,肯定会经历这样一个过程:思路对、代码跑通了,但效果却让人头大。这就像一个图书馆管理员把书都搬过来了,但读者一问"我想知道怎么优化数据库"——管理员递过一本书《MySQL从入门到放弃》,实际上书里讲的是安装过程。
很多人在搭建RAG时,属于典型的"能做,但不好用"。文档切碎、Embedding调用、存储到向量库、再扔给大模型,一整套流程半天就能搞定。但一旦真正开始跑业务,问题就来了:搜出来的内容要么不相关,要么相关度太低;用户问个简单问题,它回答得像写小说;稍微抽象一点的问题,它就开始生成幻觉。
这其实不是你的错。RAG的入门门槛确实低,但"能跑"和"能用"之间,隔着一条完整的优化管线。
RAG的核心,不在于“让模型变聪明”,而是在于
下面,我们就把RAG的优化路径,从头到尾梳理一遍。一共20个实用技巧,按一个请求从数据入库到生成答案的完整生命周期拆解。
一个完整的RAG管线大致是这样的:
聊优化,不是堆算法。关键是每个环节之间如何协同。当一个阶段优化到位,下一个阶段的压力就会小很多。下面我们按五个阶段,逐个拆解。
这个阶段的目标很简洁:
很多入门教程会教你"每500字切一块"。这就像把一本书每10页拆下来订成一册,结果一个完整的论证被拦腰截断。
一个完整的句子和一句被腰斩的话,检索的效果差别巨大。
把文档切成
存文档时,顺手存上时间、作者、类型等元数据。检索时先做条件过滤(比如"只要2024年以后的"、"只要Python相关的"),再做语义匹配。一个简单的条件过滤,就能把搜索范围从百万级缩到千级。
长文档被切碎后,用户问"这本书讲了什么"时,任何一个片段都无法回答。
解决方案:入库前用LLM给每个长文档生成一个全局摘要,单独做向量。宏观问题先命中摘要,然后通过摘要与详细章节的关联,顺藤摸瓜找到细节。
在入库时,把文档中的实体和关系抽取出来,存入知识图谱。比如“函数A调用了函数B”、“类C继承自类D”。
检索时
入库前,让LLM看着每一段文本,生成5个问题:“如果有人要查这段内容,可能会怎么问?”把这些问题和原文绑在一起存入向量库。
用户提出的问题往往是口语化的、简略的,甚至带有歧义。直接用这类问题去碰书面语的文档,语义对不上是大概率事件。
多一步LLM调用,但换来后续更少试错。
把用户的问题扩展成3-5个不同角度的提问,分别检索,最后合并去重。
一种问法没命中的,另一种问法可能就命中了。
这是最有意思的方法,没有之一。
不做“问题→答案”的检索。而是让LLM先凭空写一个
设计一个路由器,根据意图分发:
把不适合的问题强行塞给RAG,反而会产生更多问题。
这是大多数实际工作中接触最多的阶段。核心矛盾很清楚:
基于Embedding的语义搜索。你搜"轿车",它能找到"小汽车""私家车"。但遇到专业术语、缩写、代码函数名,它就懵了。
基于BM25的关键词匹配。你搜"OOM Killer",它不会漏掉"内存不足导致进程被杀"。但它搜不到,是因为你表达方式不同,不是它不认识这个词。
把稠密和稀疏的结果用
通用Embedding模型对你私有领域的理解不太尽如人意?那么就用自己领域的数据对它做一次微调。比如用内部代码文档去微调BGE,它就能理解项目中那些特有的函数名和术语。
很多人认为检索完了就结束了,直接把top_k结果丢给LLM。但检索出来的内容往往
在整个管线里,这是
向量检索为了快,用的是“双塔模型”:查询算一个向量,文档算一个向量,然后比夹角。速度快,但精度有限。
重排模型用的是Cross-Encoder,将查询和文档
检索出来的文档段落可能很长,里面混着大量不相关的内容。用LLMLingua这类工具,剔除废话,保留核心信息。
检索出5段文本,结果4段说的都是同一回事,上下文窗口就这样白白浪费了。
MMR(最大边际相关性)能保证结果
材料对了,最后一步就是让LLM不乱说。
在System Prompt里加一句话,效果立竿见影:
"请严格基于提供的Context回答。如果Context中没有相关信息,请直接说'根据现有资料无法回答',不要编造。"
让LLM生成答案后,再走一步:检查一下自己说的内容是否确实来自给定的上下文。如果没有,打回重写。
让模型在回答里标注来源,像论文一样标注引用。
这不仅仅是为了让用户能验证。
没有人会一次性把20种技巧全用上。根据场景选3-5种组合,效果通常就够好了:
回到开头的观点:
这让我想到了一个类比:RAG就像一个优秀的图书馆管理员。他不是把全馆的书都堆在读者面前说"你自己翻",而是在读者开口之前就洞察其意图,从百万藏书中精准抽出最相关的三页内容,放在他面前,并标好出处。
另一个感受是:
所以,优化RAG不需要追求"把所有方案都用上",而是
记住这五条就够了:
不是所有场景都需要20种全上。理解你的语义鸿沟在哪一环最大,选3-5种对症的组合,就足以让一个"能跑"的RAG变成"能用"的RAG。
《Off Campus》第二季官宣:这对CP还在,但不再是主角
和平精英如何做到压枪稳-和平精英怎样才能压枪稳
下载浏览器app下载安装选择推荐
免费影视剧APP推荐
客单价碾压宝马奥迪!极氪5月交付新车34377辆:连续4个月双增长
儿子穿新中式现身大会堂 马斯克罕见用中文回应:他正在学习普通话
Elysium Above 履云录官网在哪下载 最新官方下载安装地址
DOTA2 TI时隔七年重返上海!门票6月10日开抢,国服享受优先购买!
HBO 奇幻剧《龙之家族》第三季定档 6 月 22 日,最终预告片曝光喉道海战
抖音最火沙雕男生网名(精选100个)
帅气继父网名女生可爱英文(精选100个)
网络热词聊污是什么意思
阿里发布Qwen3.7-Max大模型,全球第五、国产第一
SpaceX狂揽AI人才,马斯克亲自面试且不看简历背景
金铲铲之战s17六暗星卡莎阵容玩法构筑指南
免费看电影的软件推荐
我的末日校园海斗手游上线时间是哪天
名单曝光!库克、马斯克等将随团到访中国 黄仁勋不在其中
晨字沙雕网名大全女生(精选100个)
短剧《情绪超市》剧情介绍
手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc