一、一个真实的发现
过去一年,我们接触了20多个做RAG(检索增强生成)的企业客户。
有做内部知识库的,有做智能客服的,有做合同审查的,有做技术文档问答的。行业分布很广,问题却惊人地相似。
这篇文章就是这20多个客户的踩坑经验汇总。
希望能帮你少走弯路。
二、坑1:文档没处理干净,检索全是噪声
现象:知识库上线后,问什么都答非所问。
原因:文档里有大量无效内容——页眉页脚、目录、水印、批注、表格乱码、扫描件未OCR。
有个客户把100多份PDF直接丢进去,结果30%的内容是页眉页脚和目录。检索时匹配到的全是这些噪声,大模型根本没法用。
解法:
- 先用工具清洗文档,去掉页眉页脚、目录、批注
- 扫描件先做OCR,确保文字可提取
- 表格、图片等特殊格式单独处理
三、坑2:分块策略不对,关键信息被切断了
现象:问一个需要上下文的问题,答案支离破碎。
原因:chunk_size(分块大小)设得太小,把完整的条款或段落切碎了。
有个客户做合同审查,chunk_size设了200。结果一个完整的“违约责任”条款被切成3块,AI只看其中一块,理解不了全貌。
解法:
- 长文档(合同、手册)用800-1000的chunk_size
- 短文档(FAQ、公告)用300-500
- 关键是要保证一个完整语义单元不被切断
四、坑3:检索只靠向量,关键词匹配不到
现象:问“试用期多久”,文档里写的是“试用期限”,结果没搜到。
原因:纯向量检索依赖语义相似度,但有些关键词需要精确匹配。
解法:
- 采用混合检索:向量检索 + 关键词检索(BM25)
- 向量检索保召回,关键词检索保精度
- 两者结合,效果最好
五、坑4:没做溯源,用户不敢信
现象:知识库上线后,没人用。问了才知道:用户不知道答案从哪来的,不敢信。
原因:只给了答案,没给来源。
有个客户的法务团队直接拒绝使用:“AI说这个条款有风险,但我不知道它凭什么这么说,我怎么敢签字?”
解法:
- 每个答案都要标注来源文档和页码
- 最好还能展示原文片段
- 让用户可以验证、可追溯
六、坑5:权限没控制,数据串了
现象:销售部的人问出了财务部的数据。
原因:知识库没有做权限隔离,所有文档对所有用户开放。
有个客户的销售问“XX客户的合同金额”,结果搜出了另一个客户的保密数据。差点出事故。
解法:
- 按部门/角色做文档权限隔离
- 检索时带上权限过滤
- 确保用户只能搜到自己有权限看的文档
七、坑6:没做成本归因,账算不清
现象:月底账单出来,不知道谁花了多少、花在哪。
原因:没有记录每次调用的消耗和归属。
解法:
- 记录每次调用的团队、应用、用户、Token消耗
- 按维度汇总成本数据
- 建立成本看板
八、坑7:上线就完事,没有持续优化
现象:知识库越用越不准。
原因:文档不更新、检索策略不调优、没有反馈闭环。
解法:
- 定期更新文档
- 收集用户反馈,优化检索策略
- 建立“发现问题→修正数据→优化效果”的闭环
九、踩坑总结
把这7个坑再汇总一下:
| 序号 | 坑 | 核心解法 |
|---|---|---|
| 1 | 文档没处理干净 | 清洗+OCR |
| 2 | 分块策略不对 | 根据文档类型调chunk_size |
| 3 | 检索只靠向量 | 混合检索(向量+关键词) |
| 4 | 没做溯源 | 标注来源文档和页码 |
| 5 | 权限没控制 | 按部门/角色隔离 |
| 6 | 没做成本归因 | 记录调用链路 |
| 7 | 没有持续优化 | 建立反馈闭环 |
十、延伸阅读
本文总结的企业RAG落地7个坑,与 ZGI 的RAG知识库方案在思路上基本一致。ZGI内置了文档清洗、混合检索、段落溯源、权限隔离、成本归因等完整能力。
写在最后
企业RAG落地,看起来简单,做起来坑不少。
文档处理、分块策略、检索方式、溯源能力、权限控制、成本归因、持续优化——每一个环节都可能踩坑。
希望这20个客户的真实经验,能帮你少走一些弯路。
你踩过几个?