AI-FDE · 文档
文档 / AI-FDE 转型之路

知识库答不准,问题通常不在模型

AI-FDE 转型之路 · AI 工程 04-RAG 全链路

2026-10-17

一、先说 RAG 是什么

先把这个词拆开,因为它被说得太玄了。RAG 就干一件事:让模型开卷考。

模型原本是闭卷考——它只能凭训练时记住的东西回答。记得住就答得漂亮,记不清的时候它不会说"我不知道",它会顺着语气往下编,编得很顺,标点都对。这就是为什么你问它某个银行内部制度的细节,它能给你一段读起来特别像那么回事、但根本不存在的规定。

开卷考就不一样了:1)你问一个问题,系统先去你的资料里翻,翻到相关的那几页,2)把那几页和问题一起递给模型,3)让它照着这几页组织成人话,并且告诉你出处在哪一页,如果找不到就让他说“我不知道”。

RAG三个字母正好对应三步:

字母 原词 大白话 对应谁在干活 依赖项
R Retrieval 检索 去你的文档里找相关段落 程序找,不是模型找 依赖程序,向量库
A Augmented 增强 把找到的段落塞进问题里,一起递过去 拼装,纯工程活 依赖大模型
G Generation 生成 模型照着这些材料,说成人话 这一步才是模型 依赖大模型

所以 RAG 不是让模型变聪明,是让模型少瞎编,让大模型有据所依。

这是我最想让非技术同事记住的一句——它决定了后面所有事情:既然大部分活是检索干的,那答不准的时候,先怀疑检索那几步,而不是先怀疑模型。

为什么银行这类客户几乎必须走这条路?三个理由,都很实在:

制度会改。差旅标准今年和明年不一样,改完总不能等模型重新学一遍。用 RAG,你只要把新文件传进库里,下一秒就能答新的。

必须有出处。客户问"凭什么这么答",你得能指到原文第几章第几条。给不出出处的答案,在合规部门眼里等于没答。

资料不外传。内部制度不能拿去给外面的模型训练,但可以在自己的环境里检索。

二、为什么需要RAG

一般说RAG,都知道说的是知识库,但真正RAG是指知识库检索+LLM的应用。

单纯使用大模型不可以吗,为什么还需要知识库呢?

咱们上章节说了大模型不会主动储存对话信息,每次对话都需要将之前的对话发送给它,它才知道你说的是什么东西。

AI-FDE 转型之路 · AI 工程 03-Context-Engineering

大模型是一个静态的黑盒子,大模型在训练完成后,它的知识数据就是固定的了。大模型的知识储备主要是训练时给它的语料,当然训练结束后的新闻肯定是不知道的,它更不知道您企业内部的信息(因为训练的时候没有给它企业内部的数据)。

例如:Deepseek训练数据的日期(在网页版本上面问一下)

图例:Deepseek网页截图

知识每天都是再更新的,但是大模型不是每天更新,那应该怎么办呢,难道每天都需要训练一次大模型吗,NO,NO,NO,这个训练的成本太高了。这时候就有了知识库,大模型是静态黑盒子,知识库是一个动态的增量数据。大模型要学习新的知识,除了训练外,可以实时地加载知识库。

知识库可以说是一个大一些的Prompt,大一点的Context,知识库是可以随时进行更新的,知识库也是企业可以看的见的数据,可以将私有的、敏感的数据放在知识库里面,这样不需要重新训练模型,也可以使用大模型来处理企业自己的数据。

当知识库小的时候,可以将整个知识库发送给大模型,让模型加载成Context,然后与其对话。当知识库的数据特别大时,就不能发送整个知识库了,需要先检索你需要的数据,将“你检索出来的数据”+“你的问题”发送给大模型,让模型来生成你想要的结果。

小Tips:咱们日常使用的Deepseek、Qwen、GPT、Gemini这些都属于通用型大模型。有些针对垂直领域的模型,包括:百川智能 Baichuan、京东健康 京医千询、华为云盘古大模型。垂直模型里面包含行业内的特有的数据,这样就可以让大模型的知识更丰富、更灵活。

