开源圈这两年最热的省钱手艺,是把别人花大钱 RL 训出来的推理能力,用 on-policy 蒸馏搬进自己的模型。但 10 月 15 日出现在 arXiv 的一篇论文指出一个被忽略的坑:蒸馏时只看教师 RL 前后的「终点差」,可能把不该学的东西也学进来。这篇 Waypoint-OPD 已经冲上 Hugging Face 日榜第一,拿到 665 个赞。

终点差会骗人

先补一句背景。所谓 policy-shift 蒸馏,是把教师模型强化学习前后的 log 概率之差当作监督信号,用在学生自己生成的轨迹上。问题在于,这个「前后之差」是个端点快照:它说不清教师内部到底发生了什么。论文的核心观察是——同样的终点差,可能来自全程方向一致的稳定强化,也可能来自先往东、再往西、中途互相抵消的两次摆动。对学生来说这两种情况长得一模一样,但学习价值完全不同。

加一道方向门控

Waypoint-OPD 的解法很直接:从同一次 RL 训练里取一个中间 checkpoint 当「路标」,把总位移拆成早期位移和晚期位移,再在学生实际访问到的前缀上比较两段的方向。方向一致,说明教师的偏好演化是连贯的,放行终点位移;方向相反,说明这个位置的位移大概率是噪声或中间态,直接抑制。代价方面,论文称相比只传终点差,整个方法只多了一次冻结教师的打分。

实验与复现

实验配置:教师是 RL 训练过的 Qwen3-4B,学生是 Qwen3-8B、Qwen3-14B 和 Qwen3-30B-A3B,任务覆盖数学与代码推理。论文报告称,在全部六个「领域×学生」设置中,该方法都拿到了所对比蒸馏方法里的最高域平均分。消融实验里,把门控去掉或者随机打乱,数学推理成绩都会回落。复现层面,作者在 GitHub 放出了基于 verl 的实现(仓库 hhhbxloveai/WaypointOPD,以匿名实现名义发布),默认单机 8 卡,训练集用 DAPO-17K,评估用 AIME24,路标教师对应 Step600、最终教师对应 Step1200 两个 checkpoint——模型权重本身不含在仓库里。

真正有意思的点

一个容易被忽略的细节:教师只有 4B,学生反而是 8B 到 30B。这不是传统的「大教小」,而是把小模型 RL 出来的增益迁移给更大的底座——蒸馏的对象不是知识,而是强化学习带来的策略改进。另一个信号是,蒸馏研究正在从「学什么」转向「什么时候不学」:门控本质上是在给监督信号降噪,只在教师自身演化一致的位置才下注。对开源社区来说成本账也很清楚——RL 训练贵,但中间 checkpoint 是现成副产品,多一次打分开销几乎可以忽略。

所以下次跑 RL,别只盯着最终 checkpoint:中间那个「路标」,可能才是蒸馏时最值钱的资产。