定义

幻觉(Hallucination)是指 AI 模型,尤其是大语言模型,生成了看似流畅可信、实际上与事实不符、与给定材料矛盾或完全凭空捏造的内容。典型表现包括:编造不存在的论文和引用、给出错误的日期或数据、虚构某个软件并不存在的函数、把两个人的经历混在一起等。

幻觉的危险之处在于,模型说错话时的语气和说对话时一样自信,用户很难单凭表述判断真假。

研究中常把幻觉分为两类:

  • 事实性幻觉:与客观世界的事实不符。
  • 忠实性幻觉:与用户提供的材料或指令不一致,比如总结文章时加入了原文没有的内容。

工作原理

幻觉并不是程序“出了故障”,而是与大模型的工作方式密切相关:

目标是“像”,而不是“对”。 语言模型的训练目标是预测最可能出现的下一个 Token,它学到的是语言的统计规律。一段话只要在语言上足够通顺、符合常见模式,就可能被生成,即使内容是错的。

知识存储是“压缩”的。 模型并不像数据库那样逐条保存事实,而是把海量信息压缩进参数里。对于训练数据中少见的冷门知识,模型的记忆往往模糊,容易“记混”或“补全”。

训练数据本身有错误或过时。 数据中的错误、矛盾和过时信息会被模型一并学到。

倾向于给出答案。 在训练和对齐过程中,如果“给出完整回答”总是比“承认不知道”更受欢迎,模型就会倾向于在不确定时也硬着头皮作答。

解码的随机性。 生成时的采样带有一定随机性,温度等参数越高,输出越多样,也越可能偏离事实。

典型应用

这里的“应用”主要指在实际使用中如何识别和降低幻觉:

  • 检索增强生成(RAG):让模型基于检索到的资料作答,并要求标注来源。
  • 引用核查:对模型给出的论文、链接、数字逐一核实。
  • 提示词约束:明确要求“资料中没有的内容请说明不知道”。
  • 工具调用:计算交给计算器或代码,最新信息交给搜索,而不是让模型凭记忆回答。
  • 降低温度:对事实性任务使用较低的采样温度。
  • 多次采样对比:同一问题多问几次,答案不一致处往往需要重点核实。
  • 人工审核:在医疗、法律、金融等高风险场景,模型输出必须经过专业人员审核。

目前没有任何方法能完全消除幻觉,只能把它降低到可接受的水平。

相关概念

  • 大语言模型:幻觉最常讨论的对象。
  • RAG:缓解事实性幻觉的常用方法。
  • RLHF:对齐训练可以影响模型承认不确定性的倾向。
  • 上下文窗口:材料过长时,模型可能遗漏或混淆其中的信息,导致忠实性问题。
  • 提示词工程:通过约束和示例减少编造。

参考综述:Survey of Hallucination in Natural Language Generation