The Recurrent Transformer:Greater Effective Depth and Efficient Decoding——循环Transformer:更大的有效深度与高效解码

发布时间:2026/8/21 11:23:18
The Recurrent Transformer:Greater Effective Depth and Efficient Decoding——循环Transformer:更大的有效深度与高效解码 一、研究动机与问题背景核心问题标准Transformer虽然并行处理能力强但在时间维度上是“浅层”的——每层中任意两个位置之间最多只有一次交互模型的“有效深度”被层数所限。而循环模型RNN/SSM虽然具有无界的时间深度但存在训练不稳定、难以利用现代加速器等问题。本文目标设计一种新架构兼具Transformer的并行效率和循环模型的深度表达能力同时保持训练稳定和推理高效。二、核心创新循环TransformerRT2.1 关键架构改变标准Transformer中位置 i 的键值对 (kᵢ, vᵢ) 是根据该位置的层输入xᵢ 计算的供后续位置使用。循环Transformer的改变是位置 i 的持久键值对 (kᵢ, vᵢ) 是根据该位置的层输出zᵢ 计算的。这意味着后续位置关注的是一个已经过该层注意力和MLP处理过的表示。2.2 临时 vs 持久键值对由于存在循环依赖zᵢ 的计算依赖于 aᵢ而 aᵢ 又需要 kᵢ架构区分两类键值对临时键值对根据层输入 xᵢ 计算仅在计算当前位置注意力时使用持久键值对根据层输出 zᵢ 计算存储后供所有未来位置使用这种层级循环每层独立维护自己的KV记忆与反馈Transformer跨层共享记忆形成关键区别。三、理论贡献3.1 表示能力第3节定理1非正式任何宽度为 d′ 的Transformer可以被宽度为 3d′ 的循环Transformer精确模拟无RMSNorm时。证明通过将RT嵌入分成三个子空间携带、活跃、临时分别用于存储原始激活、下一层激活和注意力输出实现了对标准Transformer行为的完整复现。此外通过将注意力集中到前一个位置RT可以实现token到token的循环计算从而在表示能力上同时包含Transformer和RNN。3.2 训练稳定性第4节传统RNN的梯度消失/爆炸源于信息必须经过长链传播。RT缓解此问题的方式是保留直接的单跳注意力路径任意两位置间可直接交互多跳路径提供额外计算能力但被设计为处于“趋向消失”的区间四、工程贡献高效训练算法第5节4.1 朴素实现的瓶颈RT训练时持久KV是逐个位置揭示的必须等 zₜ 算完。朴素实现每次让新查询聚合所有历史KV导致HBM流量Θ(N²)有效算术强度Θ(1) →带宽受限4.2 分块调度算法关键观察训练/预填充时所有查询 {qᵢ} 可以提前并行计算只依赖层输入 xᵢ。利用这一点每当新KV对被揭示时不再只用于下一个查询而是同时用于一批未来查询的注意力累加。例如(k₄,v₄) 计算出后同时更新 a₅...a₈ 的累加器。算法特点使用在线Softmax统计量运行最大值m、归一化因子l、分子向量o稳定累加块大小选择为能整除 t 的最大2的幂精确算法输出与朴素实现一致仅浮点重排差异复杂度提升HBM流量Θ(N²) → Θ(N log N)有效算术强度Θ(1) → Θ(N/log N)实验结果图4显示朴素实现延迟随序列长度近似二次增长分块实现接近线性增长。五、实现层面的优化第6节5.1 MLP与批处理RT中MLP每次只处理 B 个token一个位置而非一次性处理 B×N 个。因此每设备批量大小 B 直接决定MLP的算术强度。实验采用 B512 以平衡利用率和激活内存并依赖激活检查点降低内存压力。5.2 CUDA Graphs由于存在 O(N) 次中等规模内核启动CPU调度开销成为瓶颈。使用CUDA Graphs将整个前/后向计算录制成图并单次重放大幅降低延迟表2批量512时从277ms降至82ms。5.3 内存布局与反向传播KV缓存按位置优先存储提升分块访问的缓存局部性自定义反向传播梯度计算可在循环外批量完成提高并行度六、实验验证第7节6.1 合成任务在MAD套件 Copy任务上单层RT显著优于单层Transformer图5验证了层内循环确实提供了额外有效深度。Transformer在这些任务上几乎无法学到有意义的表现。6.2 语言建模C4300M/150M参数模型层数验证CE300MTransformer123.060Recurrent123.020Δ0.04Transformer63.092Recurrent63.016Δ0.076关键发现6层RT性能优于12层Transformer用一半层数达到更好效果固定参数量下RT改变了深度-宽度的最优权衡点更少层数 → KV缓存减小约30% → 解码时内存流量降低推理效率提升6.3 下游任务在PIQA、HellaSwag、ARC-Easy、OpenBookQA、SciQ、Winogrande上RT的交叉熵损失均优于对应Transformer基线表3、表5、表8。七、与相关工作的对比类别代表工作记忆类型RT的差异有界记忆RNN/SSMLSTM, Mamba固定大小状态RT记忆随序列长度扩展分段循环Transformer-XL, RMT有界分段总结RT逐token保留无信息压缩反馈TransformerFeedback Transformer跨层共享RT逐层独立查询提前可用RT与TransformerFAM的区别在于后者使用有界工作记忆而RT保留完整的逐token持久KV。八、局限与未来方向作者明确指出层级循环可能改变调优行为和规模律需进一步研究可通过分块block-wise执行循环在深度与速度间权衡当前未实现自定义内核仍有优化空间吞吐量目前低于Transformer42k vs 132k token/秒但这是为推理效率付出的训练代价核心贡献循环Transformer通过一个极简的架构改动KV来源从层输入改为层输出在保持标准解码成本的前提下显著增加了模型的有效深度。结合巧妙的分块调度算法解决了训练效率问题在语言建模上验证了“用更少层数达到更好质量”的深度-宽度权衡对降低大模型推理成本具有实际意义。该工作为突破Transformer的深度限制提供了一个新方向理论分析与工程实现并重。这里是自己的论文阅读记录感兴趣的话可以参考一下如果需要阅读原文的话可以看这里如下所示项目地址在这里。摘要Transformer并行处理token但在时间维度上是浅层的在位置 tt每一层都关注基于前一层计算出的键-值对其深度受层数限制。循环模型提供无界的时间深度但存在优化不稳定性问题且历史上未能充分利用现代加速器。我们引入了循环TransformerRecurrent Transformer这是一种简单的架构变更其中每一层都关注基于其自身激活值计算出的键-值对在保持标准自回归解码成本的同时实现了层级的循环记忆。我们证明该架构可以在温和假设下模拟 (i) 传统Transformer 和 (ii) token到token的循环更新同时避免优化不稳定性。朴素地看预填充/训练似乎是带宽受限的有效算术强度接近1因为键和值是逐个位置揭示的我们给出了一种精确的基于分块的算法该算法在保持数学计算不变的同时将HBM流量从 Θ(N2) 降低到 Θ(Nlog⁡N)对于序列长度 N有效算术强度提升至 Θ(N/log⁡N)。在150M和300M参数的C4预训练中循环Transformer相较于参数匹配的Transformer基线提高了交叉熵损失并且用更少的层数固定参数就取得了改进这表明循环性可以用深度换取宽度从而减少KV缓存内存占用和推理延迟。1 引言Transformer [Vaswani等人2017] 是极为有效的序列模型但其跨位置的计算在结构上是浅层的在每一层内位置 t 关注基于前一层嵌入计算的键-值对这使得任意两个位置之间每层最多只能有一次交互。越来越多的理论研究关注注意力模型有限深度所带来的根本限制包括对低深度Transformer能表示和不能表示什么的电路复杂性特征描述 [Merrill等人2022, Liu等人2023]。这些观点激励着人们去设计能实现更大有效深度的架构。我们从表示能力、优化和计算效率的角度来论证循环Transformer的设计动机(i)表示视角。循环Transformer像Transformer一样保留每个token的键-值记忆但通过允许较后位置关注已经经历过注意力和MLP处理的表示增加了单层内可表达的计算空间。在温和假设下循环Transformer可以模拟标准Transformer的行为反过来通过将注意力限制在先前位置它们可以实现token到token的循环计算。这使得循环Transformer位于完全并行的注意力和纯循环状态空间计算之间同时避免了内存容量受限的瓶颈。(ii)训练稳定性。将模型视为位置上的有向计算图经典的RNN仅通过长度为 (j−i) 的中间状态链将信息从位置 i 传递到 j。这种路径潜在的大长度导致了梯度消失和爆炸现象 [Bengio等人1994, Pascanu等人2013]使得确保远距离位置间的信息流动变得困难。循环Transformer通过引入许多额外的多跳路径来缓解这一问题这些路径对应于在单层内跨位置重复应用“关注MLP”同时仍允许任意两个位置之间进行直接的单跳注意力交互。在实践中我们发现这种架构结合在键-值计算前的适当归一化和标准的逐层残差缩放 [Bordelon等人2023, Yang等人2023]能够稳定地训练。我们将在第4节详细阐述这一观点以及为什么预期梯度爆炸不会成为问题。(iv)深度转化为推理效率。至关重要的是额外的时间有效深度可以转化为更好的深度-宽度权衡在固定参数量下用更少的层数达到相同的质量可以减少存储的键-值状态量和相应的解码时内存流量。我们的实验支持这种机制更浅的循环Transformer模型优于更深的Transformer基线。图2C4预训练在C4数据集上训练的300M参数模型的损失曲线。2 架构概述与符号架构概述。相对于标准的因果Transformer循环Transformer的决定性变化在于暴露给未来位置的键-值对的来源。在标准Transformer中位置 i 的键-值对是根据该位置的层输入计算的。相比之下在循环Transformer中位置 i 的持久键-值对是根据该位置的层输出计算的。因此较后的位置关注的是较早位置的表示而这些表示已经经历了同层的注意力和MLP计算使得每一层沿时间轴变得循环。这在当前位置产生了一个循环性因为位置 i 的层输出也关注当前位置所以持久键值对 (ki, vi) 本身不能用于计算该输出。为了解决这个问题循环Transformer区分两种键-值对。临时键值对根据当前层输入计算仅在评估当前位置的注意力时使用。持久键值对根据得到的层输出计算然后被存储并供所有较后位置使用。符号。我们呈现单头公式多头注意力对每个头独立应用相同的构造然后使用通常的输出投影。假设序列长度为 N层数为 L。设 D 为嵌入维度考虑一个单层输入为 x1, . . . , xN ∈RD。设 MLP : RD →RD 表示MLP块RMS : RD →RD 表示均方根归一化 [Zhang 和 Sennrich2019]。虽然在实际中我们使用可学习参数但就呈现和分析而言我们取 RMS(x) √D · x/∥x∥2。我们用 (品红色) RMS 来区分查询/键归一化 [Dehghani 等人2023]。注意力算子 Attn : (RD × RD)∗× RD →RD 将一序列键-值对 (k1, v1), . . . , (kℓ, vℓ) 和一个查询 q 映射到Attn((k1, v1), . . . , (kℓ, vℓ), q) ∑{i1}^{ℓ} vi · (exp(⟨ki, q⟩) / ∑{j1}^{ℓ} exp(⟨kj, q⟩))我们使用投影矩阵 Q, K, V ∈RD×D 来基于嵌入计算查询、键和值。遵循标准的Transformer参数化方法 [Bordelon 等人2023, Yang 等人2023]我们使用前置层归一化 (pre-LN) [Xiong 等人2020]并假设注意力和MLP残差更新以适当的 1/√L 规模进行初始化/参数化以便形如 x → x (1/√L){Attn, MLP}(RMS(x)) 的链式映射表现良好。2.1 Transformer层我们首先回顾标准的因果解码器-only Transformer层 [Vaswani 等人2017]。给定输入 x1, . . . , xN ∈RD位置 i 根据当前层输入形成其查询、键和值qi RMS[Q RMS(xi)],ki RMS[K RMS(xi)],vi V RMS(xi).位置 i 的注意力输出通过对到该位置为止可用的键-值对前缀进行关注来计算ai Attn((k1, v1), . . . , (ki, vi), qi).最后通过添加注意力和MLP残差分支得到层输出yi xi (1/√L)(ai MLP[RMS(xi (1/√L)ai)]).关键的结构性要点是在标准Transformer中存储在位置 i 的键-值对是根据同一位置的层输入计算的。2.2 循环Transformer层循环Transformer层如图1所示与标准Transformer层的区别仅在于暴露给未来位置的键-值对是如何形成的。在位置 i循环Transformer首先根据当前层输入形成查询以及一个临时的键-值对qi RMS[Q RMS(xi)],ktemp_i RMS[K RMS(xi)],vtemp_i V RMS(xi).2.3 最密切相关的作品表示方面最接近的相关作品是反馈Transformer变体。反馈Transformer [Fan等人2020] 使用跨层共享的反馈记忆实质上只有一列基于整个模型输出计算的键-值对而不是在每一层独立计算。阶梯注意力 [Ju等人2021] 推广了反馈Transformer研究了带有权重共享的循环处理和缓存变体——但仍然是在模型级别而非层级级别。这种分离不仅在表示上重要在计算上也重要在RT层内所有查询都提前可用这是我们高效训练方法第5节的使能条件。TransformerFAM [Hwang等人2024] 在也在每一层独立运作并允许较后位置访问更处理过的表示方面更为接近。然而它是通过一个有界记忆来实现的该记忆通过注意力进行读取和写入。相比之下循环Transformer保留了每个token的持久键-值记忆而不是将过去信息压缩成固定大小的状态。这种差异对于避免有界记忆瓶颈以及第3.1节的表示结果都至关重要。3 表示视角在本节中我们从理论上证明循环Transformer在温和假设下既能模拟Transformer也能模拟RNN。这表明它至少在表示能力上包含了RNN和Transformer。3.1 表示Transformer5 训练和预填充的精确分块图4在单张H100 GPU上批量大小为512宽度为1024时单层前向传递延迟随序列长度的变化。朴素的循环实现显示出大约随上下文长度呈二次方增长而分块实现的扩展性更接近线性。这与分块调度的预期效果相匹配即增加加载的键-值对在多个未来查询中的重用。我们也包括了普通Transformer基线作为参考。6 深入探讨计算挑战在本节中我们概述了使循环Transformer训练在实际中高效从而能够执行我们的语言建模实验所需的关键计算设计决策。与之前讨论的侧重于算法结构的分块算法不同这里的重点是实现级别的优化。这些更改不会改变渐近复杂性但会产生有意义的常数级加速这对于减少总训练时间至关重要。设置。我们在H100 GPU上运行所有实验每次训练在单个设备上进行。我们的实现使用PyTorch [Paszke 等人2017]。除了第5节的算法分块策略外我们还做了若干实现选择旨在提高硬件利用率和减少开销。虽然我们成功地使用Torch compile来融合多个组件但我们并未依赖当前实现中的自定义内核。我们将此类内核级优化留给未来工作并在此专注于架构和计算调度引入的算法改进。除非另有说明所有延迟测量均假设隐藏维度为102416个注意力头在3次预热运行后取5次运行的平均值标准差低于1毫秒。延迟按层报告它们测量单层映射 x↦z 的计算包括注意力和MLP计算但不包括嵌入、解嵌和损失计算这些在循环Transformer和Transformer中是相同的。表2循环Transformer单层前向传递延迟毫秒序列长度为512个token。在较低批量大小下CPU开销占主导地位我们采用CUDA Graphs来缓解。批量大小不使用CUDA Graphs使用CUDA Graphs32277.0838.8564279.2342.28128279.4248.95256276.0561.39512277.3381.731024275.49134.092048293.70240.836.1 MLP与批量大小虽然分块算法极大地提高了循环Transformer注意力部分的算术强度但MLP计算必须与之交织并可能成为前向传递的主要成本。原因在于与标准Transformer不同MLP不会一次性接收所有 B×N 个token。相反它每次只处理 B 个token在 N 次迭代中逐位置处理。因此每个设备的批量大小 B 直接控制MLP的算术强度在 B≤O(d) 的范围内该强度大约与 B 成线性关系。在实践中对于我们考虑的模型规模B512 在GPU利用率和激活内存之间提供了一个有利的权衡。这个约束对于时间循环架构来说是根本性的并非注意力机制特有类似的问题也出现在经典循环模型如LSTM中。特别是即使在150M-300M参数范围内在单个设备上维持这样的批量大小从激活内存的角度来看已经具有挑战性。通常情况下人们会采用梯度累积但在这里这违背了目的通过累积增加总批量大小并不会增加MLP所见到的有效批处理大小因此不会提高算术强度。激活检查点因此我们依赖激活检查点。我们计算的一个有用属性是一旦每层的输入 xx 被存储输出 z 可以基本上“免费”保留因为它们作为下一层的输入。这导致了一个成本显著降低的重计算过程。特别是一旦持久键-值对从 z并行地重建剩余中间量就可以以完全并行的方式恢复。特别是与注意力相关的中间量可以在不重放最初逐个揭示 zi​ 的慢速顺序过程的情况下重新计算。因此虽然我们仍然承担检查点的标准成本但重计算开销比原始前向传递的开销小得多。临界批量大小。即使内存允许任意大的批量在优化质量开始下降之前每个优化器步骤可以处理的token数量也存在统计效率限制 [McCandlish 等人2018, Shallue 等人2018]。在我们的设置中对于150M和300M参数范围内的Transformer模型这个临界批量大小约为每个优化器迭代256K个token [Zhang 等人2025]。因此在我们的整个实验中我们使用长度为512的序列和批量大小为512对应于每次迭代256K个token。在附录E.3中我们进一步验证了循环Transformer的临界批量大小不低于此值。6.2 使用CUDA Graphs我们架构的注意力和MLP部分都涉及 O(N) 次中等规模内核的启动。即使底层内核本身是计算受限的每个内核的工作量也可能足够小使得CPU端的调度开销成为主要瓶颈。通常启动开销被隐藏因为当前内核仍在执行时未来内核可以被排队。然而在这里内核寿命足够短这种重叠有限调度延迟在关键路径上变得可见。为此我们使用CUDA Graphs记录完整的前向和后向传递计算并通过单次启动重放它。这对性能至关重要。由此产生的延迟改进见表2。表2的一个值得注意的特点是在不使用CUDA Graphs的情况下延迟在很宽的批量大小范围内几乎保持不变这表明调度开销而非算术工作是主要瓶颈。启用CUDA Graphs后延迟随批量大小的变化更有意义更忠实地反映了底层计算成本。6.3 缓存局部性和内存访问模式分块调度还具有有利的内存访问模式。当我们按位置迭代时后续步骤访问的KV缓存部分重叠很大并且通常非常小平均只涉及 O(logN) 个位置。为了利用这种局部性我们按位置维度优先存储KV缓存而不是更传统的批量优先或头优先布局。这确保了每个分块更新访问的切片在内存中是连续的改善了缓存局部性并减少了不必要的内存移动。6.4 反向传播7 实验我们在旨在测试模型表示能力的合成任务以及语言建模上评估循环Transformer。7.1 合成诊断我们使用MAD套件 [Poli 等人2024] 作为混合架构的诊断工具。我们还包括了复制任务 [Jelassi 等人2024]该任务被证明对于有限记忆模型这包括所有形式的RNN包括SSM Gu 和 Dao [2024]是无法解决的。这些诊断并非用作长程基准它们隔离循环是否按预期方式被使用。由于我们想测量一层的有效深度我们比较一层Transformer和一层RT否则保持与 [Poli 等人2024] 相同的模型配置。精确的超参数细节在附录D.2中提供。图5显示了序列级别的准确率并显示RT显著优于Transformer后者在任何任务上都没有达到有意义的性能。7.2 C4上的语言建模300M参数我们在OLMo-2 [OLMo 等人2024] 代码库之上实现了循环Transformer并在C4 [Raffel 等人2020] 上预训练了300M和150M参数模型使用了 1× Chinchilla token约3b token。精确的超参数在附录D.1中提供。图2显示了300M模型在训练期间的交叉熵损失用于Transformer和循环Transformer在12层24层是先前如Zhao等人[2025]工作中使用的标准配置其性能相当如表1所示和参数等效的6层宽度从1408按22​比例放大到2048时的训练情况。表1包含了最终的交叉熵值。如图所示RT在12层时显著优于Transformer交叉熵差值delta为0.03在6层时为0.057。值得注意的是层级循环在固定参数量下改变了深度-宽度最优值。我们在OLMo [Groeneveld 等人2024] 中使用的6个多项选择任务上评估了模型的下游性能PIQA [Bisk 等人2020]Hellaswag [Zellers 等人2019]ARC Easy [Clark 等人2018]OpenBookQA [Mihaylov 等人2018]SciQ [Welbl 等人2017] 和 Winogrande [Sakaguchi 等人2020]。我们在表3中提供了模型在真实答案上的CE损失值。我们使用这个指标是因为已知它在小规模下更平滑 [Bhagia 等人2025]。我们也在附录表10中提供了下游准确率但其中大多数接近随机噪声Winogrande接近50%而其他大多数仅比随机高6-7%。150M模型的结果在附录E.3中提供。图5循环Transformer和常规Transformer在MAD合成任务和复制任务上的序列级准确率。RT在所有任务上都优于Transformer除了压缩任务。在压缩任务上两种模型在序列级都没有达到非平凡性能但它们在token级达到了有意义的准确率且RT仍然领先如附录E.1所示。7.3 深度-宽度权衡与解码占用对于自回归解码循环Transformer在每个token的注意力行为上与具有相当深度和宽度的Transformer基本相同每个新token关注根据先前token计算的缓存键和值。然而如果循环Transformer用更少的层数减少因子 αα达到相当的模型质量同时保持总参数量固定则键-值 (KV) 缓存的大小会减少因子​。这是因为模型宽度仅增加了​。更小的KV缓存直接减少了解码期间的内存流量这可以在带宽受限的设置中带来更高的吞吐量。更广泛地说用深度换取宽度可能对解码有利因为增加的宽度可以通过张量并行性等技术更有效地并行化。我们将全面评估优化后的解码延迟留给未来工作。表3300M模型的下游性能。模型层数pia CEhellaswag CEarc easy CEopenbook qa CEsciq CEwinogrande CETransformer65.5364.33411.12812.40814.5148.413Transformer125.5084.15610.89412.3614.1577.809Recurrent125.2764.05210.33611.55713.3847.628Recurrent65.3564.12210.38811.65113.2067.9148 相关工作我们根据其施加的核心瓶颈以及是否引入超出标准前馈自注意力的循环/类反馈计算对最相关的前期工作进行分组。有界记忆序列模型。经典RNN和现代状态空间模型维护一个循环更新的固定大小状态 [Bengio 等人1994, Pascanu 等人2013, Hochreiter 和 Schmidhuber1997, Smith 等人2022, Gu 和 Dao2024]。线性注意力/保留变体也允许具有有界状态的循环公式 [Katharopoulos 等人2020, Sun 等人2023, Peng 等人2023]。虽然计算上吸引人但有界状态族通常无法保留随序列长度扩展的信息[Jelassi 等人2024] 通过证明此类模型无法执行复制任务来强调这一局限性。这个局限性恰与RT如第3.1节所示形成对比。分段循环与记忆机制。Transformer-XL及其后续工作在分段中处理上下文并可能通过注意力机制进行总结 [Dai 等人2019, Rae 等人1911]。RMTs通过跨段总结反馈信息更进一步 [Bulatov 等人2022]。这些方法主要解决高效的长上下文处理而不是在token状态上进行层级循环计算。此外它们具有与经典RNN相同的局限性——即有界记忆。循环/反馈Transformer。反馈Transformer [Fan 等人2020]阶梯注意力 [Ju 等人2021] 和 TransformerFAM [Hwang 等人2024] 在Transformer块中引入了循环/类反馈计算。如第2.3节所讨论循环Transformer是具有独立每层键-值集合的层级循环而不是跨层共享反馈并且这种结构也使得我们的高效训练/预填充第5节成为可能。9 讨论与结论在这项工作中我们引入了循环Transformer它整合了三个关键思想(i) 每层内更深的时间表示(ii) 基于路径的视角使得更长的多跳影响成为可能同时通过更接近梯度消失区间来保留直接注意力访问以及 (iii) 一种精确的、I/O感知的评估算法通过减少内存流量而不改变底层计算使训练和预填充变得实用。我们的结果清楚地展示了引入层级循环所增加的有效深度。我们将这项工作视为一个概念验证为未来的研究开辟了几个方向。与任何新架构一样层级循环的引入可能会改变调优行为和规模律可能改变最优的深度-宽度权衡。此外当前的设计可以通过分块进行扩展即在步骤块上执行循环从而在循环深度和训练速度之间产生可控的权衡。最后虽然所提出的分块算法是精确的并且带来了可衡量的收益但通过完全优化的内核和现有并行化技术的扩展可能会实现进一步的改进我们将其留给未来的工作。总之层级循环提供了一种简单而有原则的机制用于暴露额外的时间深度同时保留随序列长度扩展的记忆并保持Transformer的完整表示能力。当与一种能够实现计算重用并减少HBM流量的精确分块策略相结合时循环Transformer使得层级循环的训练和预填充在实践中变得可行并在固定参数量下改变了深度-宽度的权衡。这种转变在解码时也是有利的因为更小的KV缓存大小带来了更高的效率。