什么是 RAG(检索增强生成)?企业知识库问答怎么做才好用
简要回答
RAG(检索增强生成)是一种让大模型“先查资料、再回答”的方法:系统先从企业文档中检索与问题相关的片段,再把这些片段交给大模型,让它基于资料生成答案并标注出处。它让大模型能够回答企业内部的问题,而且资料更新后不需要重新训练模型。企业知识库好不好用,关键不在向量数据库,而在资料能否被正确解析、权限是否随人走、答案能否点回原文。
RAG 的基本原理
RAG 一词来自 2020 年 Lewis 等人的论文《Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks》。论文提出把一个预训练语言模型和一个可检索的外部知识库结合起来:生成答案时,先检索相关文档,再以这些文档为依据进行生成。
今天企业里的 RAG 系统,基本流程是:
- 入库:把文档解析成文本,切分成片段,建立索引(常见做法是向量索引加关键词索引)。
- 检索:员工提问时,系统找出最相关的若干片段。
- 生成:把问题和检索到的片段一起交给大模型,要求它基于资料回答,并标注出处。
与“把企业资料训练进模型”相比,RAG 有几个明显优势:资料更新只需重新入库;答案可以追溯到具体文件;可以按用户权限过滤资料。
企业知识库的完整链路
很多团队以为 RAG 就是“文档 + 向量数据库 + 大模型”。真实企业场景里,链路要长得多:
资料接入
资料散落在共享盘、图纸库、OA、文档系统里;格式包括 Office、PDF、扫描件、CAD 图纸和台账。好的做法是直接对接原生系统,自动同步增量,而不是让员工手工上传。
解析与加密处理
扫描件需要 OCR;图纸需要提取标题栏、图号和几何信息;表格需要保留结构。很多制造企业部署了终端加密,文件拷出来是密文。可行的做法是与企业加密体系对接,由授权程序穿透加密入库;解不开的文件记录状态,绝不把乱码当作正文入库。
权限同步
知识库必须遵守原系统的权限:谁原来看不到的文件,问 AI 也看不到。权限应随原系统同步,并在检索时按人过滤。
检索
纯向量检索对型号、图号、编号类查询不够准确,通常需要结合关键词检索、元数据过滤和重排序。对于大规模资料,检索可以先返回元数据和预览,正文异步加载,以保证速度。
生成与引用
要求模型逐句标注出处,员工可以点回原文核对。资料里没有答案时,应该明确说“没找到”,而不是编造。
纠错回流
员工发现答案有误时可以反馈;反馈经业务人员确认后,才进入知识库或规则库,避免错误信息被二次放大。
为什么很多知识库“不好用”
| 问题 | 原因 | 对策 |
|---|---|---|
| 搜不到 | 资料没接全,或加密、扫描件没解析 | 接原生系统,OCR 与穿透加密入库 |
| 答非所问 | 检索不准,型号编号类问题尤甚 | 关键词 + 向量混合检索,元数据过滤 |
| 答案不可信 | 没有出处,或模型编造 | 逐句引用,无答案时拒答 |
| 越权 | 知识库不区分权限 | 权限随原系统,按人过滤 |
| 没人用 | 入口不方便 | 接入企业微信、飞书、钉钉 |
| 越用越差 | 资料过期、没人维护 | 增量同步,纠错回流,定期回归评测 |
Stanley Team 在首页公开的一个制造业案例中,知识检索在合同评测集上实测 hit@5 为 99.4%、答案引用率为 98.8%;同时也注明了“纳管数量不代表全文均已解析”。指标要和测量范围一起看,评测方法见《企业 AI PoC 怎么验收》。
RAG 与微调、长上下文
- 微调:改变模型本身的行为,适合固定格式、特定风格或专门任务;不适合频繁更新的知识。
- 长上下文:把大量资料直接塞进上下文窗口。资料少时可行,资料多时成本高、速度慢,也无法按权限过滤。
- RAG:适合大量、经常更新、有权限要求的企业资料。
三者并不互斥,可以组合使用。
在 Stanley Team,RAG 属于 AI 算法与数据工程专家马振源(Miles Ma)的技术实践范围;他负责 FDE 方案设计、算法与数据工程,关注评测样本、人工审核与迭代反馈。
常见问题
用了 RAG 就不会有幻觉了吗?
不能完全消除,但能显著降低,并让错误可以被发现:答案带出处,员工可以点回原文核对;资料里没有答案时,系统应明确拒答。关键数字仍应由程序计算,见《大模型为什么会幻觉》。
知识库需要多少资料才能开始?
不需要等资料全部整理好。可以先接入一个部门、一类资料,用真实问题建评测集,跑通后再扩大范围。
图纸和 CAD 文件能进知识库吗?
可以,但需要专门处理:提取图号、标题栏等元数据,必要时建立几何索引以支持相似件查找。受保护的 CAD 文件应通过授权的 CAD 环境导出。
延伸阅读
参考资料
- Retrieval-Augmented Generation for Knowledge-Intensive NLP TasksLewis 等,2020
- Retrieval-augmented generationWikipedia
- RAGFlow开源 RAG 引擎
- Optical character recognitionWikipedia
- Precision and recallWikipedia