AI知识问答给出错误答案时,先别急着归因于模型能力。更有效的做法是按“问题—检索—生成—引用”四段逐一排查:问题是否超出知识范围,检索是否召回了正确文档,生成是否脱离原文,引用是否能回溯到具体段落。每一步都用可观察的证据确认或排除,再决定补知识、调组织方式还是加复核。处置前保留知识条目版本,处置后用固定问题集回归验证。ONES可承载知识条目补充、责任分派与复核记录,帮助把这条诊断路径落到可追踪的工作项上。
要点总览(TL;DR)
- AI知识回答出现幻觉,先按“问题—检索—生成—引用”四段定位,用可观察证据确认原因,再决定处置方式。
- 症状记录固定字段:原始问题、期望答案、实际答案、涉及文档与版本、错误类型,便于后续比对与回归。
- 处置前保留知识条目版本,涉及权限与敏感信息先确认访问范围;知识归属不明时停止改库并确认责任人。
- 处置后用固定问题集回归验证,比对处置前后答案与引用是否一致,并定期抽查引用段落与原文的对应关系。
- 高频错误问题、相近易混文档和跨版本差异较大的规范纳入日常复核清单,观察复发情况。
先确认幻觉发生在哪一类问题
“幻觉”是一个笼统的说法,落到企业研发知识问答里,至少包含四种不同表现。把它们分开记录,后续排查才有方向。
- 编造事实:知识库里没有相关内容,回答却给出了具体结论、数字或流程。
- 张冠李戴:答案内容真实存在,但对应到了错误的项目、模块、版本或团队。
- 过期信息:引用了已被新版本替代的规范、接口说明或评审结论。
- 引用与原文不符:答案附了来源,但来源段落并不支持该结论,或来源本身无法访问。
判断属于哪一类,关键看两件事:期望答案在知识库中是否存在,以及实际答案与来源文档的关系。知识库中确实有明确条目而回答偏离,偏向生成或引用问题;知识库中找不到对应内容而回答仍然具体,偏向知识缺失叠加生成越界;答案正确但指向了错误对象,则要重点检查检索与文档组织。
记录症状时,建议固定字段,便于后续比对和回归。下表是一个可直接使用的症状记录表结构。
| 字段 | 填写内容 | 示例 |
|---|---|---|
| 原始问题 | 用户实际提问的完整表述 | “支付模块的灰度发布流程是什么?” |
| 期望答案 | 依据现行文档应给出的结论与来源 | 《支付模块发布规范 v3.2》第 4 节 |
| 实际答案 | 系统输出的完整回答 | 描述了已废止的 v2 流程 |
| 涉及文档 | 回答引用或应当引用的文档及版本 | 发布规范 v2.1 / v3.2 |
| 错误类型 | 编造事实、张冠李戴、过期信息、引用不符 | 过期信息 |
| 提问方式 | 自然语言问句、关键词、带上下文追问 | 自然语言问句,未指明版本 |
记录时按知识域和提问方式分组,能更快看出错误是否集中在某类文档或某种问法上。本文讨论的范围是企业研发知识问答与检索中的可信回答,涉及知识组织、回答边界与复核机制;模型训练、微调与向量检索调优属于另一层工作,不在本文展开。
逐段排查:从问题到引用的四类原因假设
症状分类之后,下一步是把可能原因写成假设,再为每条假设找到能证实或排除它的证据。原因假设只有被证据支持,才能进入处置环节。
问题侧:提问是否落在知识范围内
常见假设是提问超出了知识库覆盖范围,或者表述存在歧义、缺少必要业务上下文。验证方式是回到知识库做一次人工检索:用问题中的核心词和同义词分别查找,看是否存在能直接回答的条目。若人工也找不到,说明问题侧或知识覆盖是主因;若人工能轻松找到,则问题更可能出在检索或生成环节。对于“这个接口为什么这么设计”这类缺少项目、版本信息的提问,可以补充上下文后重问一次,观察答案是否收敛。
检索侧:正确文档是否被召回
检索失败的典型假设包括:知识库缺少条目、文档已过期、文档切分或索引未覆盖关键段落、召回结果与问题不相关。验证时不要只看最终答案,要查看系统实际召回或引用的文档清单,逐条核对三件事:文档是否为现行版本,文档是否属于提问所指的项目或模块,被引段落是否真的包含答案依据。召回清单里没有正确文档,属于检索侧问题;正确文档在清单里但答案没用上,则要转向生成侧。
生成侧:模型是否在依据不足时强行作答
生成偏离的常见假设是:上下文不足但模型仍给出确定结论,多个来源存在冲突而回答未加区分,模型在原文基础上补全了细节。验证方法是把召回文档与答案逐句对照,标出哪些结论有原文支撑、哪些属于推断或补充。若答案中的关键数字、步骤或责任人在原文中找不到对应表述,即可确认生成侧存在越界。多来源冲突的情况,还要检查回答是否只选了其中一个来源而未说明差异。
引用侧:来源能否回溯到具体段落
引用问题的假设包括:引用段落与答案不对应、来源链接不可访问、引用粒度过粗导致无法核验。验证时随机抽取若干条回答,打开其引用来源,确认被引段落是否直接支持答案结论。引用只到文档首页或整个知识空间、无法定位到具体段落时,即使答案正确,也应记为引用可回溯性不足,因为它让复核成本显著上升。
下表把四类假设与验证证据放在一起,便于逐项确认或排除。
| 环节 | 原因假设 | 验证证据 | 判断依据 |
|---|---|---|---|
| 问题 | 超出知识范围、表述歧义、缺少上下文 | 人工检索结果;补充上下文后的重问结果 | 人工也找不到依据,问题侧成立 |
| 检索 | 缺条目、文档过期、索引未覆盖、召回不相关 | 实际召回文档清单及版本 | 正确文档未出现在召回结果中 |
| 生成 | 依据不足仍作答、多来源冲突未标注、补全细节 | 答案与召回原文的逐句对照 | 关键结论在原文中无对应表述 |
| 引用 | 引用与答案不对应、来源不可访问、粒度过粗 | 抽查引用段落与原文的对应关系 | 被引段落不支持答案结论 |
实际排查中,多个环节可能同时存在问题。例如文档过期会同时表现为检索召回了旧版本、生成沿用了旧结论、引用指向了旧文档。此时应按“先知识、再检索、后生成与引用”的顺序处理,避免在错误的知识基础上反复调整回答策略。
按原因处置:缩小范围、补知识、加引用与复核
处置动作应与已确认的原因一一对应,并在动手前明确操作对象、责任人和停止条件。知识库是团队共用的资产,修改前保留版本是基本前提。
知识缺失:补充或更新知识条目
确认知识库缺少条目或条目过期后,由该知识域的负责人补充或更新内容,并在条目中写明适用范围、生效时间和替代关系。更新旧文档时保留历史版本,标注废止状态,避免旧内容继续被召回。涉及权限与敏感信息时,先确认新条目的访问范围与原有权限体系一致,再发布。无法确认知识归属时,先找到对应负责人,不直接改库。
检索不准:调整知识组织与标签
针对召回不相关或覆盖不全,可从文档标题、标签、目录归属和版本标识入手,让同一主题的文档在组织上可区分。核对文档版本与适用范围,把“适用于哪个项目、哪个版本”写进文档本身,减少仅靠标题判断的歧义。调整知识组织方式属于影响面较大的操作,建议先在小范围文档上验证召回效果,确认有效后再推广;若调整后召回质量下降,应能回退到调整前的结构。
生成偏离:限定回答边界
对依据不足仍强行作答的情况,处置重点是明确回答边界:要求回答基于指定范围的文档,找不到依据时直接说明无法回答,并指出缺少哪类信息。对于多来源冲突,要求回答呈现不同来源的差异,而不是自行选择一个结论。这一步需要与知识组织配合,先把权威文档的范围界定清楚,回答边界才有可依据的基准。
引用不可回溯:要求附来源段落并建立抽查
要求答案附上来源,并尽量定位到具体段落或章节。建立定期抽查机制,按知识域抽取回答,核对引用段落与结论的对应关系,把不符合的记录进问题清单。抽查频率可根据问答量和错误率调整,高频知识域优先覆盖。
下表汇总按原因分类的处置清单,包含责任人与停止条件。
| 原因 | 处置动作 | 责任人 | 风险与停止条件 |
|---|---|---|---|
| 知识缺失或过期 | 补充条目、更新版本、标注废止与生效时间 | 知识域负责人 | 改库前保留版本;归属不明时停止并确认 |
| 检索不准 | 调整标题、标签、目录与版本标识 | 知识库维护人 | 先小范围验证;召回质量下降时回退 |
| 生成偏离 | 限定回答范围,要求无依据时说明无法回答 | 问答配置负责人 | 范围收得过窄导致可用性下降时复核 |
| 引用不可回溯 | 要求附来源段落,建立抽查清单 | 复核人 | 来源涉及受限内容时先确认访问权限 |
这些处置动作涉及知识条目、责任分派和复核记录,可以在ONES中衔接:知识条目补充与更新对应Wiki文档的版本状态,责任人和生效时间落到具体工作项,复核发现的问题进入统一的问题清单,便于跟踪到关闭。ONES Assistant支持基于指定的Wiki页面组回答问题并附上引用来源,团队在排查引用不可回溯时,可以据此核对回答与来源页面的对应关系;具体可用范围以实际产品配置为准。
验证恢复与减少复发
处置完成不等于问题解决。需要用同一批问题在处置前后做对比,确认答案与引用是否真正改善,并把容易反复出错的场景纳入日常监控。
用固定问题集做回归验证
从症状记录表中挑选覆盖四类错误和高频知识域的问题,组成固定回归集。每个问题保留期望答案和期望来源,处置后重新提问,逐条比对三件事:结论是否与现行文档一致,引用是否指向正确段落,原本无法回答的问题是否明确说明依据不足。答案变化但引用未更新,说明改善可能来自偶然;结论与引用同时对齐,才算验证通过。
抽查引用与原文的对应关系
回归验证覆盖的是已知问题,抽查用于发现未知偏差。按知识域定期抽取回答,打开引用来源核对段落内容,记录仍存在的偏差类型和涉及文档。抽查结果进入问题清单,按原因重新走一遍排查流程,形成闭环。
建立知识更新与过期提醒
为关键知识条目明确核对责任人和复核周期,文档版本变更时同步更新适用范围与替代关系。过期文档及时标注状态,避免继续被召回。责任人变动时同步移交,防止条目长期无人维护。
把高频错误纳入日常复核清单
将反复出现错误的问题、容易混淆的相近文档、跨版本差异较大的规范列入日常复核清单,观察复发情况。复发集中在同一知识域时,优先检查该域的文档组织与版本管理;复发分散在多个知识域时,重点检查回答边界与引用要求是否落实。
下表可作为回归验证与复发监控的记录结构。
| 记录项 | 内容 |
|---|---|
| 问题编号与原始提问 | 来自症状记录表的固定问题 |
| 期望答案与来源 | 现行文档中的结论与段落位置 |
| 处置前结果 | 答案摘要、引用来源、错误类型 |
| 处置后结果 | 答案摘要、引用来源、是否一致 |
| 残留偏差 | 仍不一致的结论或引用,及涉及文档 |
| 复发观察 | 复核周期内是否再次出现同类错误 |
回归记录和复核问题在ONES中可以工作项和文档状态的方式持续跟踪:验证任务分派到责任人,残留偏差作为待处理项流转,复核结论回写到对应知识条目,使每次处置都有记录可查。ONES基于自身权限体系进行知识问答和任务执行,输出过程可追踪、结果可审计,这为引用抽查和复发监控提供了可核对的依据。需要说明的是,知识条目的过期提醒配置、引用粒度等具体机制,应以实际产品环境中的表现为准。
减少幻觉复发,靠的是把每一次错误变成一条可验证的记录:症状记录定位类型,原因假设配上证据,处置动作留下版本和责任人,回归验证确认改善。四步走完,团队对哪些问题可以信任AI回答、哪些必须人工确认,会形成更清晰的判断。
常见问题
知识库中确实有正确文档,AI回答仍然出错,应该先查哪一段?
这种情况优先查检索侧和生成侧。先看系统实际召回或引用的文档清单:正确文档是否出现在清单里、是否为现行版本、是否属于提问所指的项目或模块。正确文档未被召回,属于检索侧问题,可从标题、标签、目录归属和版本标识入手调整知识组织。正确文档在清单里但答案没有用上,则转向生成侧,把答案与召回原文逐句对照,标出哪些结论有原文支撑、哪些属于推断或补全。引用段落与答案不对应时,再按引用侧处理。
多个环节同时出问题时,处置顺序怎么安排?
建议按“先知识、再检索、后生成与引用”的顺序处理。文档过期会同时表现为召回旧版本、生成沿用旧结论、引用指向旧文档,如果先调整回答策略,等于在错误的知识基础上反复修补。先把知识条目补充或更新到位,并标注废止状态与生效时间,再核对检索能否召回正确版本,最后才调整回答边界和引用要求。每一步处置后都保留可回退的版本,便于确认改善来自哪一项动作。
回归验证时,答案变对了但引用没更新,算处置成功吗?
不建议直接算成功。答案变化但引用未更新,改善可能来自偶然,也可能是模型换了表述而依据并未对齐。回归验证要同时看三件事:结论是否与现行文档一致,引用是否指向正确段落,原本无法回答的问题是否明确说明依据不足。结论与引用同时对齐,才算验证通过。仍不一致的结论或引用记入残留偏差,按原因重新走一遍排查流程。
知识条目由谁维护,责任人变动时怎么处理?
按知识域指定负责人,条目中写明适用范围、生效时间和替代关系,复核周期与责任人一并记录。责任人变动时同步移交条目和复核任务,防止条目长期无人维护。无法确认知识归属时,先找到对应负责人再改库,不直接修改。涉及权限与敏感信息的新条目,发布前确认访问范围与原有权限体系一致。
ONES 在这条排查路径中能承接哪些环节?
知识条目补充与更新可以对应 Wiki 文档的版本状态,责任人和生效时间落到具体工作项,复核发现的问题进入统一问题清单跟踪到关闭。ONES Assistant 支持基于指定的 Wiki 页面组回答问题并附上引用来源,排查引用不可回溯时可以据此核对回答与来源页面的对应关系;具体可用范围以实际产品配置为准。ONES 基于自身权限体系进行知识问答和任务执行,输出过程可追踪、结果可审计,为引用抽查和复发监控提供可核对的依据。


















