TREK论文解读:把蒸馏从模仿变成探路,GRPO在难题上才有的救
你有没有过这种经历:GRPO 跑了 1000 步,reward 看着在涨,但训完之后把模型丢到 AIME 2025 上评测,发现难的那 20% 题压根没动静。模型把"会的题"训得更熟了,"不会的题"连一次成功 rollout 都没采到过,group-relative advantage 算出来全是 0——没有梯度,就没有学习。
这篇 LinkedIn 团队的 arXiv:2607.05339 论文 TREK(Teacher-Routed Exploration via Forward KL)就盯着这个事。它没去堆 rollout 数、没去调 KL 系数、没去改 reward,而是重新定义了"蒸馏"在 GRPO 里的角色:蒸馏不是为了模仿老师,而是为了给学生的 on-policy 探索打前站。
核心结果:Qwen3-8B 在 AIME 2025 从 36.9 涨到 40.3(avg@16),AIME 2024 从 47.9 涨到 51.1。Agent 任务上 ALFWorld 75.8→82.8,ScienceWorld 12.5→26.7(直接翻倍)。更关键的是——所有规模的 Qwen3 上都有效,外部老师(DeepSeek-V4)和自上下文(self-context)两个变体都能跑,后者甚至不需要外部模型。
我的判断:这论文的真正贡献不是某个新 loss 公式,而是把"GRPO 在 hard prompt 上为什么会卡"这件事讲清楚了,并给出了一个输出端通用(output-only)的解决路径——你可以用黑盒老师、白盒老师、甚至就是同一个模型加个 inference-time context。这点对工业部署非常关键,因为绝大多数强模型对外只暴露 API。
论文信息
- 标题:TREK: Distill to Explore, Reinforce to Refine
- 作者:Yuanda Xu, Zhengze Zhou, Kayhan Behdin, Jelena Markovic-Voronov, Hejian Sang, Xiaomin Li, Wenhui Zhu, Xinchen Du, Aida Rahmattalabi, Ran He, Sen Na, Zhipeng Wang, Alborz Geramifard
- 机构:LinkedIn Corporation, Harvard University, Georgia Institute of Technology
- 链接:arXiv:2607.05339
- 日期:2026 年 7 月 6 日提交
问题:GRPO 在 hard prompt 上为什么会卡?
先说清楚症状。GRPO 的 group-relative advantage 公式是:
这一坨在学生 rollout group 内算相对值。问题来了:如果 G 个 rollout 全部 reward=0,那 mean=0、std=0、advantage 全是 0,clip 之后 loss 也是 0。模型什么都没学到。
论文把这种 prompt 叫 hard prompt——学生的当前 on-policy support 落在"结构相似但全错"的一小坨区域里,正确解的模式在支持集之外。学生自己采样,永远采不到对的。
作者在 introduction 里那段话我觉得很到位:
The verifier is not the scarce resource: it can score a correct solution if one appears. The scarce resource is exploration coverage of the solution space.
我之前在做项目的时候也踩过这个坑。我们当时堆 rollout group size(从 8 加到 64),发现 hard prompt 的成功率几乎不动。后来才意识到:加大 group size 只是让学生在自己那一小块 support 里搜得更细,并没有让 support 本身扩大。
所以真正的瓶颈是:怎么把学生的 on-policy support 扩展到包含正确解模式?
TREK 的核心思路:把蒸馏从"模仿"变成"探路"
TREK 提出了一个我觉得很漂亮的视角——distillation as exploration support expansion。蒸馏的目标不是让学生复现老师的每一步,而是把老师发现的、但学生当前采不到的正确解模式,"拉"进学生的可达 support 里。一旦学生自己能采到这些模式了,普通的 GRPO 就能用 verifier reward 接着优化它们。
图 2 把这个机制画得很清楚:

