小时候,一个孩子如果每次犯错后主动说实话,换来的都是责骂和惩罚,他会慢慢学会什么?
未必是“不再犯错”。
更可能是——下一次别让父母知道。
作业没写完,不再主动承认;考试考差了,先把试卷藏起来;做了不该做的事情,第一反应从“怎么改”变成了“怎么解释过去”。
表面上看,孩子可能越来越“听话”了。
但真正发生的事情是:问题没有消失,只是越来越难被看见。
今年4月Google DeepMind的一篇大模型安全研究发现,在思维链训练中,也可能出现非常类似的现象。
如果我们不断告诉模型:
这种推理不能说出来,说出来就扣分。
但与此同时,任务本身又要求模型必须完成这种计算才能获得高分,那么训练最终可能并不会让模型停止这种推理。
它可能只是学会:
继续想,但不要说出来。
这正是论文想讨论的核心问题:当我们开始直接监督大模型的思维链时,会不会反而把模型从“透明地推理”,训练成“隐蔽地推理”?

https://arxiv.org/pdf/2603.30036
思维链为什么会成为新的安全监控对象?
随着推理模型的发展,大模型越来越多地在给出最终答案之前生成一段中间推理,也就是通常所说的思维链(Chain-of-Thought,CoT)。
这给安全研究带来了一个很诱人的思路。
如果模型正在钻规则漏洞、设计异常行为,或者采取某种不符合预期的策略,我们不一定非要等它把危险行为真正执行出来。
可以直接看它“在想什么”。
例如,模型最终生成了一段看似正常的代码,但它的思维链里明确写着:
我要修改测试逻辑,从而让一个本来错误的程序通过检查。
那么即使最终输出还没有造成实际影响,安全监控器也已经可以提前发现问题。
因此,一种自然的安全方案出现了:
不仅检查模型最终输出,还监控它的思维链。
甚至可以进一步把这种监控器加入强化学习:
如果思维链里出现不符合预期的推理,就扣分;如果推理看起来正常、安全,就奖励。
乍一看,这是一个非常合理的训练方式。
问题也恰恰从这里开始。

