客户听方案时经常被"RAG 架构"这类词卡住。其实这个概念一句话能说清:
RAG 就是让 AI 开卷考试。
闭卷考试(普通大模型):只能靠训练时记住的东西答题。你问它你们公司的报销标准,它没学过,只能瞎猜或者承认不知道。
开卷考试(RAG):允许它先翻书。你问报销标准,它先去你的制度文档里找到相关段落,然后照着这段内容回答你。
RAG 的全称是 Retrieval-Augmented Generation,检索增强生成——名字很学术,做的事就是"先查资料,再回答"。
拆开看是五步
第一步:切片(Chunking)
把你的文档切成一块一块的小段。比如一份 30 页的员工手册,切成 200 个小段,每段大概一段话或一个小节。
为什么要切?因为模型一次能看的文字有限,而且整份文档给进去,噪音太多,反而答不准。
第二步:向量化(Embedding)
把每一小段文字变成一串数字(向量)。这串数字相当于这段话的"语义坐标"——意思相近的两段话,坐标就靠近。
这一步的好处是:它不看字面,看意思。你问"报销流程是什么",它能匹配到写着"费用申请与审批步骤"的段落,即使没有重复的词。
第三步:检索(Retrieval)
用户提问 → 把问题也变成向量 → 在库里找坐标最接近的几个段落。
通常是取前 3 到 8 段。取多少是个要调的参数:太少可能漏掉关键信息,太多会干扰模型判断。
第四步:拼上下文(Augment)
把检索到的段落和用户的问题拼在一起,组成一个更完整的提示给模型。大致是:
> 参考资料如下:
> 【1】……(检索到的第一段)
> 【2】……(检索到的第二段)
> 【3】……(检索到的第三段)
>
> 请根据以上资料回答:报销流程是什么?
> 如果资料中没有答案,请直接说不知道。
第四步里那句"资料中没有答案就说不知道",是整个系统里最重要的一句话。 少了它,AI 在找不到答案时就会自己编。
第五步:生成(Generation)
模型读着参考资料,用自然语言组织出答案。理想情况下还会标明引用来源,方便核对。
决定效果的是这三个点,不是模型
很多人以为换个更强的模型,效果就好了。实际做项目,效果差异主要来自这三处:
一、切片的粒度。 切得太碎,上下文丢失,答得残缺;切得太大,噪音多,答得跑偏。表格、清单、带编号的条款要整块保留——见过太多"价格表被切成两半,AI 只答了一半"的事故。
二、检索的准确率。 如果检索出来的段落本来就不对,后面的模型再强也救不回来。要调的包括相似度阈值、检索条数、以及是否加关键词混合检索(纯语义检索在遇到型号、编号这类词时经常失灵)。
三、兜底策略。 检索不到内容时,是硬答还是说不知道。这是业务决定,不是技术决定,但它是投诉率的分水岭。
RAG 和另外两条路线的区别
微调(Fine-tuning):用你的数据继续训练模型,把知识"熔"进模型里。成本高,更新麻烦(知识变了要重新训),适合的是"风格和表达方式"的适配,而不是知识的注入。
长上下文直接塞:把整份文档直接放进提示里。文档少的时候可行(比如就一份产品手册),文档一多就不行了:成本高、速度慢、而且模型在长文本中间部分经常抓不住重点(业内叫"lost in the middle")。
RAG 的优势是:知识更新只需要改文档,不用重新训练;能标明出处;成本可控。所以企业知识库场景,RAG 基本是默认选择。
什么情况 RAG 也做不好
得说实话,RAG 不是万能的:
- 需要跨多份文档做复杂推理的问题:"对比 A 方案和 B 方案在三年内的总成本",这类需要计算和综合,单纯检索很难做好
- 知识本身逻辑混乱或有矛盾:文档里两个地方说法不一致,AI 会前后矛盾,这是知识治理问题,技术解决不了
- 需要实时数据的:库存、价格实时变化,要有接口对接,不能只靠文档
- 表格和图形的密集信息:财务报表这类,文字切片处理效果差
遇到这些情况,方案要调整(比如加重计算模块、接数据库接口、用表格专用处理),不能指望 RAG 一套打天下。
落地时的一句话总结
如果你只记一件事,就记这个:做企业 AI 问答,八成时间应该花在整理数据上,两成花在调技术上。 把所有精力放在选模型和调参数上的项目,效果通常都一般,因为源头的资料就是乱的。
我们做知识库项目,第一步一定是拿客户的真实文档做小样本测试——先切 20 份文档、配好检索、拿 30 个真问题跑一遍,看准确率大概在什么水平。这个测试一天能做完,做完再决定要不要继续投入。这比先签合同再发现问题要健康得多。
本文为引潮网络原创内容,基于真实项目与本地报价经验撰写,转载请注明出处。