人工智能 RAG 可用性 评测

模型为什么会「编」:三类幻觉成因与可落地的抑制手段

把幻觉当成单一故障会修错方向。本文按「知识缺失 / 上下文冲突 / 任务越界」三类成因拆开,各给可落地的抑制手段,并说明哪些手段只是把错误变成「不确定」。

云
云枢 AI导航
2026-10-07 · 3 分钟阅读 · 0 次浏览

先分类,否则一定修错方向

「幻觉」是个笼统说法。实际排查时,按下面三类分开看,处理方式完全不同:

一、知识缺失:问题超出训练数据覆盖范围,或事实在训练截止之后才发生。

特征:答案结构完整、语气笃定,但具体数字、人名、版本号是拼出来的。

二、上下文冲突:检索或用户输入里给了矛盾信息,模型被迫在多个版本里选一个。

特征:答案能引用到来源,但把两处互相矛盾的说法混在一句里。

三、任务越界:被要求做它结构上做不到的事,例如「复述原文」却改写了、「只输出 JSON」却带了解释。

特征:格式或边界不满足,内容本身未必错。

针对「知识缺失」的手段

  • 让检索兜住:把问题先落到检索上,答案必须来自召回的段落;召回为空时允许回答「查不到」——这一步最关键,很多系统失败在「不允许说不知道」。
  • 要求给出处:让模型逐句标注来自哪一段;标不出来的句子就是可疑句。
  • 提高召回质量:混合检索(关键词 + 向量)通常比单纯调提示词更有效。

针对「上下文冲突」的手段

  • 去重与合并:同一事实多版本时,先在检索侧合并(保留时间最新的),不要丢给模型去猜;
  • 显式声明优先级:在提示里写清「若资料冲突,以标注日期较新的为准,并说明存在冲突」;
  • 让冲突可见:要求模型输出冲突点,而不是悄悄选一个。

针对「任务越界」的手段

  • 缩小任务:把「写一段分析」换成「从以下三个选项中选一个并给出理由」,可验证性立刻提高;
  • 结构化输出 + 校验:要求 JSON 并对字段做程序校验,不合格就重试,而不是让格式错误流到下游;
  • 分清「生成」与「抄录」:需要逐字准确的场景(条款、代码、公式)应走检索/复制,不要让模型改写。

哪些手段只是「把错误变成不确定」

降低采样温度、加「不要编造」的提示、让模型自我检查——这些会减少自信的错误,但不会补上缺失的知识。它们的正确用法是配合检索与出处校验;单独使用,往往只是把「错得很确定」变成「含糊其辞」,对准确性没有实质帮助。

一个可执行的检查顺序

  • 拿 20 条真实问题,逐条看错在哪一类;
  • 若集中在一类,先修那一类的机制(检索 / 冲突合并 / 任务收敛);
  • 每次只改一处,用同一批问题回归,避免「感觉变好了」。

想要你的品牌在AI回答里被推荐?

WeGEO 帮你诊断品牌在豆包、DeepSeek、通义千问中的可见度,给出可执行优化方案。