AI 应用 · 原创

RAG 是什么?用大白话讲清企业知识库的技术底层

RAG 没那么玄:就是让 AI 开卷考试。讲清切片、向量、检索、拼上下文、生成这五步,以及决定效果好坏的三个关键点。

客户听方案时经常被"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 个真问题跑一遍,看准确率大概在什么水平。这个测试一天能做完,做完再决定要不要继续投入。这比先签合同再发现问题要健康得多。

本文为引潮网络原创内容,基于真实项目与本地报价经验撰写,转载请注明出处。

读完有启发?聊聊你的项目

描述你的业务场景,我们免费给出功能清单与报价区间。不需要你先付费,也不需要你先懂技术。

免费获取开发方案 → 159-3756-5102
电话咨询159-3756-5102 在线留言留下需求,1 个工作日内回复