固定 87 token 预算的 GRPO,让模型从第一步起就只能写短推理,没机会先把题想明白。 论文把预算做成随训练指数衰减的课程:先给 256 token 自由探索,再逼模型把摸索出的解法压进 87 token。 代价是训练期上下文变长、算量略增,结论也只在 7B 模型与数学题上验证过。
长链推理解决了准确率,却带来「过度思考」;而把长度一刀切成固定预算,等于让模型在探索之前就被压缩。论文押注的顺序是:先长后短。
改动只有两处:预算 B(t) = max(1, B₀·γ⌊t/T⌋) 从 256 指数衰减到 87;长度奖励改成三角形——在预算 L 处最高,0 与 2L 处归零,逼模型把预算用满,而不是越短越好。
GSM8K 训练、curriculum 与 fixed-budget 同样停在 87 token 终点:准确率 82.71% → 86.20%,平均 token 基本不变(88.8 vs 87.0),也高于不微调的 base(83.55%)。
但论文自己的表推翻了一部分叙事:对难题,衰减越快准确率越高;把指数换成线性衰减,MATH500 反而从 37.4% 升到 42.8%。
读完这节要知道:长链推理为什么成了问题,而「训练一开始就把预算压死」为什么不是好的折中。
长链推理的主流是 test-time scaling:用 RL 训练模型写出更长的推理链,向 OpenAI o1、DeepSeek R1 那样「think more」。准确率上去了,token 用量却变得不可控——简单题也写出一大段,论文称为 overthinking。
长度控制通常从两头下手:推理时截断或跳 token,训练时给模型一个 token 上限做 RL。论文关心的是后者,核心问题只有一个:
在 87 token 的固定预算下训练,模型从第一步起只有 87 token 可用,没机会在宽松预算下发现「这题该先列式再算」,只能直接去猜一种能在 87 token 内写完的写法。论文的原话是:这样无法利用先探索、后压缩的能力进阶。
反过来,不控长的 RL 能学到准确解法,但学到的往往又长又啰嗦,还得另做一步压缩。两者缺的正是顺序。
论文要验证的假设很朴素:同一个终点预算,训练轨迹不同,最终模型就不同。若成立,固定预算训练就不是效率最优解,而只是课程学习的退化解。
两条正交的路子各有一个盲区,论文的定位是把「预算」从常数变成训练变量。
s1 用特殊 token 填充或截断到固定上限;TokenSkip 在推理时估计并跳过低价值 token;Chain of Draft 用提示让模型写草稿式短推理。
盲区:模型本身没有变短,长度是外部强加的。论文指出突然截断会打乱推理;跳 token 与提示又都需要推理时的额外干预。
LCPO(L1) 让用户在推理时指定目标长度(如 512 / 1024 / 2048 token),用 RL 训练模型同时兼顾正确率与长度贴合;Thinkless 决定何时长想、何时短想,ConciseRL 在奖励里加入简洁度。
盲区:长度是用户手里的推理时参数或一个固定常数,训练全程不变。多个固定预算要分别训练,每个都拿不到跨预算的进阶。
与 LCPO 的差别被论文点明:LCPO 训练一个「听用户话」的通用模型;这篇论文训练一个只会短思考的独立模型,预算从 256 单调衰减到 87,推理时不需要任何长度提示。论著称它在实践中平均只偏离目标预算约 5%。
全部改动就是这两个函数;看懂它们的形状,就明白为什么「越短越好」在这里是错的。
预算只改一个数 L——而 L 正好是长度奖励的峰值位置。于是训练每往前走一格,模型看到的「理想长度」都在左移,奖励曲线越收越窄。
对照组是常见的带状(band)奖励:只要 ℓ ≤ L 就满分。带状奖励在 ℓ 很小时也给满分,模型更愿意「只要做对,写得越短越好」,停在比必要更短的推理上——论文说这叫过早收敛和过度压缩。
三路奖励加权求和,权重是 λc、λℓ、λf:
math-verify 判对)+ 长度贴合 + 格式(<think> / <answer> 标签成对且不重叠)拖动滑块让目标预算 L 从训练早期的 256 收到 87。三条固定长度(一半预算、预算本身、1.5 倍预算)的奖励实时变化——注意三角形在短侧留下了斜坡,带状没有。
把 L 拖到 87 附近,三角形的左侧斜坡变得很陡:90、100、120 token 之间奖励差距被放大,模型必须精确贴近预算;带状曲线在 [0, L] 上始终是满分,所有「比预算短」的长度彼此没有区别。这正是 Table 2 里带状奖励准确率更低的原因——MATH500 上 30.8% vs 37.4%,平均 token 94 vs 135,省下来的 token 换来了更糟的推理。
读完这节要知道每一步训练里预算怎么变、奖励怎么归一化,以及这套课程要多付多少算力。
每个 prompt 采样 G = 8 条回答,组内做 z-score 得到优势,不训练 value 网络:
三路奖励都进同一个 ri,长度项与正确性项在同一套优势里直接竞争:想拿高奖励,必须判对,同时把长度推到当前 L。
| 项目 | 设置 |
|---|---|
| 模型 | Qwen-2.5-7B,所有实验同一个模型 |
| RL 框架 | GRPO,group size G = 8;基于 torchtune,代码已开源 |
| 训练数据 | GSM8K 全部 7,473 道(简单);MATH500(500 道竞赛级难题) |
| curriculum 预算 | 256 → 87 token,指数衰减;主实验为 γ = 0.7、每 150 步更新一次 |
| 固定预算基线 | 全程锁定 87 token,与 curriculum 的终点相同 |
| base 基线 | 原始 Qwen-2.5-7B,不做任何 RL 微调 |
| 评测 | zero-shot:GSM8K、SVAMP、GSM+、MATH500、College Math |
课程让训练前期的每条 rollout 上限更长(256 而非 87),但上限不等于实际生成长度。把 prompt 长度记作 P,每道题每组的生成算量约为 G × (P + L):
P 越大,预算差异越被 prompt 稀释,课程在算量上就越接近免费;P 接近 0 时,前期 256 的上限让每条 rollout 的生成量接近固定预算的 2.9 倍。另外,按 Table 2 的实测,curriculum 的最终回答平均 135 token,仍高于固定预算终点的 87——差距是在准确率上闭合的,不是把 token 压得更低。
一个数字看全流程:Figure 1 的示意阶梯是 256 → 179 → 125 → 87 → 61 → 43 → 30。
L = 256,绝大多数 GSM8K 题在 256 token 内能想完,MATH500 里许多题「刚刚够用」。三角形奖励把答案往 256 附近推,模型学会把步骤写全。
L 降到 87,同一个策略必须在已经找到的解法上删掉冗词、合并步骤。Figure 1 的示例就是同一道题从长篇推理压到更短推理,答案不变。
前一块是论文正文的精确数字,后面三组消融里,有两组与论文的叙事相抵触。
| 训练集 | 评测 | 指标 | base | fixed-budget GRPO | curriculum GRPO |
|---|---|---|---|---|---|
| GSM8K | GSM8K(ID) | 准确率 | 83.55% | 82.71% | 86.20% |
| GSM8K(ID) | 平均 token | 258.4 | 87.0 | 88.8 | |
| SVAMP(OOD) | 准确率 | — | 77.67% | 85.00% | |
| GSM+(OOD) | 准确率 | — | 62.75% | 67.58% | |
| MATH500 | MATH500 | 准确率 | — | 38.80% | 43.40% |
| MATH500 | 平均 token | — | 179.3 | 137.1 |
来源:论文 4.2 节正文(Figure 2 的配套描述)。base 的 SVAMP、GSM+ 与 MATH500 数字正文未给出。
论文没有把 Figure 2 列成表。下图是按论文源 PDF 的坐标轴刻度反算得到的读数:实心点 = curriculum 曲线上的训练步,方块 = 图例 «Baselines» 中「Step 150」等训练结束时的固定预算模型。论文原图里 curriculum 是深蓝,此处按本站配色:陶红 = curriculum,青灰 = 固定预算,紫 = base。
GSM8K 与 SVAMP 两个面板上,curriculum 的曲线端点或中段明显高于固定预算;College Math、MATH500、GSM+ 上基本是一条贴在一起的平线,MATH500 在 GSM8K 训练下甚至一度低于固定预算。与 4.2 节的「all evaluation benchmarks」不完全一致,细节见 07 边界。
三组设置起点 256、终点 87 不变,只改衰减点数量 n;T = 600 时,n = 1 / 3 / 7 对应间隔 300 / 150 / 75 步(γ = 0.340 / 0.700 / 0.857)。
| 数据集 | γ / 间隔 | Avg. token | 准确率 % |
|---|---|---|---|
| GSM8K | 0.340 / 300 | 178 | 86.8 |
| 0.700 / 150 | 89 | 86.2 | |
| 0.857 / 75 | 103 | 84.7 | |
| College Math | 0.340 / 300 | 357 | 10.1 |
| 0.700 / 150 | 187 | 13.4 | |
| 0.857 / 75 | 119 | 15.3 | |
| GSM+ | 0.340 / 300 | 204 | 67.5 |
| 0.700 / 150 | 110 | 67.6 | |
| 0.857 / 75 | 124 | 66.6 | |
| SVAMP | 0.340 / 300 | 167 | 88.0 |
| 0.700 / 150 | 90 | 85.0 | |
| 0.857 / 75 | 96 | 84.3 | |
| MATH500 | 0.340 / 300 | 336 | 9.8 |
| 0.700 / 150 | 201 | 37.4 | |
| 0.857 / 75 | 132 | 38.4 | |
| Average | 0.340 / 300 | 248 | 52.4 |
| 0.700 / 150 | 135 | 57.9 | |
| 0.857 / 75 | 115 | 57.9 |
论文的叙事是「越快衰减 = 更省、难题更稳」,平均值确实如此:最慢一档 52.4%,比另两档低 5.5 个点。但细看并不整齐——College Math 在最快的 75 步间隔下最高(15.3%),与 MATH500 的趋势相反;GSM+ 则是 150 步最好;150 与 75 步的平均准确率打平,后者 token 少 20。
| 数据集 | Triangular token | Triangular % | Band token | Band % |
|---|---|---|---|---|
| GSM8K | 89 | 86.2 | 70 | 84.6 |
| College Math | 187 | 13.4 | 132 | 13.1 |
| GSM+ | 110 | 67.6 | 98 | 64.6 |
| SVAMP | 90 | 85.0 | 61 | 82.0 |
| MATH500 | 201 | 37.4 | 112 | 30.8 |
| Average | 135 | 57.9 | 94 | 55.0 |
这条消融支持论文的设计:带状奖励在每个数据集上 token 都更少,准确率却一律更低,差距最大的是 MATH500(−6.6 个点)。论文的解读是——短侧没有斜坡,模型较早停在一个刚够用的短解法上。
| 数据集 | Exponential token | Exponential % | Linear token | Linear % |
|---|---|---|---|---|
| GSM8K | 89 | 86.2 | 107 | 86.3 |
| College Math | 187 | 13.4 | 154 | 17.2 |
| GSM+ | 110 | 67.6 | 143 | 66.4 |
| SVAMP | 90 | 85.0 | 97 | 87.3 |
| MATH500 | 201 | 37.4 | 198 | 42.8 |
| Average | 135 | 57.9 | 140 | 60.0 |
这组结果最反直觉:换成线性衰减,平均准确率 57.9% → 60.0%,MATH500 提高 5.4 个点,College Math 提高 3.8 个点,代价只有平均 5 个 token(135 → 140)。论文自己也承认,指数衰减「可能过早移除推理能力」。
四张卡,最后一张是读这篇论文时最该警惕的地方。
所有实验都用 Qwen-2.5-7B,预算上限 256 token。论文 Limitations 写明:13B、70B 或 1.3B、3B 上的行为,以及开放式生成任务,都还是开放问题。需要数千 token 的推理题不在覆盖范围内。
正确性奖励来自 math-verify 的自动判题。写作、开放式问答没有这种可靠的判分器,三路奖励里的正确性项失去依据;论文也没有评估数学以外的领域。
Table 1 中,最慢衰减在 GSM8K、SVAMP 上最好;Table 3 中,线性衰减在平均与难题上更好。准确的说法是轨迹形状影响结果,而不是某个特定 schedule 全面占优。默认的指数衰减是一个未经跨任务优化的选择。
4.2 节称 curriculum 在「all evaluation benchmarks」上准确率提升;但 Figure 2 的读数显示,College Math、MATH500、GSM+ 上 curriculum 大多贴着基线,MATH500(GSM8K 训练)一度低于固定预算,只有 GSM8K 与 SVAMP 的优势清楚。另外,Table 1–3 中 MATH500 的数字远好于正文 MATH500 训练组(37.4% vs 43.40%),各表训练配置未写明,表间数字不宜直接混用。
一句话:这是一个「先探索、后压缩」有效性的概念验证,不是一套调好的通用配方。要用于难推理任务,Table 3 的线性衰减比默认指数衰减更值得先试。