RAG 是怎么工作的?
RAG(Retrieval-Augmented Generation,检索增强生成)的核心思路很朴素:先查资料,再回答。用户提问后,系统先从知识库里检索出最相关的几段原文,再把这几段连同问题一起交给大模型组织答案。模型不是在凭记忆瞎猜,而是在「读材料答题」。
| 环节 | 做什么 | 做不好会怎样 |
|---|---|---|
| ① 解析 | 把 PDF、Word、Excel、网页、扫描件转成干净文本,保留标题层级与表格结构 | 表格被打散、条款编号丢失,后面怎么调都答不准 |
| ② 切分 | 按语义段落切块,控制块大小与重叠,给每块打上来源、部门、版本标签 | 切太碎丢上下文,切太大召回不准,答案夹生 |
| ③ 向量化 | 用 Embedding 模型把文本块转成向量,存入向量库 | 中文语义 embedding 选错,近义提问召不回 |
| ④ 召回 | 按问题向量做相似检索,取 Top-K 候选块 | K 值太小漏答案,太大引入噪声 |
| ⑤ 重排 | 用 Rerank 模型对候选块重新打分排序 | 首条不相关,模型被带偏 |
| ⑥ 生成 | 带着片段与指令生成答案,强制标注出处 | 没有引用约束,模型开始自由发挥 |
| ⑦ 兜底 | 相似度低于阈值时明确拒答并转人工 | 不知道也说知道,这是最伤信任的失败 |
为什么不能把文档直接贴给大模型?
| 做法 | 问题 |
|---|---|
| 把文档全文贴进对话 | 上下文窗口有限,几十份文档塞不进去;超长输入费用高、响应慢 |
| 把文档喂给模型做微调 | 知识更新要重训,成本高周期长;模型仍可能记错,且无法给出处 |
| 只做关键词搜索 | 用户问法和文档用词不一致就搜不到,比如「报销多久到账」vs「费用核销时限」 |
| RAG 检索增强 | 每次只取最相关片段,成本低、可溯源、知识更新只需重灌文档 |
所以顺序很重要:先 RAG,再考虑微调。RAG 解决「不知道」和「知识过期」,微调解决「说话风格」和「特定任务格式」。多数企业的需求属于前者。
搭一个企业知识库,五个阶段
- 知识盘点(1 周):列出高频问题清单(50–100 条真实提问),反查答案落在哪些文档里。这一步决定知识库的边界,也直接决定后面评测集怎么建。
- 文档治理(1–2 周):清理过期版本、统一命名、补齐缺失章节,扫描件做 OCR。老文档不清理,知识库就是个谣言放大器。
- 链路搭建(2–3 周):解析、切分、向量化、召回、重排、生成、引用、拒答,一条链路打通,先做内部试用版。
- 评测调优(1–2 周):用真实问题集跑回归,看命中率与错答率,针对性补文档、调切分、换 embedding。
- 渠道上线(1 周):接网站、公众号、企业微信、钉钉或内部 OA,配置转人工规则与坐席分配。
标准项目 4–8 周,费用 3–6 万元。文档量特别大(几千份以上)或扫描件比例高的,按实际解析工作量评估。
怎么衡量「好不好用」?
| 指标 | 含义 | 参考目标 |
|---|---|---|
| 召回率 | 正确答案的原文片段有没有被检索出来 | ≥ 90% |
| 命中率 | 最终答案与标准答案语义一致的比例 | 垂直场景 ≥ 80% |
| 错答率 | 给出了错误但看起来像对的答案 | < 5%,比命中率更值得盯 |
| 拒答合理率 | 该拒答时拒答、不该拒答时不拒答 | ≥ 90% |
| 人工介入率 | 需要转人工的比例 | 上线首月降 30% 即为有效 |
| 首答时长 | 用户提问到看到答案的时间 | < 3 秒 |
只看「命中率」会被误导,因为模型完全可以通过乱答把命中率抬上去。错答率和拒答合理率才是信任的底线——一个会说「这个我不知道,帮您转人工」的系统,比一个自信地胡说八道的系统有价值得多。
六个高频坑,提前避
| 坑 | 表现 | 解法 |
|---|---|---|
| 扫描件没做 OCR 或 OCR 质量差 | 文档明明有,就是搜不到 | 先做版面还原 + OCR 校验,抽样人工核对 |
| PDF 表格被拍平 | 数值对应错行,答案数据错乱 | 表格单独结构化解析,按行列还原 |
| 多版本文档混在一起 | 新旧制度同时被召回,答案自相矛盾 | 打版本标签,只召回生效版本 |
| 权限没在检索层做 | 换个问法就能套出无权内容 | 检索前按角色过滤,而非展示层遮挡 |
| 知识库没人维护 | 三个月后准确率明显下滑 | 指定知识管理员,月度清理过期内容 |
| 没有拒答机制 | 什么都敢答,一次瞎答毁掉信任 | 阈值 + 转人工 + 用户反馈按钮 |
和传统智能客服比,差在哪
| 维度 | 关键词/规则客服 | RAG 知识库客服 |
|---|---|---|
| 问法适应性 | 必须命中预设关键词 | 理解同义表达与口语化提问 |
| 知识维护 | 人工一条条配问答对 | 上传文档即可,自动切分入库 |
| 多轮上下文 | 基本没有 | 能记住前文,追问不用重复 |
| 答案可溯源 | 无 | 附原文出处,便于核对 |
| 建设成本 | 低,但长期维护贵 | 初期略高,维护成本低 |
实际项目里两者常常并存:高频标准问题走规则(响应快、零成本),长尾与复杂问题走 RAG,两者都不中再转人工。这样能用最低成本覆盖最多问题。
典型落地形态
政策咨询与材料预审
把政策文件、办事指南、申报模板建成知识库,企业问「我这种情况能不能申请」直接给条件对照与材料清单,材料缺失项自动标出,减少窗口往返。
设备手册与故障初判
设备手册、维修记录、工艺文件入库,一线人员用手机描述现象就能拿到排查步骤与备件信息,老师傅经验被沉淀下来。
商品问答与售后
商品参数、售后政策、物流规则入库,接在店铺客服与小程序内,减少重复咨询,复杂售后自动带上下文转人工。
制度问答与入职助手
人事、财务、行政制度入库,按部门权限隔离回答,新员工不用再挨个问同事,HR 重复答疑量明显下降。
服务地区与协作方式
成都总部上门对接,重庆、贵州(贵阳、遵义等)以远程协作为主、关键节点驻场,全国范围承接远程项目。知识库项目的文档准备大部分可在线上完成,对地域不敏感,这是远程交付成熟度最高的一类项目。
如果企业同时需要本地化模型(数据不出内网),可以看 大模型私有化部署;如果知识库还要驱动业务动作(派单、建单、发通知),可以看 Agent 智能体开发。两者与知识库是天然组合。
常见问题
RAG 是什么?和把文档直接发给大模型有什么区别?
RAG(检索增强生成)是先从知识库里检索出相关片段,再把片段交给模型组织答案。直接贴文档受上下文长度限制,几十上百份文档塞不进去,而且模型容易张冠李戴。RAG 每次只取最相关的几段,成本低、可溯源、知识更新只需重灌文档,不用重训模型。
知识库能支持哪些文档格式?
PDF(含扫描件走 OCR)、Word、Excel、PPT、Markdown、网页、飞书/企业微信导出的聊天记录都能处理。表格类文档单独做结构化解析,避免把表格拍平成文字导致数据错乱。合同扫描件会做版面还原,保留条款编号。
怎么保证回答准确、不乱编?
四件事同时做:一是强制引用出处,答案后必须跟原文片段和文档位置;二是设置相似度阈值,检索不到就明确说「知识库中没有相关内容」并转人工;三是答案只允许基于检索片段生成,禁止模型自由发挥;四是上线前用 100–200 条真实问题做评测,把答错的补进知识库。
知识库有权限要求,不同部门看到的内容不一样怎么办?
在检索层做权限过滤,而不是在展示层遮。每个知识片段带部门/角色标签,检索时按用户身份过滤后再送进模型,模型根本看不到无权内容,避免通过「换个问法」套出敏感信息。
上线后谁来更新知识库?
业务人员在后台自行上传、替换、下架文档,系统自动重新切分和向量化,不需要开发介入。我们会配一份维护说明,并建议指定一位知识管理员,每月做一次过期内容清理——知识库效果衰减,八成是因为文档过期没人管。
能不能接微信公众号、企业微信、网站客服?
可以。同一套知识库可以同时挂到网站浮窗、微信公众号、企业微信客服、钉钉、内部 OA 和 APP 内嵌页面,各渠道共用知识但可配置不同的回答风格和转人工规则。
知识库和智能客服项目要多少钱?
标准知识库问答(500 份以内文档、单一渠道)约 3–6 万元、4–6 周;多渠道 + 权限体系 + 工单转人工的智能客服约 6–8 万元、6–8 周。文档量特别大或需要 OCR 处理大量扫描件时按实际工作量评估。
可以先试用再决定吗?
可以。我们支持先做 2 周的小范围验证:拿 50–100 份最有代表性的文档建一个临时知识库,用真实问题测命中率,效果满意再进入正式开发。电话 15730313844。