FDE在落地RAG项目时,最常见的卡点就是“回答不准”——比如用虚构的星宇科技员工手册知识库,问“会议室预约要提前几天”,本该答3天,结果答成7天或15天。这时候不能只依赖Prompt修改,要从资料源头到生成结果逐层拆解故障,用标准化流程排障。
一、资料源头故障:过期与解析错误
资料层是RAG的基础,故障多表现为回答内容与知识库原文规则不一致。比如星宇科技2024年更新了员工手册V2.1,将会议室预约规则从“提前7天”改为“提前3天”,但RAG仍用旧版本V2.0检索,就会返回错误结果。另外,PDF解析时的乱码(如把“3天”转成“7天”)、表格转文本的错位,也会导致规则失真。
二、切分与检索故障:召回不足与片段无关
切分是把长文档拆成可检索的小片段,检索是匹配用户问题与片段的过程。故障表现为:检索不到对应规则(如问“会议室预约”只召回“活动场地预约”片段)、召回无关内容(如把“病假申请”和“年假规则”混在一起)。例如按固定字符数切分时,规则和适用条件恰好落在边界两侧,检索可能只拿到缺少条件的片段;应检查实际切分结果,而不是仅凭窗口大小推断。
三、重排与生成故障:排序错误与幻觉
重排是对检索到的片段按相关性排序,生成是用片段内容组织答案。故障表现为:正确片段排序靠后(Top5里正确片段排第5,生成时未用到)、生成内容编造信息(如片段未提“需经领导批准”,大模型自行添加)。排序错误应检查检索与重排结果;有证据却答错时再检查生成约束。Prompt可以辅助生成约束,但不能替代缺失的证据。
四、权限故障:敏感内容泄露
若知识库片段未添加权限标签,普通用户可能查询到高管薪资、部门机密等敏感内容。比如星宇科技员工手册中“高管年度分红”片段未标记权限,普通用户提问“公司高管薪资是多少”时,错误的访问过滤可能让RAG返回无权读取的内容,这属于权限层故障。
标准化排障核心表格
| 排查层级 | 典型症状 | 排查证据 | 最小修复动作 | 验证方法 |
|---|---|---|---|---|
| 资料源头层 | 回答与知识库原文规则不一致(如预约提前量错误) | 查看知识库版本(星宇科技V2.0/V2.1)、解析后的文本完整性 | 更新知识库至最新版本、修正解析错误片段 | 用固定题集的“会议室预约天数”提问,对比标准答案 |
| 切分与检索层 | 检索不到对应规则,或召回无关内容 | 查看Top5检索片段、切分后的文本窗口 | 尝试保留标题与完整规则的切分;窗口和重叠大小通过题集比较选择 | 统计固定题集的Recall@k,并与修复前基线比较 |
| 重排层 | 正确片段排序靠后(Top1为无关内容) | 查看重排模型的得分排序、片段与问题相似度 | 核对重排输入、截断长度和返回顺序,再比较适合业务的排序方法 | 检查相关证据是否出现在最终可用上下文中 |
| 生成层 | 基于正确片段仍编造内容(如添加未提及信息) | 对比生成内容与检索片段,检查额外信息 | 调整生成温度为0.1、添加“仅用检索内容”约束 | 逐项核对事实与证据,允许不改变含义的改写 |
| 权限层 | 敏感内容被返回(如普通用户看到高管薪资) | 查看片段的权限标签(普通员工/高管)、检索过滤规则 | 为每个片段添加权限标签、检索时自动过滤 | 用普通用户身份查高管薪资,返回“暂无权限” |
标准化排障操作清单
- 先跑固定题集测试:准备100道覆盖星宇科技员工手册核心规则的问题(如“年假天数”“加班调休比例”“病假申请流程”),每道题预设标准答案,统计回答正确率与严重错误,验收门槛应由业务风险确定。
- 资料层排查:确认知识库版本号、解析后的文本完整性,若存在版本过期或乱码,立即更新知识库、重新解析文档。
- 切分与检索排查:检查切分片段是否保留上下文,调整切分重叠字符(建议50-100字符);验证检索召回率,若低于基线,先检查漏召回题目,再比较候选方案;不同模型的相似度分数不能直接套统一阈值。
- 重排与生成排查:查看重排后的Top1片段是否正确,若排序错误,先核对候选片段、输入截断和结果顺序;生成内容若有幻觉,调整大模型温度为0.0-0.3,添加“禁止编造”约束。
- 权限排查:为每个知识库片段添加权限标签,检索时自动过滤无权限内容,避免敏感信息泄露。
失败处理示例:会议室预约天数回答错误
问题:用户提问“星宇科技会议室预约需要提前几天?”,RAG返回“活动场地预约需提前7天,会议室需提前15天”(标准答案为“会议室需提前3天”)。
排障步骤:
- 资料层排查:查看知识库版本,发现当前用的是V2.0版本,而V2.1已将规则改为3天——最小修复:更新知识库至V2.1,重新解析所有文档;验证:再次提问返回“会议室需提前3天”。
- 若版本正确,进入切分检索层:发现召回的片段无V2.1的3天规则——最小修复:检查并调整规则边界的切分,让“会议室预约提前3天”完整片段被保留;验证:切分后的片段包含完整规则。
- 若检索到正确片段,进入生成层:生成内容添加了“需经主管批准”(片段未提)——最小修复:调整生成温度为0.1,添加“仅用检索内容生成”的约束;验证:回答事实均有证据支持,无额外编造。
常见排障FAQ
- 固定题集的设计原则是什么?
答:针对虚构的星宇科技员工知识库,设计50-100道覆盖所有核心规则的问题,每道题标注参考证据、适用条件和允许的答案范围;遇到歧义应允许追问,而不是强行设置唯一措辞;例如“会议室预约天数”“年假天数”等,用于量化排障效果。 - 能不能通过修改Prompt解决所有回答不准的问题?
答:不能。Prompt只能优化生成环节的约束,无法解决资料过期、切分错误、检索召回不足等底层问题;比如知识库版本过期的问题,修改Prompt无法获取正确规则,必须更新知识库本身。 - 无答案拒答功能怎么实现?
答:通过有答案和无答案样本校准检索分数与证据充分性判断;相似度只能辅助判断,不能直接套用0.7这样的通用阈值;在生成层添加规则:“若检索到的片段无法回答问题,输出‘暂无相关信息’,禁止编造”,同时在固定题集中加入“知识库未覆盖的问题”(如“公司高管年度分红规则”),验证拒答准确性。
FDE RAG项目回答不准怎么办?从检索证据到生成结果逐层排障
FDE大模型评估怎么做?小样本题集、人工复核与上线验收模板
文中的公司、资料版本和预约规则都是虚构练习;切分参数与生成温度只是候选实验值,降低温度不保证无幻觉。权限过滤应基于服务端验证的身份,并覆盖检索、重排和模型输入;无权限时不泄露受限资料的存在或内容。