论文链接:arxiv.org/abs/2608.26070 代码仓库:github.com/Muennighoff/prefix-sliding 发表时间:2026年8月 机构:Stanford University、University of Washington、UC Santa Barbara、Prime Intellect——高校 + AI 公司合作(Prime Intellect 提供大规模 RL 训练基础设施 prime-rl;作者含 Percy Liang、Yejin Choi、Jason Wei、Andrew Ng、Mike Lewis 等) 领域标签:cs.CL / 测试时扩展 / 高效推理


一、论文背景

1.1 什么是测试时扩展?

测试时扩展(Test-time Scaling) 指让模型在推理阶段投入更多算力来提升表现,最常见的形式是"想得更久"——生成长思考链(如 DeepSeek-R1、o1 的模式)。并行式扩展(多次采样投票)边际收益递减快;顺序式扩展(单次轨迹更长)效果更好,被认为是更优路线。

但顺序扩展撞上一个硬约束:全注意力(Full Attention)。主流 Transformer 生成每个新 token 时要 attend 已生成的所有 token,成本随已生成长度线性增长——想到第 10 万个 token 时,每一步都要为前 10 万个 token 计算注意力。类比:你写日记写到第 1000 页时,每写一个字都要重读前面 999 页——越写越慢,直到写不动。此外长上下文还有分心、上下文污染、重复循环、知识丢失等次生问题。

1.2 关键经验观察:中间推理 token 会"过期"

论文的第一个贡献是一个简单测量(原文图 2):对 Qwen3-1.7B 在 AIME25 上的推理轨迹做注意力概率分析(跨层跨头平均):

  • 前缀 token 获得极高注意力:前几个 token 充当注意力锚点(attention sink)——softmax 需要倾泻"多余概率质量"的地方;<think> 分隔符因持续标记"思考模式"也获高关注;prompt 其余部分携带任务与工具信息。
  • 最近约 1000 个 token 获高注意力:模型正在处理的内容。
  • 中间推理 token 注意力极低:一旦子任务完成,产生它的推理过程就不再重要。算完 42+84 之后,只需要结果 126,不需要"我是怎么算的"。

这直接引出灵魂拷问:保留这些"过期" token,值得付出线性增长的成本吗?

1.3 有界成本是无限思考的必要条件

论文把方法放进一个清晰的概念框架:按"每新 token 成本是否渐近有界"把长上下文方法分为两类。全注意力无界——每生成一个 token 都更贵。要让模型"思考数周"(无限测试时扩展),每 token 成本必须有界。滑动窗口类方法有界,但历史上纯滑窗会丢失任务信息(模型忘了自己在解什么题)。Prefix Sliding 的答案:滑窗 + 保留完整前缀。


二、论文定位和关联工作

2.1 长上下文方法谱系

  • 无界方法:稀疏/线性注意力、低秩注意力等——复杂度亚二次但每 token 成本仍随长度增长。
  • 有界架构方法:RNN(RWKV)、SSM(Mamba)、transformer 变体——每 token 成本渐近常数,但需要从头训练,无法直接用于现有模型。
  • 有界即插即用方法(本文的比较圈):last-k(生成到阈值后只留最后 k 个 token 重启,agent 中的"删旧轮次"、Delethink 属此类);summary/compaction(定期摘要后重启上下文,Opus 4.6、GPT 5.4、Composer 都用);纯滑动窗口。
  • 谱系源头:Longformer 式"滑窗+全局 token"是 2020 年就有的思想;StreamingLLM(Xiao et al. 2024)证明只保留前 4 个 sink token 就能稳定流式生成。

2.2 本文与替代方案对比

维度Full attentionLast-kSummary纯滑窗Prefix Sliding
每 token 成本无界有界(锯齿状)有界(锯齿状)有界有界且平滑
保留任务信息完整靠重启后 prompt靠摘要质量丢失前缀完整保留
token 重复处理无有(last-k 重处理)有(摘要重读)无无(连续滑动)
超参数0k、阈值 nn、摘要长度、prompt、模型、位置窗口仅窗口大小
免训练可用是是是是是

定位结论:Prefix Sliding 是"滑窗+全局 token"思想的极端化——不是 4 个 sink token,而是连续完整前缀。简单性本身被作者视为可复现性优点;真正的贡献在于问题框架(有界性)、RL 长轨迹训练方案与系统性对照。


