什么是 RAG?它解决了大模型的什么问题?
简化版
RAG(Retrieval-Augmented Generation,检索增强生成)就是先查资料、再回答:把用户问题拿去外部知识库检索出相关内容,连同问题一起塞进提示词交给大模型生成答案。它解决大模型三个核心痛点——知识过时(训练数据有截止日期)、缺私有知识(不知道你公司内部文档)、容易胡编(幻觉)。核心认知:RAG 管「知道什么」,微调管「怎么表现」,且检索质量决定一切。
详细版
一条典型 RAG 链路:
- 离线建库:文档清洗 → 切分成 chunk → 每片用嵌入模型转向量 → 存进向量库;
- 在线问答:问题编码成向量 → 向量库召回最相似片段 → reranker 重排 → 拼进提示词 → 大模型基于「证据」生成答案。
关键不是「接个向量库」,而是检索质量(garbage in, garbage out)。影响因素:切分粒度、元数据与权限过滤、引用溯源、拒答策略。
RAG 不能天然消除幻觉:没召回到正确材料、材料自相矛盾、或模型无视上下文,答案照样错。
完整版教学
一、为什么需要 RAG——大模型的先天局限
大模型的知识是「烤进」参数里的,带来三个绕不开的问题:
- 知识有截止日期:训练完就定格,之后的事、更新的政策都不知道;
- 没有你的私有数据:内部文档、产品手册、客户数据,模型从没见过;
- 会一本正经胡说(幻觉):不知道的也会流畅编,因为它本质是「预测下一个词」,不是「查证事实」。
解决这些有两条路:微调(把知识再训进参数)和 RAG(知识放外部、用时检索)。RAG 性价比通常高得多。
二、RAG vs 微调:怎么选(高频对比)
| 维度 | RAG | 微调 |
|---|---|---|
| 更新知识 | 改库即可,分钟级 | 重新训练,慢且贵 |
| 知识实时性 | 好,随时加文档 | 差,训完固定 |
| 可溯源 | 能标引用出处 | 不能,知识混在参数里 |
| 擅长 | 注入事实知识 | 调整风格、格式、能力 |
| 成本 | 低 | 高(算力+标注) |
记忆钩子:RAG 管「知道什么」,微调管「怎么表现」。要掌握最新/私有事实优先 RAG;要学某种输出风格或专业能力才考虑微调。两者也常结合。
三、检索为什么用「向量」而不是关键词
传统搜索靠关键词匹配,但「怎么退货」和「退货流程是什么」字面不同、意思相同,关键词搜不到。
向量检索(语义检索) 用嵌入模型把文本映射到高维空间,语义相近的文本向量距离也近:
"怎么退货" 的向量 ≈ "退货流程说明" 的向量 (距离近 → 能召回)
✗ 关键词匹配:无共同词 → 搜不到
这就是 RAG 能「理解意图」的基础。实践中常把向量检索和关键词检索结合做混合检索,兼顾语义和精确匹配。
四、RAG 为什么能压制幻觉,但压不死
RAG 把「凭记忆答」变成「看着材料答」——给了可依据的证据,模型就不易凭空编。但它只是降低幻觉、不是根除,因为链路每一环都可能坏:
召回错(没找到正确材料)→ 模型只能瞎猜
材料矛盾(多个片段打架)→ 模型不知信谁
模型无视上下文(固执用记忆答)→ 材料对了照样错
所以生产级 RAG 必须评估:召回率、上下文相关性、回答正确性、引用一致性(详见 RAG 评估专题)。
五、RAG ≠ 万能:能力边界
RAG 补的是「事实知识」,补不了「推理能力、风格、复杂计算」。而且它有自己的失败点:切分不好、嵌入模型不懂业务语义、知识库本身错误/过期,都会让 RAG 失效。它是一套系统工程(切分 + 嵌入 + 检索 + 重排 + 生成 + 评估),不是「接个向量库」就完事。
六、常见误区与追问
- 误区:RAG 会修改/训练模型。 不改任何参数,只在推理时把检索到的上下文喂进 prompt。
- 误区:接了向量库就万事大吉。 检索质量(切分、召回、重排)才是决定性的,检索不准模型再强也白搭。
- 误区:RAG 能彻底消除幻觉。 只能缓解——没召回、材料矛盾、模型无视上下文时照样错,需评估和拒答兜底。
- 误区:切分只会用固定长度。 按语义/结构切、加适量重叠往往更好(见切块专题)。
- 追问:RAG 和微调怎么选? RAG 管「知道什么」(事实、实时、可溯源),微调管「怎么表现」(风格、格式、能力),常结合用。
- 追问:为什么用向量而非关键词? 语义检索能匹配「字面不同、意思相同」的表达,关键词做不到;实践常混合检索。
- 追问:怎么知道 RAG 好不好? 分层评估召回率、上下文相关性、答案正确性、引用一致性,别只看最终答案流畅度。
七、加强记忆
RAG 就是给大模型配了个随身资料库:答题前先检索相关材料,再带着材料生成,补上「知识过时、没私有数据、爱胡编」三个短板。核心认知钉死:RAG 管「知道什么」、微调管「怎么表现」;靠向量做语义检索(可匹配字面不同意思相同);胜在实时、可溯源、成本低(相对微调);但检索质量决定一切,且只能缓解而非根除幻觉。它是切分+嵌入+检索+重排+生成+评估的系统工程,不是「接个向量库」。