三、RAG最重要的知识点

用户提问后,将用户的问题进行拆分,使用拆分的问题去检索知识库,然后将检索到的内容+用户的问题发送给大模型,大模型来帮你处理这个问题。现在真正的难点是知识库检索的质量,如果可以检索到对应的内容,现阶段大模型是可以更好的回答问题的。如果检索不到数据,或者检索到的数据很差,再好的模型也解决不了你的问题。通用性的问题,大模型+知识库检索到的数据,是可以正常处理。但是有些专业术语和特定领域的知识通用大模型是不知道的,这种就没有办法回答,需要将专业术语和特定领域的知识也一起发送给大模型,这就可以解决这种问题。这也是为什么有些公司专门训练垂直领域的大模型呢。

四、RAG 都用在哪

讲了是什么,再说用在哪。我按"客户真会为它掏钱"的标准列了五个,都是我自己或同行做过的类型(项目与客户均为虚构示例,仅用于说明方法):

场景 典型问题 为什么适合 要盯住什么
制度 / 规章问答 "差旅住宿标准是多少""这个审批要几级" 文件多、更新快、必须给出处 版本:新旧文件同时在库里,答成旧的就是事故
业务材料初审 "这份信贷材料缺什么""条款有没有矛盾" 规则明确、可以清单化 它只能"提示",不能"判定",终审必须留给人
客服 / 坐席辅助 "客户问这个产品怎么收费" 话术要统一,不能让坐席自己编 答错会被客户截图,话术库要单独维护
内部 IT / 运维知识库 "这个报错上次怎么处理的" 老师傅的经验沉淀下来,不用每次找人 记录质量差就是垃圾进垃圾出
合同 / 公文条款查找 "这份合同里违约责任怎么写的" 长文档人工翻很慢,机器定位快 长文档切分容易把条款切碎,宁可留重叠

反过来说,这四类别硬上 RAG(这条比上面那张表更重要,因为踩坑都在"以为它什么都能干"):

1)要精确计算的。

金额汇总、笔数统计、跨表求差——模型的算术不可靠,这类该让系统算,模型只负责把结果说清楚。

2)要实时数据的。

当前余额、当前排队人数、今天的汇率——RAG 检索的是静态文档,这类该走接口查,查完再给模型。

3)要跨几十份文档横向汇总的。

检索一次只能拿回几段,装不下几十份。要么先做结构化入库,要么拆成多轮。

4)答案压根不在任何文档里的。

靠经验判断的事,检索找不到东西,模型就会编——而且这次编得特别自信。

一句话收口:RAG 适合"答案写在某份文档里,但人找起来慢"的事。凡是不满足这句话的,先别上。

五、RAG 用什么平台搭

讲了是什么、用在哪,下一个问题自然是"用什么搭"。我的判断是:选平台的坑不在"谁功能多",在于"哪条约束你躲不掉"。用排除法筛平台。

平台大致就三条路:

第一条路:开源自建。自己找台服务器装起来,数据全在自己手里。适合内网、强合规、以后要长期运维的场景。

平台 一句话定位 适合谁 要盯住什么
Dify 最全能,知识库 + 可视化工作流 + 多模型接入 要定制流程、要接别的系统的团队 复杂文档解析一般;需要有人运维
RAGFlow 文档解析最强,扫描件、表格、多栏排版都能啃 合同、报表、手册这类硬骨头文档 硬件要求高,调参门槛也高
MaxKB 开箱即用,界面是给业务人员用的 技术人手少、想快速跑起来的部门 深度定制能力弱一些
FastGPT 知识库问答成熟,问答对清洗做得好 做对外问答、标准 FAQ 新版本重心转向智能体,大文档解析不算强项
AnythingLLM 桌面级,个人电脑上就能跑 自己先玩明白、做个原型 中文处理和权限体系偏弱,不适合严格合规场景

第二条路:大、中厂商平台。云厂商提供公有云产品,支持开箱即用。针对不同场景也支持私有化部署,个性化定制。客户常见的选择:

