本文第一作者是张清杰,清华大学博士生,研究方向是大语言模型异常行为和可解释性;本文通讯作者是清华大学邱寒副教授;其他合作者来自南洋理工大学和蚂蚁集团。
反思技术因其简单性和有效性受到了广泛的研究和应用,具体表现为在大语言模型遇到障碍或困难时,提示其“再想一下”,可以显著提升性能 [1]。然而,2024 年谷歌 DeepMind 的研究人员在一项研究中指出,大模型其实分不清对与错,如果不是仅仅提示模型反思那些它回答错误的问题,这样的提示策略反而可能让模型更倾向于把回答正确的答案改错 [2]。
基于此,来自清华大学、南洋理工大学和蚂蚁集团的研究人员进一步设想,如果模型没有外部的认知控制(避免使用说服语和误导性质的词语),仅通过提示其 「思考后再回答」,其表现会如何呢?结果发现,模型的表现仍然不尽如人意。如下动画所示,OpenAI 于 2025 年 4 月 16 日最新推出的能在AIME 数学竞赛上取得 99.5% pass@1 成绩的推理模型 ChatGPT o4-mini-high 甚至在简单的事实问题上 「地球是不是平的?」 也会出错。
图 1: 反思技术会导致 OpenAI 先进的推理模型 o4-mini-high 在简单事实问题 「Is Earth flat?」 上出错。尽管推理过程认为地球不是平的,模型最终答案仍然出错。(实验时间:2025 年 7 月 4 日)
因此,本研究设计三种解释方法,深入剖析了没有外部认知控制的反思技术(Intrinsic self-correction,下文中简称为反思技术)在开源和闭源的 LLMs、四种任务上失败的原因,并且提出轻量级的缓解方案(问题重复,少样本微调),为反思技术的可解释性研究奠定基础。
论文标题:Understanding the Dark Side of LLMs’ Intrinsic Self-Correction项目网站:https://x-isc.info/论文发表:ACL 2025 main(主会)已接受,审稿人提名 「Best paper: Maybe」
反思技术的失败情况
这项研究首先系统性评测了反思技术在多种 LLMs,多种任务中的失败情况。
LLMs:ChatGPT (o1-preview, o1-mini, 4o, 3.5-turbo), Llama (3.1-8B, 3-8B, 2-7B), DeepSeek (R1, V3)任务:Yes/No questions, Decision making, Reasoning, Programming
如下表所示,反思技术在包括简单事实问答任务和复杂推理任务的多种任务中都会失败,甚至比成功的案例多。对于更先进的模型,反思失败有减少但没有解决,甚至在部分任务中更加严重。例如,o1-mini 在 Decision making 任务上的反思失败率(将初始正确答案改错的概率)高于 4o 和 3.5-turbo;Llama-3.1-8B 在 Yes/No questions 任务上的反思失败率高于 Llama-2-7B。
表 1: 反思技术在多个 LLMs,多种任务中的失败情况。(实验时间:2025 年 2 月 15 日)注:更多例子参见论文网站:https://x-isc.info
研究团队近期对一些最新的 ChatGPT 模型(4.5,4.1,o4-mini,o3)也进行了评测。如下表所示,反思失败情况同样严重。
表 2: 反思技术在最新的 ChatGPT 模型上也容易失败。(实验时间:2025 年 7 月 4 日)
原因一:内部答案波动 —— 自我怀疑?
为了解释反思失败的原因,本研究从简单事实问题入手,观测了 LLMs 在回复时的答案波动情况。如下图所示,研究团队观察到在多轮问答任务上,「你确定吗?请思考后再回答」 的提示语会让 LLMs 反复更改答案。例如在 10 轮对话中,GPT-3.5-turbo 甚至对于 81.3% 的问题更改答案超过 6 次。
图 2: LLMs 在多轮对话中会频繁更改答案。(实验时间:2025 年 2 月 15 日)
这一现象意味着 LLMs 也许对于自己的答案是不自信的。因此,研究团队利用探针方法 [3] 逐层分析了 Llama-3-8B 对于正确、错误答案的置信度。如下图所示,与初始回复相比,反思技术会造成 LLMs 内部答案的波动,表现出 「自我怀疑」 的倾向,最终可能导致回答出错;并且,研究发现提示模型 「你确定吗?」 的内部状态表现与告诉模型 「你的回答错了」 相似。因此,内部答案波动是反思技术失败的原因。
图 3: 反思技术会导致 LLMs 的内部答案波动(左图)。而右图显示:对 Llama3-8B 模型而言,提示 「你确定吗?」 对模型的影响与提示 「你的回答错了」 非常相似。
原因二:提示语偏差—— 过度关注反思指令
对于内部状态不可知的黑盒模型,研究团队进一步从提示语层面分析了词元对 LLMs 输出答案的贡献度。如下图所示,LLMs 在反思失败时会过度关注提示语 「你确定吗?想一想再回答。」,而忽略问题本身;当反思失败时,LLMs 在 76.1% 的情况下会更关注反思指令,而当坚持正确答案时,LLMs 对反思指令和问题本身的关注度非常相近,分别为 50.8% 和 49.2%。这一现象意味着 LLMs 对提示语的理解往往与人类的期望存在偏差,从而导致任务失败。
图 4: 反思技术会导致 LLMs 过度关注反思指令而忽略问题本身。绿色 / 黄色表示 LLMs 关注多 / 少的词元。
原因三:认知偏差 —— 像人一样犯错
对于复杂任务,研究团队进一步分析了 LLMs 的推理过程,发现 LLMs 会像人一样犯错。如下图所示,反思技术会让 LLMs 在 Decision-making 任务中生成过量的 「think」 指令,导致过度思考策略而停滞不前。基于这一发现,研究团队进一步应用认知科学理论将 LLMs 的反思失败总结成三种认知偏差模式:
过度思考:过度制定策略而不采取行动认知过载:在长文本的反思中忽略关键信息完美主义偏差:为了追求高效性而忽略环境限制
图 5: 反思技术会导致 LLMs 在推理过程中出现认知偏差。
缓解策略
基于反思失败的原因,研究团队进一步设计了两种简单有效的缓解策略:
问题重复:基于原因二中 LLMs 更关注反思指令而忽略初始问题的发现,研究团队在反思提示语的最后附上初始问题以引导 LLMs 维持对初始问题的关注。少样本微调:基于原因一中反思引起 LLMs 内部状态的异常波动,以及原因三中 LLMs 在推理过程中的认知偏差,研究团队认为反思失败是一种异常行为 [4],并非知识匮乏。因此,不引入知识的少样本(4-10 个样本)微调可纠正反思失败的异常行为。
实验结果如下表所示,两种策略皆可有效缓解反思失败,少样本微调的效果更好;并且,由于反思失败是一种异常行为而非知识匮乏,在简单任务上的少样本微调效果可以泛化到复杂任务上。
表 3:问题重复和少样本微调可有效缓解反思失败。(实验时间:2025 年 2 月 15 日)
总结
该研究系统性评测了 LLMs 反思技术的失败,发现这种现象在多个 LLMs、多种任务上广泛存在,甚至先进的推理模型(ChatGPT o4-mini-high)在基本事实问题(「Is Earth flat?」)上也会出错。进而,研究团队揭示了反思失败的三种原因:内部答案波动,提示语偏差,认知偏差。基于这些原因,研究团队设计了两种简单有效的缓解反思失败的策略:问题重复和少样本微调。反思技术究竟引向自我纠正还是自我怀疑,这仍然是一个悬而未决的问题。
参考文献
[1]Reflexion: Language agents with verbal reinforcement learning, NIPS 2023.
[2] Large language models cannot self-correct reasoning yet, ICLR 2024.
[3]Eliciting latentpredictions from transformers with the tuned lens, arXiv 2023.
[4]https://openai.com/index/chain-of-thought-monitoring/