三、问题定义

具体问题:让推理模型在十万 token 级思考下,每 token 成本保持常数,且性能不逊于全注意力。

抽象洞察:把"该记住什么"从长度问题变成位置语义问题——上下文中信息的价值不由"存在多久"决定,而由"是否还被需要"决定。前缀(任务是什么)与近期窗口(正在想什么)是持续被需要的;中间推理(已完成的子任务过程)是过期的。

形式化:生成第 t 个 token 时,注意力集合 A_t = Prefix ∪ W_t,其中 W_t = 最近 W 个 token 的滑动窗口。每 token 计算量 |A_t| ≈ |Prefix| + W,与 t 无关(常数)。约束:在标准推理基准上的 avg@64 不低于全注意力基线;加速至少 3 倍(窗口 4096)。

精妙之处:一个二分的记忆政策(全保前缀 + 只保近期)就实现了有界性,无需学习"什么重要"的复杂机制——重要性结构天然存在于位置中。


四、问题解法

4.1 免训练推理:Continue PE

模型已用 RoPE 位置编码预训练。处理滑窗外 token 被丢弃后的位置编码有两种方式:Reset PE(给 token 重新编号,需重新施加位置编码、缓存表示不可复用)与 Continue PE(位置编号延续原轨迹,直接复用已缓存表示)。理论上 Continue PE 可能更差(StreamingLLM 的发现),但本文实测差异不显著(附录 D),故选更高效的 Continue PE。

实现上,作者为 Nvidia Hopper 架构写了自定义 FlashAttention 两级过滤内核:块内掩码(部分重叠注意力区域的元素级掩码保证数学正确)+ 块间跳过(prefix 块与 window 块两个不相交块区迭代,跳过无关块),速度基本持平标准滑窗内核。

4.2 训练配合:截断反向传播(Truncated Backpropagation)

十万 token 的 RL rollout 直接反传会 OOM。利用滑窗的有限感受野:多层滑窗的理论感受野是 W×L,但受信息瓶颈限制实际约 1.5×W。因此要精确计算一个窗口(W 个 token)的梯度,只需约 4×W 的前文 token + 前缀传入 trainer。

具体做法(以窗口 2048、轨迹 10 万 token 为例):只把最后 8192 token 从采样器传给训练器;前 6144 个 token 仅作上下文(loss mask 置零),只对最后 2048 个 token 计算 RL loss。autograd 从掩码后的 loss 正常反传——梯度基于 4 倍窗口的上下文计算,相对完整 10 万轨迹足够精确。KL 诊断验证:传 4× 窗口给 trainer,生成器-训练器的每 token logprob 失配(KL)降到与 8× 相当(只传 2K 时 KL > 0.1,4K 显著降低,8K 与 16K 差不多)。

4.3 三种替代方案的机制缺陷(对照分析)

  • Last-k:上下文清空重启时 last-k token 被处理两遍(生成一遍、重启重读一遍);k 大则重复处理多、k 小则可能丢有用近期 token 还得重生成;内存用量锯齿波动,GPU 难以满载。
  • Summary:多一步摘要生成开销(模型大则贵);引入 n、摘要长度、摘要 prompt、摘要模型、摘要放置位置一堆超参;同样有 token 双重处理与锯齿内存。
  • 纯滑窗:滑过窗口起点后任务信息丢失——模型忘了在解什么题、有哪些工具,长思考性能趋平。

Prefix Sliding 用连续滑动(无重启)规避 token 双重处理与锯齿成本,用完整前缀保住任务信息,超参数只有窗口大小一个。


五、评估指标与实验证据

5.1 指标与设置

  • 主指标:avg@64(64 次采样的平均准确率,比 pass@1 更稳健)+ 实测吞吐速度(tok/s)。作者明确说速度才是用户体感的最终效率指标——FLOPs 或总 token 数会漏掉内存差异。
  • 基准:AIME25(数学竞赛)、GPQA、MATH500、LiveCodeBench。模型:Qwen3-1.7B(主)、DeepSeek-R1-Distill-Qwen-7B。温度 0.6、top-p 0.95。
  • RL:GRPO(trl 同步与 prime-rl 异步两种实现)。

5.2 免训练结果