平台 一句话定位 适合谁
火山 HiAgent 多租户 + 评测监控体系完整,私有化经验丰富 大集团统一管理多个部门的应用
阿里云百炼 通义系列底座,跟阿里云产品打通 已经是阿里云客户的
腾讯云 ADP 打通企业微信、腾讯会议,支持私有化与混合云 想把问答塞进员工日常沟通工具的
百度千帆 中文语义检索强,支持私有化与信创适配 强合规、要信创适配、知识密集型场景
各行业头部IT公司的产品 根据需求进行个性化产品定制,更贴近行业 适合有自研能力的企业

选型时我只看四条硬约束,这四条是踩过坑才排出来的:

1)能不能在内网跑。

客户说"必须内网"的时候,这一条直接筛掉一半选项——没得商量,别指望后面再改。

2)国产化和信创能不能过。

客户要是指定了芯片、操作系统、数据库,平台得能适配,不然后面验收卡在这儿。

3)能不能把中间那几段检索结果打出来。

这一条最容易被忽略,但它直接决定第四节的活能不能干——看不到中间结果的平台,等于让你蒙着眼睛修水管。

4)数据能不能整体导出带走。

文档、向量、配置能不能导出,决定了三年后你换平台时是搬家还是重做。

最后说个实在建议:别在选型上耗两周。我的做法是先用 Dify 把一条链路跑通(文档进去、问题出来、出处能点开),跑通之后你才知道自己真正需要什么,这时候再选型,一周就能定。反过来,先选型再动手的人,往往选完发现那套东西根本啃不动自己那批文档。

我之前写了一套Dify的使用教程可以参考一下(当然Dify不单单是知识库),可以点击以下链接查看Dify实战教程。

Dify 实战教程

还有一句必须说:平台救不了烂数据。同一批乱七八糟的扫描件,换哪个平台都答不准——文档那一头的事,后面单独讲。

不复杂的业务场景,选择低代码开发平台就可以满足要求。但是真正复杂的业务还是需要高码平台,需要定制写代码来满足业务要求,现在真正跑复杂业务的场景,大部分都是要定制化开发。

六、答不准的时候,怎么办

答不准的时候,别怀疑模型的问题,我的判断是:客户说"答不准",十次里有七八次,问题不在模型那一段,而是在调用模型前的步骤(可以详细读一下第二节RAG的原理)。

恒信银行的智能制度问答上线第二个月,王处长把几个答错的截图甩过来,说"这个模型是不是不太行"(以下客户与项目均为虚构示例,仅用于说明方法)。我们团队老周的第一反应跟大多数人一样:换个大一点的模型试试。

我拦住了。不是因为换模型没用,是因为那时候我们还不知道错在哪——换完如果对了几条,我们也不知道为什么对;如果还是错,就只剩下"再换一个"这一招。而且换模型的成本最高:要重新对接、重测、重走一遍客户那边的评估。

真正该做的第一件事,是先把链路拆开,找到坏的那一段。

先打个比方。你家的自来水出了问题,可能是水厂的问题,也可能是管道,也可能是楼顶那个水箱。你不会一上来就换水厂——你会先接一杯水看看,问题出在"根本没送到"还是"送到了但有杂质"。

知识库问答也是一条管子,从文档到答案一共要走七段:

1)解析 → 2)切分 → 3)向量化 → 4)检索 → 5)重排 → 6)生成 → 7)引用溯源

前四段决定"有没有把正确材料送上来",第五段决定"正确的材料排在第几位",第六段决定"看着材料能不能答对",第七段决定"客户信不信"。

大多数人的做法是把这七段当成一个黑盒,输入一个问题,看最后吐出来的答案对不对。答案错了,就只会换模型——而模型只是第六段。你把七段里的问题都算在它头上,它确实挺冤。

这里有一个极省事的分诊动作,也是我最想让你记住的:把中间结果打出来看。具体说,就是在第 04 讲之后加一步——每次回答都把"这次检索回来的那几段原文"一起显示出来。有了这一步,一次就能把链路切成两半:

