← 返回文章列表

AI 幻觉与结果校验:六步清单挡住「看似正确的错误」

AI大模型避坑

什么是幻觉,为什么无法彻底消除

幻觉指模型生成了看似合理但错误的内容:不存在的函数名、虚构的论文、算错的金额。它源于模型的工作方式——按概率续写最可能的下一个词,而不是查证事实库。因此幻觉无法被提示词彻底消除,只能靠流程把它挡在使用之前。

四类最容易幻觉的场景

场景典型表现防线
API 与函数名编造不存在的参数、返回值查官方文档、IDE 跳转、编译验证
数字与计算金额、百分比、统计口径出错计算交给工具,不让它口算
引用与来源虚构论文、链接、条款编号要求给出可核验链接并逐个打开
「我记得有这个功能」把 A 库的能力安到 B 库上写 20 行最小例子实跑验证

六步校验清单

  1. 区分事实与推断:提示中要求「不确定就写未知」,并在输出里标注依据;
  2. 要求可核验来源:每个关键结论附官方文档链接或代码文件路径;
  3. 用工具替代口算:计算、编码转换、哈希与文件校验交给确定性工具;
  4. 最小复现:涉及 API 或依赖行为的结论,写一个最小例子跑一遍;
  5. 自动化拦截:结构化输出先进 schema 校验,再进入业务逻辑;
  6. 保留人工终审:对外发布、结算、合规相关内容必须由人确认。

三个可直接复用的提示片段

// 1. 强制标注不确定性
对每个结论标注 [确定] / [推测] 并说明依据;依据缺失时写 [未知]

// 2. 禁止编造来源
只引用你能给出的链接;找不到就回答「我没找到可靠来源」

// 3. 计算交给工具
不要直接给出计算结果,只列出公式与参数,我来用工具算

实战场景:三类高危幻觉

  1. 伪造引用与链接:文献名、DOI、链接看似合理却不存在,必须逐条打开验证。
  2. 过时或相反的事实:模型可能把旧版本信息说得斩钉截铁,涉及版本、数值要回源核对。
  3. 看似严谨的计算:步骤完整但中间数错了,关键计算要用工具或代码复核。

常见问题

降低 temperature 就不会幻觉了吗?会减少随机性,但不能消灭幻觉——错误内容同样可以「稳定地」被反复生成。让模型自己复查一遍有用吗?有帮助(自我一致性检查),但它可能重复同一个错误,仍需要外部验证。加了 RAG 就安全吗?只能降低凭空编造的概率:检索到的片段本身可能过时或不相关,来源仍需校验。

把校验写进流程,而不是靠自觉

  1. 输出结构化:让模型以 JSON 输出结果,进入业务前先做 schema 校验,把「差不多」挡在系统之外;
  2. 关键结论必带来源:没有来源的结论不允许进入文档、代码注释或对外回复;
  3. 计算类任务一律走工具:模型只负责描述步骤与公式,不负责给出最终数值;
  4. 保留人工终审清单:对外发布、金额、合规与安全相关内容逐条签字确认;
  5. 记录失败样本:把每次发现的幻觉整理成用例,用于回归评估提示词与流程是否真的改善。

动手试试:哈希计算、JSON 校验

交叉验证技巧

  • 换问法再问一次:把同一问题换个表述或反过来问,两次答案矛盾就是危险信号;
  • 要求给出处:让它标明依据来自哪段材料,无法标明的部分一律按未证实处理;
  • 拆成可验证的小问题:把大结论拆成若干可独立核实的事实点,逐条查证比整体“看起来对”可靠得多;
  • 重点核对三类内容:数字与日期、API 与函数签名、法规与标准条款——这三类最容易被编造且代价最高。