← 返回学习索引
RAG · restrained review
RAG 是让模型先查资料再回答。
它不是“把所有文档塞给大模型”,而是在生成前先从知识库里检索最相关的片段,把片段和问题一起放进提示词,让答案尽量基于可核对的材料。
2
阶段:建库 / 问答
5
环节:切块到生成
1
命门:检索质量
一句定义
definitionRAG = Retrieval-Augmented Generation。模型回答前,先用问题去外部知识库检索相关材料,再把材料增强进 prompt,最后让模型基于材料生成答案。
核心流程
pipeline01
切块
把长文档切成小段,保证每段足够完整,也不会太长。
02
嵌入
用 embedding 模型把文本变成向量,让语义相似能被计算。
03
检索
把问题也变成向量,找出最相近的 Top-K 文档块。
04
拼 Prompt
把命中片段、问题和回答规则组合成上下文。
05
生成
让 LLM 只根据给定材料回答,并尽量附出处。
它解决什么
why知识过时
模型知识停在训练截止日。RAG 让你通过更新资料库接入最新政策、产品文档和内部规则。
不懂私有数据
公司手册、合同、工单不在模型训练集里。RAG 可以在回答时即时查阅这些资料。
减少幻觉
模型不再完全凭参数记忆回答,而是被要求基于检索片段输出。幻觉减少,但不会被消灭。
可溯源
答案可以指回原文片段,用户能核对依据。这是知识库问答和客服场景很重要的信任来源。
最容易弄错的点
pitfalls| 要点 | 说明 |
|---|---|
| 不是全塞 | RAG 的关键是先筛选相关片段。把文档全部塞进上下文只是长上下文,不等于好的 RAG。 |
| 检索优先 | 检索不到正确片段,生成再强也没有好材料。先调 chunk、Top-K、混合检索和 rerank。 |
| 不是微调 | RAG 解决“说什么”,微调更适合解决“怎么说”。一个接知识,一个调风格和格式。 |
| 模型要一致 | 建库时文档用的 embedding 模型,和查询时问题用的 embedding 模型必须一致。 |
实践检查表
checklist
先准备一批“问题 → 应命中文档片段”的小评测集。每次改 chunk size、Top-K、rerank 或 prompt,都看正确片段有没有被检索到、排名是否靠前。RAG 的迭代顺序是:先检索,再生成。