材料里有正确答案,但最终答错了 → 问题在重排或生成(第五六段)

材料里压根没有正确答案 → 问题在前四段,跟模型没关系

这一步在调试界面就能做,不用改代码。我每次接手一个"答不准"的项目,第一件事就是要求把它打开。

七、一张故障定位对照表

这是我带走的那个东西。拿到一批答错的题,按这张表逐条归类:

现象 嫌疑段 验证动作
答案完全不沾边,像在聊别的制度 解析 / 切分 拿答案里的关键词去原文全文搜,看能不能搜到那段——搜不到就是压根没进库
沾边,但细节答错(条款号、金额、日期错) 切分 / 检索 打印返回的前 K 段,看正确那一段在不在里面、排第几;在第四五位基本等于没起作用
正确材料确实在前几位,答案还是错 重排 / 生成 把正确的那段手动挪到第一位重跑一次,答对了就是排序问题,如果还错才是生成问题
答案对,但客户不认 引用溯源 看出处有没有返回、出处指向的是不是这一段;给不出出处的答案在金融客户眼里等于没有
换个问法就崩 向量化 / 查询改写 同一个问题用三种说法问,看命中是否稳定;口语问法差是常见短板

这张表我用得很频繁,因为它把"答不准"这种没法动手的描述,翻译成了"下一步验什么"。

补一句现实感:我做过的项目里,按这张表归类下来,落在前两段(解析和切分)的通常占大头(示例数字,仅用于演示口径:多数项目在四成以上,个别能到六成)。这也是为什么下一讲要单独拎出文档解析。

八、什么算会了

客户甩来一条答错的截图,你能在五分钟内说出"我怀疑是第几段,怎么验"。

你的项目后台能看到"这次检索回来的原文是哪几段"——看不到,你就是在黑盒里调。

你能给出一张归类结果的饼:错在前四段占多少、错在后面占多少。给不出这个比例,说明你还没分诊过。

自检一句:你现在 Debug 的时候,看的是最终答案,还是中间那几段材料?只看最终答案的人,等于蒙着眼睛修水管。

动手任务:先找一下平台将流程搭建然后。然后把你项目里最近二十条答错的问题拉出来,按上面那张表逐条归类,数一下每类各占多少。做完你会发现,第一名往往不是你以为的那个。

九、坑

跳过分诊直接优化。最常见的浪费:没归类就改 Prompt、调温度、加提示。改完看起来好一点,其实是把某一类救回来了,另一类更糟,而你不知道是哪一类。

只看排序第一的那条。模型最终看进去了几段,才是真相。打印前五段出来看看,你经常会发现正确答案就在第四位——它其实找到了,只是排得太靠后。

把"命中率"当唯一指标。命中率这个词在不同人口里意思完全不同:有人指检索命中,有人指答案正确。谈指标之前先统一口径,否则验收时双方说的根本不是一件事。

写到最后,RAG应用属于一个见效快、后期提升的边际成本高的工程。大家搭建出来的应用效果的都差不多,你想要是比别人的质量多出10%,是需要下一部分力气了。

要在RAG上多榨出那10%,重点在数据层做好结构感知分块、质量分级路由和元数据,检索层用混合检索、RRF、重排和查询改写提升排序质量,生成层加可回答性判断、忠实度约束和引用溯源,评测层做环节拆解、失败归因和反馈闭环;优先投入分块、元数据、重排和环节评测。这部分就需要交给研发团队了,不属于FDE的活儿。

下一讲接着往下挖:既然前两段占大头,那我们就专门讲第一段——文档解析。


《AI-FDE 转型之路》:写给不写代码的 IT 实施 / 售前 / 运维,把已有的交付能力「AI 化」。全系列 55 篇,六大模块 53 项技能。

想先看看自己缺什么:AI-FDE 技能自评地图,53 项打分,出一张雷达图。AI-FDE 转型之路 · 开篇

想先看看自己缺什么?用自评地图打个分 →