什么是AI幻觉?
AI幻觉是指语言模型生成自信且错误的信息。模型以与真实陈述相同的语法确定性陈述虚假内容。它不知道自己是错的——因为在它的视角里,它只是在预测最可能的下一个token。
这不是可以通过"写更好的代码"来修复的bug。这是LLM工作方式的固有属性。它们是下一个token预测器,不是事实检索系统。幻觉是我们为模型能够写诗、解释量子物理和起草商业计划而付出的代价——因为产生创造力的同一机制也产生了编造能力。
3个真实案例
案例1:提交虚假案件的律师
2023年,纽约律师Steven Schwartz使用ChatGPT准备法律摘要。ChatGPT引用了六个不存在的法院案件——完整的案号、法官姓名和法律推理。Schwartz在未核实的情况下提交了摘要。对方律师找不到任何这些案件。当法官询问时,Schwartz承认自己没有核实引文。他被法院处以罚款。
发生了什么: ChatGPT在训练数据中看到过无数法律引用的例子。当被要求提供相关案例时,它生成了看似合理的引文——因为这是统计上最可能的模式。它无法知道这些案件并不存在。
案例2:编造的产品描述
发生了什么: AI将其他产品描述中的模式(温度敏感条在其他产品中是真实存在的)与提示中的关键词组合起来。它用听起来合理但不存在的细节"填补"了描述。
案例3:编造的科学引用
研究人员记录了多个AI模型生成虚假学术引用的案例。2024年的一项研究发现,当LLM被要求总结特定主题的研究论文时,它们会编造不存在的论文,包含看似合理的标题、作者姓名和期刊名称——包括发表在真实期刊上但卷号和页码是编造的。
发生了什么: 模型学习了学术引用(作者、年份、标题、期刊、卷号、页码)的结构,并生成了符合该结构的文本。内容是编造的,因为模型没有真实论文的数据库——它只有引用长什么样的统计模式。
为什么会发生幻觉?
回到第1部分的核心机制:token预测。当你问"法国的首都是什么?"时,模型的训练数据包含"巴黎"跟在"法国的首都"之后数百万次的模式。"巴黎"的概率约为95%,所以答案是正确的。
但当你问一些看起来像事实问题但在数据中没有明确统计答案的问题时,模型不会说"我不知道"。它会生成它能想到的最听起来合理的序列。以下几个因素会增加幻觉风险:
- 冷门话题: 训练数据少意味着统计模式弱,因此模型会用合理的内容填补。
- 具体数字和日期: LLM在精确数字上表现糟糕,因为token预测不偏向算术精度。
- 近期事件: 如果事件发生在模型训练截止日期之后,模型无法知道——但它可能会编造一个听起来合理的答案,而不是承认不知道。
- 模糊的提示: 模糊的问题给了模型更多空间用编造的细节填补空白。
如何检测幻觉
技巧1:交叉验证。 将LLM的每个具体声明视为潜在编造,直到核实为止。日期、统计数据、引用和引文是最常被幻觉的内容。
技巧2:要求提供来源。 说"你能为这个说法提供具体来源吗?"如果模型提供引用,请独立验证。许多用户就是这样发现幻觉的。
技巧3:使用Perplexity进行事实查询。 Perplexity.ai 设计为基于网络搜索结果给出回答。它无法免疫幻觉,但包含可点击验证的引用。对于事实研究,Perplexity优于ChatGPT的独立知识。
技巧4:让模型自我批评。 一个已知技巧:在得到答案后,追问"你确定吗?再检查一下。"这有时会导致模型重新考虑高概率但不正确的token序列。
如何减少自己使用中的幻觉
这些技巧不会消除幻觉(没有任何方法可以),但能显著降低发生率:
- 提供上下文。 不要问"关键发现是什么?"而是说"基于我刚刚提供的记录,关键发现是什么?"让模型立足于提供的文本,减少对其统计猜测的依赖。
- 要求评估概率。 "请用1-10分评估你对这个答案的自信程度并解释原因。"当被明确问及自信度时,模型倾向于更加谨慎。
- 将复杂问题分解为步骤。 与其说"分析这份合同",不如说"首先列出所有提到的日期,然后分别总结每个条款。"分步骤指令减少了模型"填补"缺失上下文的需要。
- 使用检索增强生成(RAG)工具。 NotebookLM、Claude Projects或自定义GPTs等工具允许你上传文档,模型将其作为事实来源。当模型被限制在你的文档范围内时,幻觉大幅下降。
AI公司正在采取什么措施
行业正在积极解决这个问题。2026年的主要方法:
- 检索增强生成(RAG): 在生成答案之前,模型搜索知识库中的相关文档并用作上下文。这使回答基于经过验证的信息。每个主要AI平台现在都提供某种形式的RAG。
- 网络搜索接地: ChatGPT现在可以搜索网络,Google Gemini原生基于Google搜索进行回答。这意味着模型可以对照实时来源检查事实——但仅在明确启用搜索时有效。
- Constitutional AI和训练改进: Anthropic的Constitutional AI方法和改进的后训练技术减少了Claude相比早期模型的幻觉率。独立基准测试显示,Claude 3.5 Sonnet在事实问题上的幻觉率比GPT-3.5低约40-60%。
- 引用要求: 现代模型可以被提示从其上下文中引用来源,但这是权宜之计——引用本身也可能被幻觉。
实话实说: 幻觉无法从纯LLM中消除。生成新颖文本的机制与生成虚假文本的机制是同一个。解决方案是将LLM与外部工具(搜索、数据库、验证系统)相结合——而不是依赖模型的"知识"本身。
常见问题
问:Claude比ChatGPT的幻觉少吗?
在独立基准测试(如Vectara的幻觉排行榜和LMSYS评估)中,Claude 3.5 Sonnet和GPT-4o在事实任务上的幻觉率相当,Claude在摘要任务上略有优势。两者都比GPT-3.5或更早模型好得多。但没有任何模型是免疫的——你应该验证任何AI提供的关键信息。
问:我可以训练一个模型不在我的特定数据上产生幻觉吗?
可以,这叫做微调。如果你在你的领域有一组经过验证的问答对数据集,你可以微调模型使其在这些特定类型的问题上更准确。这不能消除领域外问题的幻觉,但可以显著提高你使用场景的准确性。LlamaFactory等工具和OpenAI的微调API使这变得可行,无需成为机器学习专家。
问:幻觉等同于软件bug吗?
不。软件bug是指代码没有按照设计做它应该做的事。幻觉是指模型完全按照设计做了它该做的事(预测最可能的token),但该行为从人类视角产生了错误的陈述。这是架构的特性,不是实现的缺陷。这就是为什么"修复"幻觉从根本上比修复普通软件bug更难。