对比项全注意力Prefix Sliding
Qwen3-1.7B AIME25(窗口 8192)34.235.8(更高)
GPQA37.638.0
MATH50091.791.4(持平)
128K 序列速度448 tok/s2788 tok/s(约 6 倍)
窗口 4096 加速—3 倍(标题主张)

AIME 反超的机制:作者明说不是每个 token 更好,而是吞吐高 → 同思考时间内生成更多 token——相同时间预算下"想得更多"。速度曲线(图 6):滑窗法 token/秒初期下降后稳定在约 5000;全注意力无限变慢。

5.3 RL 训练结果

等内存预算对比:全注意力 max 8192 token vs Prefix Sliding 窗口 8192。后者可训 104K 长度轨迹(图 7 标注 8K→40K→72K→104K),reward 更高——长轨迹训练解锁了全注意力因内存限制无法企及的长度带。7B 模型上(窗口 8192、4 倍上下文)截断反传性能与全注意力相当(附录 E 图 15)。

5.4 对照消融(AIME25,max 262144,本地窗口 4096,last-k/summary 的 k 与摘要长上限 256)

last-k 中 k=256 最优但仅 4.2 分;summary 消融最高 26.4 分;Prefix Sliding 在性能-效率平面上全面占优(图 9)。

5.5 诚实的失效分析

  • LiveCodeBench 需要窗口 ≥16384:模型在代码任务里"在注释里思考"数千 token,等它回头继续写代码时,代码开头已滑出窗口。训练时配合 Prefix Sliding 做 RL 可能让模型学会调整注释行为。
  • 短生成任务无收益:HealthBench 平均长度 2086,未到窗口就结束了。

5.6 为什么实验设计能证明论点

主张是"有界成本下性能不降"。证据链:(1) avg@64 大样本采样排除噪声;(2) 三个基准覆盖数学/科学/代码;(3) 对照组限定在"免训练可用 + 有界成本"的同类方法,比较公平;(4) 失效案例(LCB)主动报告并给出机制解释(注释思考+代码滑出窗口),说明作者清楚方法边界。


六、效果优势的根源解释

(1)为什么丢弃中间 token 不掉点? 全注意力每 token 成本随长度线性增长的前提是"所有历史 token 都值得 attend"。注意力概率测量(前缀+近期占绝大部分概率质量、中间极低)说明中间 token 完成子任务后信息价值耗尽——保留它们的边际收益趋零而边际成本线性增长,丢弃是理性选择。类比:工作台旁的临时草稿纸,算式用完就没用了,不必永久归档。

(2)为什么必须保留前缀而不能纯滑窗? 前缀身兼三职:任务描述(在解什么题)、工具信息(能用什么)、attention sink(倾泻多余概率质量维持 softmax 稳定)。纯滑窗滑过起点后三者皆失,模型"忘了自己是谁在干嘛",长思考性能趋平——这解释了纯滑窗基准的表现平坦。Prefix Sliding 同时保住"任务是什么"(前缀)与"正在想什么"(近期窗口),两头信息都在,成本却有界。

(3)为什么比 last-k/summary 好? 三方面机制差:last-k/summary 周期性重启上下文,token 被处理两遍(浪费);内存锯齿波动(GPU 利用率难看齐);超参数多(调参成本与过拟合风险)。Prefix Sliding 连续滑动、零重复处理、单超参——结构上消除了这些浪费,不是调参调赢的。

(4)免训练 3 倍提速性能反升的机制:同思考时间内吞吐高→生成 token 更多。这揭示了测试时扩展的一个被忽视的维度:固定时间预算下,吞吐即性能——3 倍速度意味着模型能在相同秒数里想 3 倍的内容。

(5)截断反传为何可行? 滑窗多层堆叠的实际感受野约 1.5×W(信息瓶颈效应),故 4×W 的上下文足以高精度复现窗口内 token 的梯度——KL 诊断(4× 与 8×/16× 相当)验证了这一点。这不是近似妥协,而是对感受野结构的精确利用。


七、必要知识反推

7.1 领域知识层

  • Transformer 注意力机制与 KV 缓存:不理解"每 token 成本为何随长度增长"就无从定义问题。
  • 测试时扩展范式:顺序 vs 并行扩展及其收益规律——知道要优化哪个方向。
  • attention sink 现象:softmax 多余概率质量倾泻到开头 token 的机制——前缀保留的理论依据。

