RAG 检索增强生成:原理
理解 RAG 的核心思想:把知识放进提示词。掌握 Embedding 与语义检索的原理。
为什么需要 RAG
模型的知识止于训练数据,且不了解你的私有资料。RAG(Retrieval-Augmented Generation)的思路很朴素:回答前先检索出相关资料,把资料塞进提示词,让模型"开卷考试"。
Embedding:把文字变成向量
Embedding 模型把任意文本映射为高维向量,语义相近的文本向量距离也相近。"如何退货" 和 "退款流程是什么" 逐字不同,但向量会非常接近 —— 这就是语义检索的基础。
RAG 的两个阶段
离线索引:
文档 → 切分(Chunking) → Embedding → 存入向量库
在线问答:
用户问题 → Embedding → 向量库检索 Top-K 相关片段
→ 拼进 Prompt → LLM 生成答案
Chunking 切分策略
- 块大小常见 300~1000 字符,带 10%~20% 重叠;
- 按语义边界切(标题、段落),优于按固定长度硬切;
- 块太大 → 噪音多且费 token;块太小 → 上下文不完整。
RAG 的价值
- 知识可随时更新,无需重新训练模型;
- 答案可附带来源引用,可追溯、可验证;
- 大幅减少幻觉 —— 模型只依据检索到的内容作答。
📝 课后练习
quiz-1 RAG 检索相关文档依靠的是?