☰
什么是幻觉(Hallucination)?在 Agent 场景下幻觉的后果为何比纯问答更严重?
2026/9/25 10:52:45 网站建设 项目流程

幻觉(Hallucination)

一、什么是幻觉

幻觉(Hallucination)指 LLM 生成看似流畅合理、但实际与事实不符或凭空捏造的内容。模型不是"知道自己不知道",而是"不知道自己不知道"——以高置信度的语气输出错误信息。

常见幻觉类型

类型说明示例
事实性幻觉编造不存在的事实、数据、引用引用不存在的论文、错误的 API 签名
忠实性幻觉与给定上下文/文档矛盾文档说 A,模型却说 B
工具幻觉调用不存在的函数、伪造参数调用一个没有定义的 API
逻辑幻觉推理链条看似通顺但结论错误数学推导中间跳步得错答案
代码幻觉生成能编译但逻辑错误的代码用不存在的库方法、错误的语法细节

幻觉的成因

  • 训练目标是"预测下一个最可能的词",而非"说真话"——概率上流畅 ≠ 事实正确
  • 训练数据本身含错误、过时信息
  • 模型缺乏"不确定性表达"能力,倾向于给出确定答案

二、为什么 Agent 场景下幻觉后果更严重

核心区别:纯问答是"输出",Agent 是"行动"

纯问答:幻觉 = 用户读到错误信息 → 用户自行判断,损失可控。
Agent:幻觉 = 错误的行动被执行 → 产生不可逆的真实后果。

1. 从"信息污染"升级为"行动污染"

纯问答:幻觉 → 错误答案展示给用户 → 用户判断(可拦截) Agent: 幻觉 → 错误计划/错误工具调用 → 执行真实操作 → 实际后果

Agent 会把幻觉直接转化为动作:

  • 幻觉出一个"文件路径" → 真实读写该文件
  • 幻觉出一个"API 调用" → 真实发起请求
  • 幻觉出一个"数据库查询" → 真实操作数据

2. 错误会被放大和传播(级联效应)

Agent 是多步循环,前一步的幻觉会作为后续步骤的"事实"输入:

  • 第 1 步幻觉出错误参数 → 第 2 步基于错误结果继续 → 第 3 步雪崩
  • 单步错误在单轮问答中是一次性损失,在 Agent 中是复利式放大

3. 后果不可逆

场景后果可逆性
纯问答回答错可纠正(重新问一次)
Agent 删了文件数据永久丢失
Agent 执行了转账/下单真实交易发生
Agent 提交了错误代码到仓库污染代码库
Agent 发送了错误邮件已送达收件人

4. 信任与安全风险

  • 用户基于对 Agent 的"自动化信任"放手,不逐步核对
  • 幻觉若涉及安全边界(权限、敏感操作),可能触发越权或数据泄露
  • 恶意用户可诱导 Agent 产生幻觉(幻觉注入攻击)

5. 难以事后追责

  • 多步自动执行中,很难定位是哪一步、哪个幻觉导致了最终错误
  • 行动已发生,"解释"无法挽回实际损失

三、Agent 场景下缓解幻觉的工程手段

手段说明
工具结果回传校验用真实工具返回值(而非模型自述)作为下一步依据
确定性验证代码跑测试、SQL 执行检查、数据断言
RAG 接地答案必须基于检索到的真实文档,降低自由发挥
关键操作人工确认删除、支付、提交等高危动作加人工卡点
多模型交叉/自洽性检查多次采样看是否一致,不一致则标记
限制自主权限沙箱隔离、最小权限、操作白名单
置信度/不确定表达让模型在不确定时声明,而非硬答
可回滚设计操作支持撤销、事务、备份

四、总结

幻觉是 LLM 以自信语气输出错误内容的固有缺陷。

在纯问答中,幻觉只是"说错话",用户可拦截;在 Agent 场景中,幻觉会被转化为真实行动,产生不可逆后果、在多步循环中级联放大、且难以事后追责——这正是 Agent 安全工程的核心挑战。

因此 Agent 的设计原则是**“不信任模型自述,只信真实反馈”**:用工具返回值、确定性验证、人工确认、沙箱隔离等手段,把幻觉的影响从"行动层"压回到"建议层"。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询