7.2 方法论知识层

  • 长上下文方法分类学:有界/无界成本、即插即用/需训练的二维划分——定位方法、圈定公平对照集。
  • 滑窗感受野理论:W×L 理论值与 1.5×W 实际值——截断反传的可行性论证基础。
  • RL 训练工程:GRPO、异步 RL、teacher-forcing 效率、loss mask 技巧。

7.3 工程知识层

  • FlashAttention 块级编程:两级过滤(块内掩码+块间跳过)的自定义内核实现。
  • vLLM 推理栈与缓存复用:Continue PE 复用缓存表示的工程条件。
  • 基准协议:budget forcing 控制思考预算、avg@64 采样、答案验证库。

7.4 知识融合的关键节点

  • 节点一(观察→设计):把"注意力概率集中于两端"这个经验观察直接翻译成"只保留两端"的内存政策——测量驱动设计的典范。
  • 节点二(有界性框架):用"每 token 成本有界"统一比较异质方法,把工程选择变成理论必要条件——概念框架的提炼。
  • 节点三(感受野→反传):滑窗的有限感受野不仅省推理,还决定了"训练只需传 4×W"——同一结构性质在推理与训练两处被复用。
  • 节点四(失效的机制归因):LCB 失败被归因到"注释思考+代码滑出窗口"的行为模式,并预言 RL 训练可让模型自适应——把局限转化为后续工作的入口。

八、论文中可以提取的通用性灵感

灵感一:信息价值会过期,记忆政策应按位置语义而非容量设计

  • 核心思想:系统保留信息的依据应是"是否还被需要",而非"是否出现过";很多场景下"被需要"与位置强相关(任务定义处 + 当前工作区)。
  • 论文证据:注意力概率集中在前缀与最近约 1000 token;丢弃中间推理 token 后 AIME/MATH/GPQA 性能持平或反升。
  • 推广场景:agent 对话历史的"系统提示+近 N 轮"策略;IDE 的编辑器内存管理(打开文件 vs 已关闭);人脑工作记忆的串行复述机制;日志系统的冷热分层存储。

灵感二:有界成本是可扩展性的必要条件

  • 核心思想:任何希望"无限运转"的系统,其单步成本必须渐近常数;单步成本随历史线性增长的系统必有崩溃点。
  • 论文证据:全注意力每 token 成本线性增长使长思考不可行;Prefix Sliding 达到有界后 128K 序列提速 6 倍、RL 可训 104K 轨迹。
  • 推广场景:消息队列的消费补偿机制;区块链的状态膨胀与剪枝;数据库 WAL 的检查点;组织流程中"每做一件事都要审批全部历史"的制度成本。

灵感三:吞吐即性能——固定时间预算下,快的系统等于强的系统

  • 核心思想:当总资源(时间)给定时,单位成本产出的提升直接转化为最终质量提升,即便单步能力不变。
  • 论文证据:Prefix Sliding 的 AIME 反超不是每 token 更好,而是同思考时间生成更多 token(3 倍吞吐)。
  • 推广场景:编译器增量编译让迭代更快→更多轮优化;快速原型工具让同等时间试更多方案;高频交易的低延迟优势;科研中"快速失败"迭代文化。

灵感四:利用系统的天然局限(有限感受野)变约束为方案

  • 核心思想:系统的信息传播半径有限这一"缺陷",可以反过来自动界定精确计算所需的最小上下文,省掉冗余计算。
  • 论文证据:滑窗 1.5×W 实际感受野 → 4×W 上下文即可精确复现窗口梯度,10 万 token 轨迹可反传。
  • 推广场景:分布式系统的局部性原理(一致性哈希);元胞自动机的局部规则;团队沟通的"信息半径"决定团队规模上限;缓存预取窗口设计。

灵感五:简单方法的对照纪律

  • 核心思想:极简方法要服人,必须与所有"同样简单"的替代方案做系统对照,并诚实报告失效场景。
  • 论文证据:与 last-k/summary/纯滑窗的逐一机制对比 + 超参敏感性分析 + LCB 失效案例的机制归因(注释思考滑出窗口)。
  • 推广场景:产品设计中的极简方案 A/B 对照;工程上的"够用就好"方案需明确边界条件;算法竞赛中暴力法与优化法的适用域划分。