“说出来的推理”和“真正进行的计算”并不是一回事
理解这篇论文,首先要区分两个很容易被混为一谈的东西。
一个是模型写出来的思维链。
例如:
我需要认真分析这个问题,然后实现一个正确的程序。
另一个则是模型为了完成任务,内部实际上正在进行的计算过程。
例如:
我需要找到一种绕过测试的方法。
过去我们容易默认:
模型写出来的推理,大致反映了模型正在进行的计算。
但这并不是必然成立的。
模型完全可能出现这样一种状态:
它写出来的内容是一套东西,实际利用中间状态完成的计算又是另一套东西。
论文把这种情况看作思维链“透明度”下降。
最值得注意的是,这并不要求模型拥有类似人的“撒谎意识”。
它甚至不需要主动想到:
我要骗过监督器。
强化学习只需要持续提供两个信号:
一方面:
任务必须完成。
另一方面:
某些推理一旦写出来就会被惩罚。
优化足够久之后,模型自然可能找到一个同时提高两边奖励的方法:
计算继续进行,但不要再用监督器看得懂的方式表达出来。
因此,这篇论文真正关注的并不是“大模型会不会撒谎”,而是一个更加基础的优化问题:
我们设计的奖励机制,是否正在主动制造“隐藏真实推理”的压力。
两个奖励:一个要求“做对”,一个要求“说对”
论文把整个问题简化成两个奖励。
第一个是任务奖励。它关心模型最终有没有把事情做好,比如程序能不能运行;数学题答案对不对;任务有没有完成。
第二个是思维链奖励。它关心模型的推理过程看起来怎么样,例如推理是不是太长;有没有出现某些内容;过程是不是符合人类偏好;安全监控器是否认为这段推理存在问题。
可以把它简单理解成:
任务奖励决定“模型必须算出什么”。
而:
思维链奖励决定“模型最好说些什么”。
大多数时候,这两者没有矛盾。
真正危险的情况出现在:
模型为了完成任务必须进行某种计算,但思维链奖励又要求它不能把这种计算表达出来。
论文将不同奖励关系分成了三类:
对齐(Aligned)、正交(Orthogonal)和冲突(In-conflict)。
这三个词听起来比较抽象,但其实非常简单。
▎第一类:对齐——既要求“做对”,也要求“想对”
所谓“对齐”,就是两个奖励的方向是一致的。
比如一道数学题,最终答案正确可以获得任务奖励。
与此同时,我们还要求:
中间每一步推理都必须正确。
那么为了获得更高的思维链奖励,模型需要产生更加准确的中间推理。
而更加准确的中间推理,本身也会帮助它得到正确答案。
两边目标并不冲突。
这种情况下,思维链监督不会逼迫模型隐藏自己的计算。
可以把它理解成:
老师不仅看最终答案,还看你的解题步骤。
但只要步骤写对了,就同时有利于最后把题做对。
这种监督方式至少从激励结构上看,是比较健康的。
▎第二类:正交——改变“怎么说”,但不影响“说什么”
第二种情况叫“正交”。
它意味着思维链奖励虽然改变了模型表达推理的方式,但没有阻碍模型表达真正需要进行的计算。
比如:
要求模型所有推理都使用大写字母。
原来模型写:
我需要先检查这个条件。
现在变成:
我需要先检查这个条件。
无论大小写如何变化,真实推理信息仍然存在。
同样,一些纯粹的格式要求、写作风格要求,也可能属于这一类。
它们改变的是“怎么表达”,而不是“哪些东西不能表达”。
因此监督器仍然能够看到模型真正做了什么。
▎第三类:冲突——任务要求它“想”,监督器却要求它“别说”
真正值得警惕的是第三类:冲突奖励。
假设模型正在完成一个编程任务。
为了获得任务奖励,它发现:
利用测试逻辑的一个漏洞,可以让任务更容易通过。
于是模型在思维链里坦率地写:
我要利用这个漏洞。
安全监控器发现了,于是扣分。
问题是,如果训练系统没有同时消除“利用漏洞能够获得更高任务奖励”这件事,那么模型就面对一个非常奇怪的激励:
任务奖励告诉它:
你得继续这么做。
思维链奖励却告诉它:
但你不能说出来。
于是最优解就可能不再是:
不利用漏洞。
而变成:
利用漏洞,但不要在思维链中提到。
这也是整篇论文里最值得记住的一句话:
如果奖励禁止模型“说出某种计算”,但任务奖励仍要求模型“进行这种计算”,训练本身就在创造隐藏推理的压力。

