什么是幻觉

一、简介

在大语言模型(LLM)的应用落地中,"幻觉"是目前面临的最大挑战之一。

简单来说,大模型的幻觉(Hallucination)是指模型生成了看似合理、通顺,但实际上与事实不符、逻辑错误或与其输入源不一致的内容。 也就是俗称的"一本正经地胡说八道"。

二、幻觉分类:"狭义"和"广义"

学术界和工业界对幻觉的定义略有不同,通常可以分为"狭义"和"广义"两个维度。

维度 定义 (Definition) 核心特征 典型示例
狭义幻觉 (Narrow Sense) 与世界知识冲突 (Factuality Issues) 模型生成的陈述与现实世界中已建立的事实相矛盾。 它主要关乎"真伪"。 问:"谁是《哈利波特》的作者? " 答:"是斯蒂芬·金。 " (事实性错误)
广义幻觉 (Broad Sense) 不忠实于输入或逻辑 (Faithfulness + Factuality) 不仅包含事实错误,还包含"不忠实"(Unfaithfulness)。 即模型生成的内容没有遵循用户的指令,或者与用户提供的上下文(Context)相矛盾。 用户给了一段新闻让模型总结。 模型总结时**凭空捏造**了新闻中没有提到的人名或数据。 (虽可能符合世界常识,但脱离了给定依据)

在广义幻觉中,我们常将其细分为两类:

  • 内在幻觉 (Intrinsic Hallucination): 生成的内容与输入源(Source Input)直接矛盾。 例如:文章说"张三是老师",模型总结说"张三是医生"。

  • 外在幻觉 (Extrinsic Hallucination): 生成的内容在输入源中找不到依据(既没说对也没说错,是模型自己"脑补"的)。 例如:文章只提到了苹果,模型总结时加了一句"香蕉也很好吃"。


三、为什么会产生幻觉?

在讨论解决方法前,简要理解其成因:

  1. 概率生成机制: LLM 本质上是基于概率预测下一个 token(词/字)。 它并不真正"理解"真理,只是在模仿训练数据中的语言模式。
  2. 数据源污染: 训练数据本身可能包含错误信息、过时信息或虚构小说。
  3. 知识边界模糊: 模型无法像人类一样清楚地知道"由于我不知道,所以我选择不回答",它倾向于强行生成一个回答。

四、缓解幻觉的方法与手段

缓解幻觉通常从数据训练阶段 (模型开发者视角)和推理应用阶段(使用者/应用开发者视角)两个方面入手。

A. 推理与应用阶段 (Prompt Engineering & Architecture)

这是目前应用开发中最常见、成本最低的手段。

  • RAG (检索增强生成, Retrieval-Augmented Generation):
    • 原理: 在提问前,先从外部知识库(向量数据库)中检索相关事实,将这些事实作为"上下文"喂给模型,强制模型"基于以下信息回答"。
      • 效果: 极大地减少了事实性错误(狭义幻觉),是目前最主流的企业级解决方案。
  • CoT (思维链, Chain of Thought):
    • 原理: 在 Prompt 中要求模型"一步步思考"(Let's think step by step)。
      • 效果: 通过展示推理过程,让模型在生成最终答案前先进行逻辑铺垫,能有效减少逻辑跳跃带来的幻觉。
  • CoVerify (自校验/多步推理):
    • 原理: 让模型先生成答案,然后让它(或另一个模型)作为"批评者"去检查这个答案是否有误,最后修正。
  • 调整采样参数 (Temperature):
    • 原理: 降低 (温度)参数(例如设为 0 或 0.1)。temperature
      • 效果: 让模型输出概率最高的词,减少创造性,从而降低"胡编乱造"的概率。

B. 模型训练阶段 (Training & Fine-tuning)

这是模型厂商(如 OpenAI, Google, 阿里等)侧重的手段:

  • 高质量数据清洗: 剔除预训练数据中的谣言、错误信息和低质量文本。

  • SFT (监督微调): 使用高质量的"指令-回复"对进行微调,教模型在不知道答案时承认"我不知道",而不是强行回答。

  • **RLHF (基于人类反馈的强化学习):**通过人类标注员对模型的回答进行打分(对幻觉进行惩罚,对真实回答进行奖励),训练奖励模型(Reward Model),引导模型对齐人类的事实标准。

  • 知识编辑 (Knowledge Editing): 直接定位并修改模型参数中存储的错误知识(目前仍是前沿研究领域)。


五、总结

  • 大模型幻觉 = 概率生成的副作用,表现为看似可信但内容错误。

  • 狭义 = 违背世界事实(瞎编知识)。

  • 广义 = 违背世界事实 + 违背上下文/指令(瞎编逻辑或不听话)。

  • 最有效的手段 = RAG(外挂知识库) + CoT(慢思考) + 低温度(低创造性)

相关推荐
组合缺一25 分钟前
Solon AI (Java) v3.9 正式发布:全能 Skill 爆发,Agent 协作更专业!仍然支持 java8!
java·人工智能·ai·llm·agent·solon·mcp
ASS-ASH17 小时前
AI时代之向量数据库概览
数据库·人工智能·python·llm·embedding·向量数据库·vlm
带刺的坐椅17 小时前
用 10 行 Java8 代码,开发一个自己的 ClaudeCodeCLI?你信吗?
java·ai·llm·agent·solon·mcp·claudecode·skills
aopstudio1 天前
OpenClaw 实测体验:Agent 框架现在到底能不能用?
人工智能·llm·agent·openclaw
千桐科技2 天前
qKnow 知识平台核心能力解析|第 03 期:结构化抽取能力全流程介绍
大模型·llm·知识图谱·知识库·rag·qknow·知识平台
CoderJia程序员甲2 天前
GitHub 热榜项目 - 日榜(2026-02-04)
开源·大模型·llm·github·ai教程
gr17852 天前
通过dify文件上传能力,解决较大文本与LLM实时交互问题
python·llm·aigc·dify
EdisonZhou3 天前
MAF快速入门(14)快速集成A2A Agent
llm·agent·.net core
gentle coder3 天前
【langchain】AI应用开发框架
langchain·llm·rag
doll ~CJ3 天前
Large Language Model(LLM)应用开发学习实践(三)
langchain·llm·提示词工程·ai应用