模型幻觉
模型幻觉指生成内容与事实、给定依据或实际执行状态不符的现象。回答即使表达流畅,事实仍需核验。本文先区分应用中常见的失败类型,再解释成因。随后按输入、输出和业务操作三个环节,说明怎样补充证据、校验结果和处理异常。
1. 面试核心
先记住这几条,再读正文- 幻觉类型。 事实性幻觉要核对原始资料,忠实性幻觉要核对给定依据,行动幻觉要核对调用与业务状态。卡 · 类型与成因
- 生成与事实核验。 语言建模训练优化文本预测,模型生成的事实仍需要用原始资料或业务数据核验。卡 · 类型与成因
- RAG 与引用校验。 RAG 通过检索提供依据,引用校验检查答案与依据的关系。卡 · 分层缓解
- 行动结果。 业务操作是否完成,以工具返回和实际状态为准。模型声称已执行,不能代替订单、退款或文件等真实结果。卡 · 综合题
- 忠实度与正确性。 忠实度衡量回答是否得到给定依据支持,事实正确性还取决于依据本身是否正确且适用。卡 · 忠实度与事实正确性
2. 类型与成因
定位幻觉时,先明确回答与什么发生了冲突。与外部事实冲突,称为事实性幻觉;与给定文档或指令冲突,称为忠实性幻觉。虚构工具、参数或执行结果,则属于行动幻觉。下表按失败对象细分,类别之间存在重叠。
| 失败对象 | 示例 | 核验对象 |
|---|---|---|
| 外部事实 | 编造论文、API、法规条款或日期 | 原始资料与当前版本 |
| 给定文档 | 摘要添加原文没有的金额 | 原文及对应段落 |
| 指令执行 | 声称遵守约束,实际遗漏条件 | 约束与产物 |
| 工具行动 | 声称退款成功或已发送邮件,实际没有执行 | 调用记录与业务状态 |
预训练通过预测后文,让模型学习文本的统计规律。训练数据中的罕见事实、过时信息和错误记录,都会影响它生成的答案。如果评测只奖励答对、不给合理弃答得分,模型就更倾向于猜测。后续训练可以奖励诚实表达和拒答,提示也应允许模型说明不知道。
应用中的问题会进一步放大错误,常见的有以下三类原因:
- 证据缺失或受到干扰:上下文缺少依据时,模型会用训练中学到的知识补全。长文档中的无关内容又会干扰提取,导致原文条件被遗漏或覆盖。
- 约束遗漏:关键要求位于长上下文中间,或在压缩历史时被删去,后续回答就会遗漏限制。比如,摘要丢了“仅限工作日”,模型安排日期时便失去了这项依据。
- 工具与参数不清楚:工具过多、描述相似时,模型更难选对工具。参数缺少来源约束、执行后缺少核验时,也容易出现编造订单号或虚报完成的情况。
用户表达不明确时,模型还会用看起来合理的默认值补全。比如,用户没说日期,系统却默认今天。日期、订单号等必填信息应由程序检查,缺失时向用户追问,再继续执行。
3. 分层缓解
控制幻觉需要同时提供依据、约束回答并校验业务结果。下面按处理顺序说明各环节解决什么问题,以及检查失败后怎样处理。
3.1 输入证据与拒答
模型回答事实问题前,需要拿到当前问题所需的证据。外部知识可以通过检索文档补入,精确金额和业务状态则通过授权工具获取。
文档检索与生成的完整流程见检索增强生成(RAG)。
提示应明确规定:依据不足时,说明无法确认,并列出缺少的信息。还可以约定拒答的输出格式,方便程序识别。这样,系统遇到证据不足的情况时,就有明确的处理方式。
输入只保留与任务相关的文档,把关键约束放在容易定位的区域,并验证位置调整后的效果。长上下文中的排序与取舍见上下文管理。
RAG 出错时,先检查正确证据是否进入最终上下文。即使粗召回命中,证据仍会在重排或截断时丢失。缺少证据时,针对对应环节调整查询、混合检索或重排;无关片段过多时,再评估相关度过滤。证据完整进入后,才重点检查生成是否忠实使用了证据。
具体指标与排查方法见 RAG 评估。
3.2 输出约束与事实校验
要求模型给出引用,可以把答案中的结论与原文对应起来,方便逐条核验。引用应定位到具体文档和段落。程序先检查来源是否存在,再核对该段落是否支持结论。引用编号有效,只说明目标存在,还要继续检查内容。
结构化输出把回答组织成可检查的字段与类型,比如日期、金额和订单号。具体方法见提示词工程。
格式通过校验后,还需要完成以下内容核验:
- 将数字、日期、标识符和专有名词与原始数据对照,确认没有被改写或补造。
- 检查工具参数是否来自用户输入、已验证的上下文或工具结果,确认每个必填值都有来源。
- 把回答拆成独立陈述,逐条核对文档能否支持。缺少支持的句子应删除或重新生成,再检查一次。
第三类检查可以交给另一次模型调用,但关键结论仍要抽样人工复核。评审模型也会误判,所以它的判断需要人工校准。
事实抽取、分类任务可以从较低 temperature 开始评测,以减少采样随机性。不过,降低温度无法补充缺失知识,事实仍需核验。
参数作用见大语言模型基础。
工具动作是否完成,要以调用记录、工具返回和实际业务状态为准。比如,模型说退款成功后,程序仍应查询退款记录,确认操作确实生效。
3.3 业务风险与兜底
校验发现问题后,系统要根据操作风险决定是否继续执行。只读查询可以返回已核验的来源;修改数据、对外发送、涉及资金或不可逆的操作,则按业务授权规则处理。需要用户确认时,应先展示将执行的具体内容,确认后再执行。
判断回答是否足够可靠,可以组合以下可观测信号:
- 检索分数是否低于已校准的阈值,以及引用是否确实支持结论。
- 结构化字段是否通过校验,必填参数是否来自用户或工具结果。
- 模型自检或多次采样是否给出一致的结论。
这些信号衡量的对象不同,也都存在局限。模型自报分数和多次回答一致性,不能直接当作事实正确的概率。阈值应在人工标注数据上校准,再同时统计错误放行率与误拒率。前者衡量错误结果被允许继续处理的比例,后者衡量有效请求被错误拒绝的比例。
信息缺失时先追问,证据不足时拒答,冲突无法解决时转人工。异常触发降级后,可以暂停自动操作,只给建议,或由人工接管。这样能在继续调查时控制错误影响。
线上记录输入、证据版本、输出、校验结果和工具状态,敏感字段脱敏并限制日志访问。监控校验失败率、用户纠错和人工接管,并为异常设置告警。失败样例加入回归集,再按影响严重程度安排修复。
4. 忠实度与事实正确性
忠实度检查回答是否得到给定文档支持,事实正确性检查结论是否符合真实情况。区分这两项,是为了发现“引用准确,但依据已经过期”的错误。
例如,旧制度写着“报销上限为 500 元”,新制度把上限改为 800 元。回答准确引用旧制度的 500 元,仍会造成业务错误。因此,校验还要检查文档的版本、生效时间和适用范围:
- 确认引用的是当前应使用的版本。
- 核对生效时间是否覆盖本次业务日期。
- 检查制度是否适用于当前部门、人员或业务类型。
多个模型也会共享同一种错误,所以答案一致只能作为辅助信号。核验时应增加独立证据,例如权威原文或业务查询结果。遇到相互矛盾的文档,先确认版本和适用对象。仍无法判断时,明确列出冲突,再请求补充信息。
5 · 面试题卡片
本页题目与参考回答
5.1 什么是大模型幻觉?有哪些方法可以减少或避免?
考察重点:能解释不同幻觉的成因,并说明证据、输出约束和业务校验分别解决什么问题。
参考回答
幻觉指生成内容与事实、给定依据或实际执行状态不符的现象。
事实性幻觉需要核对外部事实,忠实性幻觉需要核对文档与指令,行动幻觉则要核对工具和业务状态。模型学习的是文本预测规律,数据缺失、过时和上下文干扰都会增加出错风险。训练与评测可以奖励合理弃答,让模型更愿意说明无法确认。
缓解要覆盖输入、生成、输出和业务操作四个环节:
- 输入侧通过 RAG 或工具补充可信证据,并允许信息不足时拒答。
- 生成侧要求段落引用和结构化字段,事实抽取可用低温度减少随机性。
- 输出侧核对引用、数字和参数来源,并检查每条陈述是否有依据。
- 业务侧检查授权和实际执行结果,再按风险决定追问、确认或转人工。
这些措施用于发现错误并控制影响,上线后仍需持续评估和记录失败样例。
5.2 RAG 系统中的幻觉怎样处理?生成阶段怎样控制幻觉?
考察重点:能区分检索缺少证据与生成误用证据,并说明拒答、引用和忠实度检查的作用。
参考回答
RAG 中的幻觉要先区分检索缺少证据与生成误用证据,再修复对应环节。
先沿粗召回、重排和截断记录,确认正确文档是否进入最终上下文。缺少证据时,调整对应的查询或检索环节;无关结果过多时,比较重排与相关度过滤的效果。证据完整时,则检查提示约束与答案是否得到原文支持。
生成时规定依据不足就使用明确的拒答格式,并要求每个结论附上段落引用。程序核对引用编号、数字、实体和支持关系。必要时用另一次调用逐条核验,删除或重新生成缺少支持的句子,再抽样人工复核。评估分别统计检索质量、忠实度、答案相关性与正确率,才能判断改进发生在哪一层。
5.3 项目中遇到过幻觉吗?上线后幻觉导致业务出错,怎样兜底?置信度怎样判断,什么情况需要用户确认?
题型:综合题
考察重点:能说明置信信号的局限,并结合业务授权、信息完整性和执行状态设计兜底。
参考回答
业务兜底要结合证据校验、授权规则和实际执行状态,置信分数只作为辅助信号。
先检查引用是否支持结论、结构化字段是否有效,以及必填参数是否来自用户或工具结果。再结合检索分数和多次回答一致性,用人工标注数据校准阈值。信息缺失时追问,证据冲突时转人工,避免用猜测的默认值执行操作。
需要确认的资金或不可逆操作,应展示具体内容并按授权规则确认。执行后再查询业务状态,核对是否完成。上线后监控校验失败、错误放行、误拒、用户纠错和人工接管。异常时告警并暂停自动执行,保留证据后把失败样例加入回归集。
项目经历部分应使用自己的真实案例,说明现象、定位证据、修复措施和回归结果。
5.4 回答忠实于检索到的文档,为什么仍会出错?
考察重点:能解释依据过期或冲突时为何仍会答错,并说明怎样用独立证据核验。
相关内容:忠实度与事实正确性。
参考回答
依据本身过期、有误或不适用时,忠实复述仍会给出错误答案。
比如,旧制度的报销上限是 500 元,新制度已改为 800 元。准确引用旧金额只能说明忠实于旧文档,当前业务仍要使用有效制度。因此,核验必须覆盖版本、生效时间和适用范围。
多个模型给出相同答案,也会共享同一种错误。权威原文或业务查询能提供独立证据;来源冲突仍无法解决时,应列出冲突并请求补充信息。