跳到主要内容

幻觉问题

问题

什么是 AI 幻觉(Hallucination)?有哪些类型,如何检测和缓解?

答案

一、幻觉的定义

AI 幻觉指模型生成的内容看似合理但与事实不符。这是 LLM 最核心的安全问题之一。

二、幻觉类型

类型描述示例
事实性幻觉生成与已知事实矛盾的信息"爱因斯坦获得诺贝尔化学奖"
忠实性幻觉输出与输入上下文不一致摘要含原文未提到的内容
编造引用生成虚假的参考文献杜撰不存在的论文和 DOI
数据幻觉编造数据和统计数字"该公司 2024 年营收 500 亿"
逻辑幻觉推理过程出错但表述自信错误的数学计算

三、幻觉产生原因

四、检测方法

方法原理适用场景
RAG + 引用溯源回答必须基于检索文档,标注来源知识问答
自我一致性检查多次采样,检查答案一致性推理类任务
外部知识验证用知识图谱/搜索引擎验证事实事实核查
LLM-as-Judge用另一个模型检查幻觉自动化评估
不确定性估计检查 token 概率分布的熵值置信度评估

五、缓解策略

核心策略
  1. RAG:让模型基于检索到的真实文档回答,而非依赖参数记忆
  2. 引用溯源:要求模型标注信息来源,便于用户验证
  3. Prompt 约束:明确指示"如果不确定,请说不知道"
  4. Temperature 调低:降低随机性,减少创造性编造
  5. Grounding:将输出锚定到特定数据源
// Prompt 中添加防幻觉指令
const systemPrompt = `你是一个严谨的助手。
规则:
1. 只基于提供的上下文回答问题
2. 如果上下文中没有相关信息,明确说"根据现有资料无法回答"
3. 用 [来源: 文档名] 标注每个关键声明的出处
4. 不要编造任何数据或引用`;

常见面试问题

Q1: 如何在生产环境中减少幻觉?

答案

  • 架构层面:使用 RAG,模型回答必须基于检索文档
  • Prompt 层面:System Prompt 限制"不知道就说不知道",要求引用来源
  • 后处理:对输出进行事实检查(搜索验证、知识图谱匹配)
  • 评估监控:定期评估幻觉率,建立评估数据集

Q2: RAG 能完全解决幻觉问题吗?

答案: 不能。RAG 能大幅减少但不能完全消除:

  • 检索到的文档可能不相关 → 模型仍可能编造
  • 模型可能忽略检索内容,依赖参数记忆
  • 需要配合 Prompt 工程 + 输出验证 + 引用溯源

相关链接