RAG 失败模式¶
| 现象 | 优先检查 | 常见修复 |
|---|---|---|
| 知识库根本没有答案 | 数据覆盖、版本、权限 | 补充来源;证据不足时拒答 |
| 正确文档未进入候选 | 查询表达、切分、过滤、K 值 | 查询重写;混合检索;调整切分 |
| 复杂问题只命中局部证据 | 是否需要问题分解或多查询 | Decomposition;Multi Query;覆盖检查 |
| 正确文档排名太低 | 初排分数、重复结果 | 引入重排;融合多路排名 |
| 语义相近但实体、数字或日期错 | 稀疏检索缺失、过滤不足 | 混合检索;结构化过滤;实体校验 |
| 上下文有证据但回答错误 | 上下文组织、冲突、提示 | 减少噪声;结构化证据;逐条引用 |
| 只回答部分问题 | 复合问题未分解 | 子问题分解并做覆盖检查 |
| 回答粒度不匹配 | 检索单元和提示粒度 | 小到大检索;扩展父级上下文 |
| 表格、代码或数字丢失 | 文档解析 | 使用结构感知解析和专门索引 |
| 多轮对话指代错误 | 查询未独立化 | 基于对话状态重写完整问题 |
| 引用存在但不支持声明 | 引用映射或生成幻觉 | 声明级引用验证 |
| 召回内容太长且噪声高 | 返回粒度、父子文档策略 | 小块检索;父文档返回;上下文压缩 |
| 延迟过高 | 分阶段耗时 | 批处理、缓存、减少候选、并行与流式输出 |
排障顺序应从来源和解析开始,再看召回、排序和生成。不要一遇到错误就先换更大的生成模型。