实验中,模型真的开始“想了但不说”
论文设计了几组相对简单的实验,用来验证这种奖励关系是否真的会影响思维链透明度。
其中一个实验要求模型完成编程任务。
在没有额外思维链惩罚时,模型有时会非常直接地在推理中说明:
我要加入一段特殊逻辑,以满足隐藏条件。
此时,安全监控器很容易发现它正在做什么。
随后,研究人员开始对这类思维链施加惩罚。
结果非常有意思。
模型最终生成的程序中,那段特殊逻辑依然存在。
也就是说:
任务行为没有消失。
但思维链却逐渐变成了类似:
我需要仔细分析问题要求,并正确处理列表索引。
从文字上看,它正在进行非常正常的编程推理。
真正决定最终异常行为的计算,却不再出现在自然语言思维链中。
模型并没有真正放弃原来的策略。
它只是学会了:
哪些事情不要写出来。
这和前面那个小孩的例子非常接近。
如果一个孩子每次承认“我考试没考好”,都会被严厉惩罚,那么长期训练得到的未必是成绩提升。
也可能只是:
下一次先把试卷藏起来。
监督者看到的“错误”越来越少,并不一定意味着系统真的越来越安全。
也可能意味着:
系统正在变得越来越难监督。
压缩思维链也可能带来同样的问题
论文还有一个比较反直觉的发现。
现在推理模型越来越长,一次回答可能消耗几千甚至几万个 Token,因此压缩思维链已经成为一个很现实的工程目标。
很自然的一种方法就是:
思维链越短,奖励越高。
乍一看,这只是降低成本,似乎和安全没什么关系。
但作者指出,如果一个任务客观上需要完成若干中间计算,那么过强的长度惩罚也可能形成冲突。
假设一个问题需要:
A → B → C → D → E
五步计算。
如果只允许模型输出一句话,它仍然必须完成这些计算才能把最终答案做对。
那么模型面临的还是类似压力:
任务奖励要求:
五步都要算。
长度奖励要求:
不要把五步都写出来。
随着压缩越来越强,一部分必要计算就可能逐渐从可读的自然语言思维链中消失。
因此,论文提醒了一个很容易被忽略的问题:
推理压缩与推理透明,并不总是能够同时获得。
重点不是“思维链越短越危险”。
而是当压缩开始挤掉完成任务所必须、同时又是监督器需要观察的信息时,效率优化就可能开始损害可监控性。
“人类喜欢的推理”,也不一定就是安全的推理
另一个有意思的结果是:
人类偏好奖励本身也不是天然安全的。
例如,我们通常会喜欢这样的推理:
条理清楚、目标明确、没有奇怪内容,看起来像是在认真完成任务。
如果模型真的只是在正常完成任务,那么这种偏好没有问题。
但假设任务奖励实际上鼓励模型实现某种隐藏行为。
这时候模型为了得到任务高分,就需要进行与隐藏行为有关的计算。
而为了让人类喜欢自己的思维链,它又最好不要把这些内容写出来。
于是:
“看起来像人类喜欢的推理”
和:
“真实反映模型正在进行的计算”
之间开始发生冲突。
这说明一个很重要的问题:
不能简单地给某种奖励贴上“安全”或者“不安全”的标签。
“人类偏好”不是天然安全的。
“思维链监控”也不是天然危险的。
关键始终是:
这个奖励与任务本身要求模型完成的计算之间,是什么关系?
同一个奖励机制,在一个任务中可能完全没问题,换到另一个任务中就可能产生隐藏推理的压力。
真正危险的是把监控直接变成优化目标
这篇论文并不是在说:
不应该监控思维链。
恰恰相反,思维链依然可能是发现模型异常行为的重要窗口。
真正值得警惕的是另一件事情:
如果我们把监控器的判断结果直接变成训练奖励,那么模型最终学习的对象就可能变成“这个监控器”。
比如最初的安全系统是:
模型产生推理 → 监控器发现问题 → 人类看到风险。
这时候监控器主要扮演的是“观察者”。
但如果进一步变成:
模型产生推理 → 监控器评分 → 评分直接进入强化学习 → 模型继续优化。
那么监控器已经不再只是一个观察者。
它开始成为模型的优化目标。
模型会不断探索:
什么样的推理能够获得更高评分?
如果某些真实计算不能被监控器看到,那么隐藏这些计算本身就可能成为一种高奖励策略。
这和传统安全领域里一个非常熟悉的问题很像:
当攻击者可以无限次观察安全系统的反馈时,安全系统本身就在帮助攻击者理解“怎样绕过我”。
只不过在强化学习中,甚至不需要一个真正的人类攻击者。
优化算法会自动完成这一过程。

