RAG:不重新训练,也能让它"知道"你的资料
先查资料,再回答。这是目前最主流的"给 AI 装上私有知识"的办法,也是很多企业产品的底层做法。
一句话定义:RAG(Retrieval-Augmented Generation,检索增强生成)是"先从你的资料库里搜出相关片段,再把这些片段交给模型回答"的做法。
一个比喻:不是让医生背下所有病历,而是让他先翻到你这一页,看着病历给你诊断。
它解决什么问题
模型的三个天然缺陷:
- 不知道你的内部资料(公司制度、产品手册、私人笔记)
- 知识有截止日期
- 容易编(不知道就硬答)
RAG 的思路很朴素:别让它凭记忆答,先给它原文。
流程长什么样
1. 把你的资料切成小段(几百字一段)
2. 每段转成"向量"(可以理解成给每段打一个语义指纹)
3. 你提问时,把问题也转成向量
4. 找出指纹最接近的几段(语义相似度检索)
5. 把这几段 + 你的问题一起交给模型
6. 模型基于这几段回答,并可标注引用
关键在第 6 步:模型只被允许基于给出的片段回答,这就大幅降低了幻觉。
你在哪会遇到它
- 各种"上传文档后提问"的功能(本质就是 RAG)
- 企业知识库问答机器人
- 客服系统里的"按知识库回答"
- 一些 AI 搜索产品
它和"微调"的区别
| RAG | 微调 | |
|---|---|---|
| 改什么 | 给什么资料 | 改模型参数 |
| 适合 | 知识问答、查资料 | 固定风格、固定格式、专门任务 |
| 更新 | 换文档即可,即时生效 | 要重新训练 |
| 成本 | 低 | 高 |
| 会不会编 | 有原文可依据,编得少 | 仍会编 |
大多数人要的是 RAG,不是微调。 你想让它"知道公司制度",那属于知识,不属于能力。
效果差,通常是这三处
- 切段太粗:一整章塞成一段,检索出来一大坨,模型抓不住重点
- 只做字面匹配:你说"报销流程",文档里写"费用核销",搜不到
- 检索到了但没用:片段太长,关键那句被淹没