今天微信上全是 OpenAI Astra 模型的讨论,说 Astra 采用了 recurrent depth or looped transformer(循环深度/循环Transformer)。
乍一看,这似乎是个很有技术含量的突破。

但循环 Transformer 的核心,其实就是复用 Transformer 层。
以开源模型 Nanbeige 4.2-3B 为例:它把同一套 22 层的 Transformer 堆栈跑两遍,而不是只跑一遍。结果,原本 22 层的架构在效果上变成了 44 层,但权重并没有被复制一份。
好处很直观:
- 不增加模型体积和存储成本
- 用更多计算换取更深的推理能力
- 在固定参数预算下提升模型容量
简单理解:如果暂时忽略 embedding 和输出层,这相当于把模型有效规模大约翻了一倍。但因为复用了组件,存储和显存占用基本不变,仍然是原来的大小。代价是计算量接近翻倍——文本嵌入后要多跑几乎一倍的层数。
为什么只跑两遍?Nanbeige 4.2 技术报告里写得很清楚:两遍是最优权衡,能保留标准架构大约 75% 的 token 效率。再多跑几遍,收益几乎没有,训练却会慢很多、贵很多。
据我所知,Nanbeige 4.2 是目前第一个采用这种方法且有一定影响力的开源权重模型。但这个思路本身并不新,可以追溯到 NeurIPS 论文《Mixture-of-recursions: Learning dynamic recursive depths for adaptive token-level computation》。
那篇论文其实更进一步:它加了一个可学习的路由器,动态决定每个 token 要经过几遍(1 遍、2 遍或多遍)。简单 token 可以早退出,难 token 则多分配计算。
Astra 可能真的是个很强的模型,但这件事不该聚焦在“循环 Transformer”这个点上。它只是一个很小的架构调整,不是什么革命性突破。本质上,它就是把层拿来复用,和把模型直接做大、加深层数,在增加计算深度这件事上效果类似。
另外,有人把循环处理和隐藏思维链(Chain-of-Thought)强行挂钩,说这种技术会让模型的推理过程变得不可读。这并不成立。
复用层本身并不会压制可见的思维链。它只是在生成下一个 token 之前,在隐藏状态里多做了一些计算,这和普通 Transformer 多加几层本质上是一样的。
基于目前已有的信息,唯一说得通的解释是:如果模型使用了更多的循环次数,它可能不需要生成那么多中间推理 token,于是更多计算发生在无法直接读成文字的潜在激活里。
但请注意——如果我们只是简单把模型做大(比如从 GPT 5.6 Luna 升级到 GPT 5.6 Sol),其实也会得到同样的效果。
技术细节往往比标题更冷静。
|