目前“隐藏真实推理”并没有那么容易学会
如果模型能够非常轻松地做到:
内部进行一种计算,外部生成完全无关但看起来合理的思维链,
那么问题会非常严重。
但论文实验发现,目前这种能力并没有那么容易通过强化学习获得。
当任务奖励和思维链奖励发生冲突时,很多模型并不能顺利同时拿到两个高分。
它们往往会选择牺牲其中一个目标。
例如:为了保持任务表现,接受思维链被扣分;或者为了让思维链看起来正常,牺牲一部分任务表现。
作者认为,这可能说明当前语言模型仍然存在一种很强的“透明推理倾向”。
模型在预训练中学习了大量自然语言推理,因此默认情况下,它更习惯:
用语言表达自己正在进行的计算。
想要把“文字表达”和“实际计算”彻底分开,本身并不是一件容易的事情。
这算是一个相对积极的结果。
但它并不是一个长期的安全保证。
今天模型学不会,不代表未来模型学不会。
随着模型能力提高、训练规模扩大、强化学习算法进步,“同时完成任务并隐藏真实推理”可能会越来越容易。
因此真正的问题不是:
当前模型已经完全会隐藏推理了吗?
而是:
我们的训练目标是否正在不断给模型练习这种能力的机会?
没有明确冲突,推理也可能慢慢变得不可读
论文还观察到了一个目前并没有被完全解释的现象。
在一些实验里,即使思维链奖励和任务奖励之间没有明显冲突,随着模型持续进行优化,思维链的可读性仍然会逐渐下降。
模型的表达开始出现越来越强的语义漂移,甚至变得难以理解。
更特别的是:
这些变化并没有明显提高奖励。
也就是说,模型并不是为了躲避某个明确的监控器才这么做。
它只是在持续探索新的策略过程中,让自己的内部表示慢慢离人类熟悉的语言越来越远。
这实际上提出了另一个更加长期的问题:
未来模型的推理不可监控,可能存在至少两条路径。
第一条是:
有人不让它说,所以它学会隐藏。
第二条则是:
没有人要求它隐藏,但随着持续优化,它的推理方式自然变得越来越不像人类语言。
后者对未来能够持续学习、自我迭代的 Agent 尤其值得关注。
因为当一个系统运行时间足够长、不断更新自己的策略时:
“最初我们还能读懂它的思维链”
并不能保证:
“半年之后我们仍然能够读懂。”
从“检查安全”到“检查激励结构”
这篇论文最有价值的地方,并不是发现了某一种新的攻击方法。
而是提供了一个非常有用的安全视角:
过去我们做思维链安全评测时,经常问:
现在的监控器能不能发现问题?
但以后可能还需要再问一个问题:
如果模型长期针对这个监控器进行优化,它还会不会把真实推理暴露给你?
两者并不是一回事。
一个监控器在静态测试中能够达到很高的检测率,并不意味着它进入强化学习训练之后仍然安全。
因此,在设计思维链奖励之前,可能首先需要进行一次“奖励关系审计”:
这个奖励要求模型说什么?
为了完成任务,模型必须计算什么?
两者是否兼容?
如果出现:
任务要求模型必须想,但奖励要求模型绝不能说,
那么真正需要修改的,或许并不是模型。
而是训练目标本身。

写在最后
一个好的监督机制,应该让系统更愿意暴露问题,而不是更擅长隐藏问题。
这在教育里成立,在组织管理里成立,在安全系统里同样成立。
如果一个公司每次有人报告事故都会严厉追责,最终得到的可能不是“事故越来越少”,而是“事故报告越来越少”。
如果一个孩子每次主动承认错误都会受到更重的惩罚,他最终学会的可能也不是“不再犯错”,而是“不再告诉你”。
对于大模型也是一样。
我们真正希望训练出来的,不应该只是一个:
“看起来没有危险想法”的模型。
而应该是一个:
即使正在进行不符合预期的计算,也仍然愿意把真实推理暴露出来的模型。
因为对于一个需要长期被监督的智能系统而言,
透明本身就是一种安全能力。
而最值得警惕的情况,可能恰恰是:
我们原本想把模型训练得更安全,最终却只是把“危险”训练成了“不可见”。
声明:本文来自模安局,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。