图 2:TREK 作为"探索支持扩展"的工作机制。左边 GRPO 停滞:学生-only attempts 陷在窄 on-policy support 里,但 reward modes(绿色星)在 support 外。中间 Distill to explore:用 scaffolded teacher(带额外推理时 context 的同模型)生成验证解,从中挑出 top-r 最接近当前学生的解,前向 KL 把这些模式拉进学生可达 support。右边 Fresh rollouts recover modes:学生自己重新 rollout,现在能采到那些验证解,GRPO 可以继续用 verifier reward 优化。
注意中间图上的"scaffolded teacher"——这不一定是另一个模型。论文的 self-context 变体就是同一个学生模型加一个"failure-lesson memory"(失败教训记忆,约 40 条规则,由模型自己从之前 verifier 拒绝的尝试中总结出来)。输出端通用这个设计是它最实用的地方。
TREK 算法:路由 + 选样本 + 前向 KL + 回 GRPO
整个方法分四步,串成一个 staged pipeline:
Step 1:Hard prompt mining(路由)
对每个 prompt \(x\),先采 \(K\) 个无辅助学生 rollout,估一个通过率 \(p_S(x)\)。如果 \(p_S(x) \le \tau_{\mathrm{low}}\)(论文里 \(\tau_{\mathrm{low}}=1/8\)),就把这个 prompt 路由到"困难候选"集合。这一步是 prompt-level routing——只对难提示付老师调用费。
Step 2:Reachability 选样本(trajectory-level routing)
对路由到的 hard prompt,调用 proposal source 生成最多 \(M=4\) 个候选解。只保留通过 verifier 的轨迹,然后按当前学生的 token-level NLL(双向修剪过的——去掉最低 10% 和最高 2% 的 token 损失,避免 boilerplate token 把距离拉假、避免个别罕见 token 把距离推高)排序,取 top-\(r=2\) 个最"学生近端"的作为 \(\mathcal{Y}_{\mathrm{reach}}(x)\)。
这一步的设计是 TREK 的灵魂。直觉:如果一条老师轨迹离学生太远,那 student-forced NLL 训练的 update 步会非常大、容易把学生带偏。只选近端的,等于"小心地往学生已知方向的边缘拓展",而不是一巴掌甩到学生够不着的远处。
论文还给了一个 prompt-relative 版本 \(\Delta d(y_T|x)\) 作为分析变量(不是阈值),用来事后看每条轨迹离学生 baseline 的相对距离。
Step 3:短前向 KL 整合(proposal learning)
对累积的 \(\mathcal{D}_{\mathrm{scaf}}\),跑一次 teacher-forced NLL 更新:
注意是 forward KL(也叫 reverse KL 的反方向),用论文的话说"penalize missing proposal support"——学生必须覆盖 proposal 分布给定的每一个模式。这跟通常的"学生模仿老师"那种 reverse KL(防止学生跑太远)是相反的方向。forward KL 的"覆盖性"是 TREK 名字里 FKL 的核心。
更新窗口是 1 个 epoch,很快就结束。论文里这步的 TP size 单独是 2(数学),GRPO 主循环 TP size 是 16——不是主战场。
Step 4:回 GRPO(on-policy refinement)
前向 KL 阶段结束后,控制权交回普通 GRPO 流程。此时学生的 on-policy support 已经扩大,新鲜的学生-only rollouts 能采到那些原本采不到的验证解模式,verifier 给出正 reward,group-relative advantage 不再全是 0,GRPO 的 update 信号就回来了。
算法伪代码
Algorithm 1 TREK
1: Sample a batch of prompts B, init D_scaf ← ∅
2: for each x ∈ B do
3: Sample K unaided student rollouts, estimate p_S(x)
4: if p_S(x) ≤ τ_low then
5: Generate up to M proposal rollouts
6: Keep teacher trajectories that pass verifier
7: Rank retained by d_S(y_T|x), keep top-r as Y_reach(x)
8: if Y_reach(x) ≠ ∅ then
9: D_scaf ← D_scaf ∪ {(x, y_T) : y_T ∈ Y_reach(x)}
10: else
11: Defer x to next routing refresh
12: end if
13: else
14: Route x to ordinary GRPO with periodic re-evaluation
15: end if
16: end for
17: if D_scaf ≠ ∅ then
18: Apply short forward-KL proposal learning phase on D_scaf
19: Return updated prompts to normal sampling pool for next GRPO rollout
20: end if
21: Periodically refresh p_S, proposal availability, and reachability stats
附录 B.1 还提了个 pipelined scheduling——提案生成可以异步跑,跟主 GRPO 重叠,找到 \(r\) 个验证提案就提前停,缓存的 prompt 不再 hard 就跳过 forward-KL。这是工程上很值得借鉴的优化。
实验结果
主表:Qwen3 全规模 + AIME 2024/2025
| Model | Method | AIME 2024 | AIME 2025 |
|---|---|---|---|
| Qwen3-1.7B | Direct GRPO | 20.2 ± 1.3 | 17.5 ± 1.0 |
| Qwen3-1.7B | TREK (DeepSeek-V4) | 25.6 ± 1.5 | 20.3 ± 1.2 |
| Qwen3-1.7B | TREK (self-context) | 22.4 ± 1.2 | 18.9 ± 1.2 |
| Qwen3-1.7B | OPD (self-context) | 21.3 ± 1.3 | 16.0 ± 1.1 |
| Qwen3-8B | Direct GRPO | 47.9 ± 1.4 | 36.9 ± 1.2 |
| Qwen3-8B | TREK (DeepSeek-V4) | 51.1 ± 1.6 | 40.3 ± 1.4 |
| Qwen3-8B | TREK (self-context) | 49.6 ± 1.5 | 38.5 ± 1.1 |
| Qwen3-8B | OPD (self-context) | 48.4 ± 1.3 | 36.7 ± 0.9 |
| Qwen3-14B | Direct GRPO | 47.4 ± 1.1 | 39.7 ± 0.9 |
| Qwen3-14B | TREK (DeepSeek-V4) | 53.8 ± 1.4 | 44.6 ± 1.2 |
| Qwen3-14B | TREK (self-context) | 50.2 ± 1.2 | 42.7 ± 1.0 |
| Qwen3-14B | OPD (self-context) | 48.6 ± 1.2 | 40.2 ± 1.0 |
数字全部 avg@16,单 prompt 采 16 次取平均。
几个值得注意的点:
- 三个规模都涨了,没有出现"小模型涨大模型不涨"或者反过来。说明这个支持扩展机制在 student 容量不同的时候都有效。
- Self-context 比 OPD 强:作者专门加了个 OPD(on-policy distillation)对照组,用同样的 self-context proposal,但把 forward-KL 整合换成 on-policy distillation 风格的 supervision。结果 OPD 在 8B/14B 上比直接 GRPO 还略差(14B AIME 2025: 40.2 vs 39.7,差不多持平;8B AIME 2025: 36.7 vs 36.9 略低)。这个对照有力地说明:forward-KL 的"覆盖性"比单纯的 NLL imitation 更对症。
- DeepSeek-V4 比 self-context 强,但 self-context 仍然有效——这意味着哪怕你没有强模型 API,自己跟自己玩也能涨。
图 1 把主表可视化得直观:

图 1:主结果总览。(a)(b) Qwen3 各 scale 在 AIME 2025/2024 上的准确率,TREK 在所有 scale 上都超过直接 GRPO,DeepSeek-V4 proposal 优于 self-context。(c) ALFWorld 上 Qwen2.5-7B-Instruct 的成功率,GRPO 75.8 → TREK (DeepSeek-V4) 82.8 / TREK (self-context) 80.4。
Agent 任务:ALFWorld + ScienceWorld(Qwen2.5-7B-Instruct)
| Method | ALFWorld | ScienceWorld |
|---|---|---|
| GRPO | 75.8 ± 2.1 | 12.5 ± 1.7 |
| TREK (DeepSeek-V4) | 82.8 ± 2.7 | 26.7 ± 2.4 |
| TREK (self-context) | 80.4 ± 2.3 | 23.4 ± 2.1 |
| OPD (self-context) | 78.3 ± 2.4 | 21.6 ± 2.0 |
ScienceWorld 上 12.5 → 26.7(DeepSeek-V4),直接翻倍多。这个任务的 baseline 很低、reward 信号很稀疏,完美对症 TREK 的设计目标。
ALFWorld 按任务类型细分(Table 3,按 GRPO baseline 升序):
| Task Type | Base (step 0) | GRPO | TREK | Δ |
|---|---|---|---|---|
| Examine in Light | 0.0 | 56.2 ± 6.2 | 68.8 ± 3.2 | +12.6 |
| Heat & Place | 21.1 | 59.5 ± 2.4 | 78.6 ± 3.1 | +19.1 |
| Pick Two & Place | 0.0 | 63.2 ± 0.6 | 71.1 ± 2.9 | +7.9 |
| Cool & Place | 8.7 | 65.0 ± 5.0 | 72.5 ± 2.5 | +7.5 |
| Pick & Place | 37.9 | 91.2 ± 0.4 | 88.2 ± 2.9 | −3.0 |
| Clean & Place | 12.9 | 92.3 ± 3.8 | 100.0 ± 0.0 | +7.7 |
| Overall | 18.8 | 75.8 ± 2.1 | 82.8 ± 2.7 | +7.0 |
这个表我觉得信息量特别大。baseline 越低的任务,TREK 涨得越多——Examine in Light 涨 12.6,Heat & Place 涨 19.1;相反,Pick & Place 这种 base 已经 91.2% 的,TREK 不涨反微跌 3 个点。这跟论文的核心论点完全吻合:TREK 解决的是 support 不足,不是 reward shaping——该饱和的还饱和,缺探索的给探索。
训练效率:不止涨终值,更涨收敛速度
图 3 的曲线我个人认为是这篇论文最有故事感的图:

图 3:ALFWorld(左)和 ScienceWorld(右)上训练成功率随 step 的变化。两条线都很清楚——TREK (self-context) 几乎从 step 5 就把 GRPO 甩开,ALFWorld 在第 20 步就破 60%(GRPO 同时刻还不到 50%),ScienceWorld 上整体抬高了 5–10 个点。
论文里专门提到:ALFWorld 上 TREK 第 20 步就超过 60% 训练成功率,GRPO 同时刻还不到 50%,需要约 5 倍的步数才能追上。这说明 TREK 的真正价值不是 asymptotic ceiling,而是加速 hard task 的学习。
我看到这里有点怀疑——这种 train success rate 的早期优势,会不会只是因为 TREK 在早期就"作弊"地把验证解通过前向 KL 灌给学生了?我去找了 Table 2 的 eval 数据来交叉验证:训练结束后无辅助部署评估,TREK 仍然领先 7 个点(82.8 vs 75.8),而且 Table 3 里的标准差是 10 次独立端到端 run 的样本标准差,不是单 seed。所以不是 training-time overfit 的把戏。
训练配置(Table 5/6 关键超参)
| 参数 | 值 |
|---|---|
| \(K\)(无辅助 rollout 数,估计 \(p_S\)) | 16 |
| \(M\)(每个 hard prompt 的提案数) | 4 |
| \(\tau_{\mathrm{low}}\)(难度门控) | 1/8 |
| \(r\)(保留 top-r 学生近端验证提案) | 2 |
| Trim \((\alpha, \beta)\) | (0.10, 0.02) |
| Proposal learning window | 1 epoch |
| GRPO epochs(数学) | 10 |
| LR(数学 / ALFWorld) | 1e-7 / 7e-7 |
| KL coefficient(数学 / ALFWorld) | 5e-4 / 0.001 |
| TP size | 16 for GRPO, 2 for proposal learning |
| Compute | 2×8× H200 |
| Rollout engine | sglang(数学)/ vLLM(ALFWorld) |
注意 LR 都很小(1e-7),这点跟现代 RL 后训练里大家都把 LR 调低避免崩的现象一致。KL 系数上数学比 ALFWorld 小 2 倍——ALFWorld 轨迹长,token 多,KL drift 容易积累。
跟同期工作的对比:MEML-GRPO 是另一条路
我搜了下同期工作,发现一个非常对位的——MEML-GRPO(arXiv:2508.09670,AAAI 2026,字节跳动)。它也盯着"GRPO 在 hard prompt 上所有 rollout 都错、零奖励没信号"这个问题。两条路线对比一下:
| 维度 | TREK | MEML-GRPO |
|---|---|---|
| 核心思路 | 单 expert + prompt routing + reachability ranking | 多 expert(不同 system prompt)+ 互学习 + Hard Example Buffer |
| 老师来源 | 外部模型 / 同模型加 inference context | 同一个 base model 加 3 种不同 system prompt |
| 整合方式 | 短 forward-KL(SFT 风格) | 专家间 KL 蒸馏 + 周期性 HSFT |
| 新增 rollout 多样性 | 来自 hard prompt 上的 proposal source | 来自不同 system prompt 的多 expert |
| 路由机制 | 显式 \(p_S(x) \le \tau_{\mathrm{low}}\) 路由 | Hard Example Buffer 周期性回流 |
| 是否需要外部模型 | 可选(self-context 变体不需要) | 不需要 |
| 数学效果 | Qwen3-1.7B AIME 2024 涨 5.4 个点 | Qwen2.5-1.5B-Math 平均涨 4.89 个点 |
| Agent 效果 | ALFWorld +7.0 / ScienceWorld +14.2 | 没报 agent 任务 |
我的判断:两条路线不互斥,可以叠加。MEML-GRPO 强在"同模型多 system prompt"的零成本多样性,TREK 强在"显式 reachability ranking + forward-KL 覆盖性"。如果工程允许,最强组合可能是:多 expert system prompt 生成 verified candidates → TREK 风格的 reachability ranking + short forward-KL → 回到 GRPO。这其实就是把"扩展探索"和"扩展 on-policy support"两层都接上。
另外几个相关的方向值得提一下: - STaR/ReST 这一脉(Zelikman 2022、Touvron 2023、Li 2025)走的是 rejection sampling fine-tuning 路线,但论文里 STaR 用 uniform sampling 时会有"训练不平衡"问题(老 train 已经训会的题反复进 batch,hard 题被冷落),所以后来有 AdaSTaR、B-STaR、HS-STaR 来动态调采样。TREK 跟它们的关键区别是:TREK 用前向 KL 明确地"扩展 support",STaR 系列更多是在"已经能采到对的"区间里反复强化。 - V-STaR(Hosseini 2024)训练一个 verifier 用来 rerank,没改变 support。 - MEML-GRPO 的 Inter-Expert Mutual Learning 本质是 ensemble + 蒸馏,跟 TREK 的"前向 KL 覆盖性"是不同味道。
批判性思考:论文里没说清的几件事
这篇论文我整体很认可,但有几个点想较真一下:
1. Self-context 的"failure-lesson memory" 是个工程黑盒
附录 C 说这个 memory 大概 40 条规则,由模型自己从过去失败尝试里总结。这 40 条规则是怎么生成的?稳定性如何?换个 prompt 分布这套规则还适用吗? 论文没给 ablation。我怀疑 self-context 变体在不同任务上波动会比较大。
2. 前向 KL 的稳定性是隐患
forward KL 的"覆盖性"是有名地难训——它会强迫学生把概率质量放到 proposal 分布的整个 support 上,包括低概率的尾巴。论文用 trim 过的 NLL + reachability ranking 做了缓解,但没有 ablation 报告"如果不做 reachability ranking、把所有 verified trajectory 都拿来 forward-KL 会怎样"。直觉上应该会崩,但没看到对照。
3. 评估时都是 avg@16,不是 pass@k
论文报告的 AIME 数字都是 avg@16(每题采 16 次取平均通过率),不是 pass@16(采 16 次能不能至少出 1 次对的)。avg@16 反映的是"模型在常见模式上的稳定性",pass@16 反映的是"模型能不能偶尔做对难的事"。TREK 的整个论点是"扩展 support 让 hard prompt 上能采到对的",理论上 pass@16 应该涨得更明显——但论文没单独报这个。如果有人想复现验证,建议同时跑一下 pass@k。
4. "达到 comparable 水平" 的描述有点含糊
论文里说"unaided GRPO requires substantially more optimization steps to reach comparable levels"——5 倍的步数是图 3 上估的,没有具体表格数字。我看着图 3 大致是 5 倍左右(ALFWorld step 20 vs step 100+),但没有定量的"step-to-match" ablation 表。
5. OPD 对照选得有点弱
OPD 用的是 on-policy distillation 风格的监督,等于"reverse KL 模仿"或者"teacher-forced NLL minimization"。但 OPD 没有用 reachability ranking(它对所有 verified trajectory 都用)。所以这个对照其实混淆了两个变量:forward-KL vs reverse-KL 和 reachability-filtered vs full-set。严格说应该是 2×2 ablation。
6. DeepSeek-V4 是 2026 年的模型
论文里说"DeepSeek-V4 (DeepSeek-AI, 2026)"——这是论文同期/前置的最强开源模型之一。拿最强开源当 proposal source,涨 3-5 个点不算惊艳。但 self-context 变体在没有外部模型的情况下还能涨 2-3 个点,这就比较值钱了。
工程落地建议
如果你也在做 RL 后训练,TREK 给你三个可直接借鉴的设计点:
第一,按 prompt 通过率做显式路由。哪怕你不用 TREK 的整套流程,光是"先算 \(p_S(x)\),只对 \(p_S \le 1/8\) 的 prompt 调强老师"这件事,就比"对所有 prompt 一视同仁"省一大笔推理开销。这一招不依赖 TREK 的其他部分。
第二,把老师选择跟 forward-KL 拆开。老师用谁、context 加什么、模型规模差多少,这些可以独立调。proposal source 跟整合目标是解耦的——这是 TREK 框架最优雅的一点。
第三,前向 KL 别直接上。先做 reachability ranking 把"太远的"过滤掉,再上 forward-KL。否则前向 KL 的"覆盖性"会把学生带到一些它根本不该覆盖的低概率模式上。论文里 trim 过的 NLL + top-r ranking 就是干这个的。
我对这篇论文的整体评价
- 底层洞察:★★★★★。把"GRPO 在 hard prompt 上失效"明确归因到"on-policy support 不足"而不是"reward 设计差",并把蒸馏重新定位成"support expansion"——这个 reframing 我觉得很值钱。
- 方法设计:★★★★☆。forward-KL + reachability ranking + routing 这套组合很精巧,但有些工程细节(failure-lesson memory 生成、ranking 阈值)作者没完全展开,落到自己项目里可能得再调。
- 实验充分度:★★★★☆。三个规模、两个域、self-context vs external 对照、OPD 对照都有,但 pass@k 缺失、ablation 不够 2×2 是个遗憾。
- 实用价值:★★★★★。输出端通用这个性质让它在黑盒 API 模型上也能跑,工业部署很友好。
- 新颖性:★★★★☆。"routing + reachability + forward-KL"作为组合是新的,但每个组件(forward-KL 蒸馏、on-policy distillation、self-improvement)都不是 TREK 首创。真正的贡献是组合的视角和 prompt/trajectory 两层 routing 的框架。
一句话总结:如果你正在被 GRPO 的 hard prompt 问题困扰,TREK 提供的不是"某个新 loss",而是"一套把老师当探路器的工程化框架"。它最大的优点是模块化、输出端通用、可以无痛接到现有 GRPO 流水线里。
参考资料
- 论文:Yuanda Xu et al., TREK: Distill to Explore, Reinforce to Refine, arXiv:2607.05339, 2026.
- 同期对比:Weitao Jia et al., MEML-GRPO: Heterogeneous Multi-Expert Mutual Learning for RLVR Advancement, AAAI 2026.
- 方法背景:Shao et al., DeepSeekMath: Pushing the Limits of Mathematical Reasoning in Open Language Models, 2024(GRPO 原始论文).
- 同方向综述:Hosseini et al., V-STaR: Training Verifiers to Solve Math Word Problems, 2024;Zelikman et al., STaR: Self-Taught Reasoners, 2022;Koh et al., AdaSTaR, 2025.