Overview of OPD

Author

Updated

Jun, 15, 2026

Introduction

现代LLM的训练一般划分为多个阶段:

  1. pre-train: 用于帮助模型掌握世界知识
  2. mid-train: 弥补 pre-train 和 SFT 之间的鸿沟,提高模型的 long context 能力以及初步的指令跟随能力 (Zhang et al., 2025).
  3. SFT: 提高模型的指令跟随能力
  4. RL: 通过 RLHF (Ouyang et al., 2022) 进行对齐或者通过 RLVR (Guo et al., 2025) 来提高模型的 reasoning 能力。

我们在本文中探讨 SFT 阶段的一些方法,虽然也有一些工作尝试直接从 base model 直接进行 RL 的训练,比如 DeepSeek-R1 (Guo et al., 2025), 但是模型最终的表现较差。

在 SFT 阶段,我们一般会使用一个教师模型生产的数据来训练我们的 student model, 通过让 student model 模仿teacher model的行为,我们可以提高student model的指令跟随能力。 但是,随着训练的进行,模型会开始过拟合,因此大部分模型的SFT只训练 1 epoch.

一个比较简单的做法是在SFT的基础上加入 rejection sampling (RS), 即先让student model进行rollout, 只保留rollout正确的那些样本来训练。 RS-SFT 的效果比SFT更好,但是,这并没有解决compounding问题。

与SFT相反,在RL训练过程中,student model 进行rollout, verifier 给予奖励,然后student model更新策略来进行提升,模型的上限取决于我们的verifier. 虽然RL的性能更强,但是其需要的算力也更多,而SFT训练起来则非常高效。

MethodProsCons
SFT- 训练高效,易于实现
- 对算力需求较低
- 容易过拟合
- 依赖高质量教师数据
- 难以通过反馈进一步提升模型能力
RL- 能够通过反馈信号进一步提升模型
- 可以针对特定奖励/指标进行优化
- 鲁棒性强
- 算力消耗大,训练成本高
- 实现复杂度高
- 调试困难,易出现不稳定或退化
- reward 设计挑战大,鲁棒性依赖于verifier

本文中,我们将介绍一种结合RL和SFT各自优势的 On Policy Distillation (OPD) 方法。

  1. Guo, D., Yang, D., Zhang, H., Song, J., Wang, P., Zhu, Q., Xu, R., Zhang, R., Ma, S., Bi, X., Zhang, X., Yu, X., Wu, Y., Wu, Z. F., Gou, Z., Shao, Z., Li, Z., Gao, Z., Liu, A., … Zhang, Z. (2025). DeepSeek-R1 incentivizes reasoning in LLMs through reinforcement learning. Nature, 645(8081), 633–638. 10.1038/s41586-025-09422-z back: 1, 2
  2. Ouyang, L., Wu, J., Jiang, X., Almeida, D., Wainwright, C. L., Mishkin, P., Zhang, C., Agarwal, S., Slama, K., Ray, A., Schulman, J., Hilton, J., Kelton, F., Miller, L., Simens, M., Askell, A., Welinder, P., Christiano, P., Leike, J., & Lowe, R. (2022). Training language models to follow instructions with human feedback. https://arxiv.org/abs/2203.02155
  3. Zhang, C., Neubig, G., & Yue, X. (2025). On the Interplay of Pre-Training, Mid-Training, and RL on Reasoning Language Models. https://arxiv.org/abs/2512.07783

Off Policy Distillation

在介绍OPD之前,我们先回顾一下 off policy distillation, 也就是传统SFT的工作原理。

我们令 (x,y)D(x,y)\sim\mathcal{D} 为一个 prompt-response pair, 令 πθ\pi_\thetaπT\pi_T 分别为学生模型以及教师模型, 采样时,我们记上下文为 ct=(x,y<t)c_t=(x, y_{<t}), 这样 πθ\pi_\thetaπT\pi_T 采样的概率分布分别为 πθ(ct)\pi_{\theta}(\cdot\mid c_t), πT(ct)\pi_T(\cdot\mid c_t).

原始的knowledge distillation 要求学生模型模仿教师模型的行为,我们可以用 KL divergence 来量化模仿的好坏,对应的目标函数为

LKD(θ)=E(x,y)D[KL(πT(yct)πθ(yct))]\htmlId{kd_objective}{\begin{equation} \mathcal{L}_{KD}(\theta) = \mathbb{E}_{(x,y)\sim\mathcal{D}}\left[\mathrm{KL}(\pi_T(y\mid c_t)\mid\mid \pi_\theta(y\mid c_t))\right] \end{equation}}

我们对这个目标函数进行简化,就得到:

LKD(θ)=E(x,y)D[KL(πT(yct)πθ(yct))]=E(x,y)D[yAπT(yct)logπT(yct)πθ(yct)]=E(x,y)D[yAπT(yct)logπθ(yct)]=E(x,y)D[logπθ(yct)]\begin{aligned} \mathcal{L}_{KD}(\theta) &= \mathbb{E}_{(x,y)\sim\mathcal{D}}\left[\mathrm{KL}(\pi_T(y\mid c_t)\mid\mid \pi_\theta(y\mid c_t))\right]\\ &=\mathbb{E}_{(x,y)\sim\mathcal{D}}\left[\sum_{y'\in\mathcal{A}}\pi_T(y'\mid c_t)\log\frac{\pi_T(y'\mid c_t)}{\pi_\theta(y'\mid c_t)}\right]\\ &=\mathbb{E}_{(x,y)\sim\mathcal{D}}\left[-\sum_{y'\in\mathcal{A}}\pi_T(y'\mid c_t)\log\pi_\theta(y'\mid c_t)\right]\\ &=\mathbb{E}_{(x,y)\sim\mathcal{D}}\left[-\log\pi_\theta(y\mid c_t)\right] \end{aligned}

这里 A\mathcal{A} 是所有可能的回答,在SFT中, 我们假设 πT\pi_T 就是 ground truth, 对于给定样本,正确答案概率为 11, 其余答案全是 00, 因此

πT(yct)=1(y=y)={1, if y=y0, otherwise\pi_T(y'\mid c_t) = \mathbf{1}(y'=y) = \begin{cases} 1, &\text{ if } y'=y\\ 0, &\text{ otherwise} \end{cases}

针对不同的教师模型, 我们可以分类如下:

  1. Black-box teacher models: 一般是商业化模型,比如 Claude-4.7, Gemini-3.0 等,这类模型我们只能获取其输出。
  2. Different-family teacher models: 开源的不同结构或者不同训练方式的模型,这类模型由于tokenizer/training recipe不同,我们很难对齐教师模型和学生模型的输出模式
  3. Same-family teacher models: 开源的相同结构以及相同训练方式的模型,这类模型一般tokenizer相同,架构相同,chat template也相同,不同的点在于model size, 比如 Qwen3 (Yang et al., 2025) 系列模型

总的来说,蒸馏的难度为 black-box teacher models > Different-family teacher models > Same-family teacher models.

  1. Yang, A., Li, A., Yang, B., Zhang, B., Hui, B., Zheng, B., Yu, B., Gao, C., Huang, C., Lv, C., Zheng, C., Liu, D., Zhou, F., Huang, F., Hu, F., Ge, H., Wei, H., Lin, H., Tang, J., … Qiu, Z. (2025). Qwen3 Technical Report. https://arxiv.org/abs/2505.09388

On Policy Distillation

基于前文的讨论,我们可以看到,off policy distillation 很容易过拟合,且上限不高,但是使用RL又需要比较高的算力。 我们能否结合RL的 on-policy 的特点和SFT的训练高效性呢?答案是 on policy distillation. On policy distillation 最初由 MiniLM (Wang et al., 2020) 提出,Thinking Machine Lab 对其进行了系统的验证。 现在,on policy distillation 已经成为了一个快速提高模型能力的方法

前文已经提到,off policy distillation 要求学生模型模仿 teacher model的输出 (logits or tokens), 这忽略了student model本身的能力. on-policy distillation则是相反,让教师模型来纠正学生模型的输出(logits), 从而让学生模型学习更快更好。

这个时候,我们的目标函数就变成了

LOPD(θ)=E(x,y)D[KL(πθ(x)πT(x))]\htmlId{opd_objective}{\begin{equation} \mathcal{L}_{OPD}(\theta) = \mathbb{E}_{(x,y)\sim\mathcal{D}}\left[\mathrm{KL}(\pi_\theta(\cdot\mid x)\mid\mid \pi_T(\cdot\mid x))\right] \end{equation}}

通过 probability chain rule, 我们可以将上面的 目标函数 转换为token层面的等价形式

LOPD(θ)=E(x,y)D,y^tπθ(c^t)[i=1TKL(πθ(c^t)πT(c^t))]\begin{equation} \mathcal{L}_{OPD}(\theta) = \mathbb{E}_{(x,y)\sim\mathcal{D}, \hat{y}_t\sim\pi_\theta(\cdot\mid \hat{c}_t)}\left[\sum_{i=1}^T\mathrm{KL}(\pi_\theta(\cdot\mid \hat{c}_t)\mid\mid \pi_T(\cdot\mid \hat{c}_t))\right] \end{equation}

这里 c^t=(x,y^<t)\hat{c}_t=(x, \hat{y}_{<t}), TT 为sequence length.

可以看到,现在学生模型的上下文不再是教师模型的输出 ct=(x,y<t)c_t=(x, y_{<t}), 而是学生模型自己输出的上下文。教师模型通过给学生模型输出的每个token进行打分来提供dense reward.

OPD效果好的原因主要有以下几点:

  1. cheaper sampling: 教师模型只需要执行一次prefill 就可以完成一次指导,而prefill效率与开销要远低于decoding.
  2. on-policy: on policy 让学生模型可以不停改进自己的策略
  3. Reverse KL: 我们在 KL divergence 中已经介绍了forward KL 与 reverse KL的不同之处,前者是mean seeking, 后者是mode seeking. 而mode seeking能够保证模型取得更好的表现。

Self Distillation

OPD的问题在于,其要求教师模型满足same-family, 而实际上,很多教师模型是black box model, 比如人类或者different family, 比如 DeepSeek-R1 (Guo et al., 2025) 与 Qwen3 [Qwen3] 针对different family OPD, 我们可以使用self-distillation, 即我们的教师模型和学生模型是同一个,我们通过prompt engineering或者in context learning 来将模型转换为teacher model, 相关工作有 SDFT (Shenfeld et al., 2026) 以及 OPSD [OPSD] 等。

Analysis

will brown (Brown, 2026) 从梯度的角度对不同训练范式进行了分析。

首先是RLVR, RLVR的reward基于最终的答案是否正确,而给出 1 (correct) 或者 0 (otherwise) 的奖励。 对于 GRPO (Shao et al., 2024) 而言,一个sequence中的每个token共享advantage, 因此大部分token可能对答案的正确性并没有太多贡献,它们只是恰好在正确的sequence里而已。 而我们在RL中使用larg batch size, low learning rate的原因是这些相关性比较低的token可以互相抵消,RL可以凭借sparse reward来提升模型的表现。

对SFT而言,每个token都有一个one-hot label, 因此其reward是dense的。 但是,SFT的梯度并不是zero-mean的,这意味着随着训练进行,模型会逐渐靠近πT\pi_T或者训练数据分布,这也就降低了模型的泛化能力。 尽管SFT的梯度不是zero-mean, 但是由于数据的多样性,能够保证模型不会被OOD sample带偏,并且SFT本质上是强化模型已经掌握或者半掌握的知识,这也就避免了模型训练的崩塌。 总的来说,SFT是一个biased but unconcentrated method.

对于 OPD 来说,与OPD一样,其reward 也是 dense 的。 但是在OPD中,学生模型倾向于从输出差异比较大的哪些 ‘pivot token’ 中进行学习,因此,一小部分token占据了大部分的training signal.

最终,不同方法的对比如下所示

MethodDensityBiasConcentrationUses
RLsparseunbiaseddiffuselarge batches, patient
SFTdensebiased toward datadiffusedata is on-distribution
OPDdensebiased toward teacherdiffuseteacher is same-family
OPSDdensebiased toward self+hintconcentrated on pivot tokenaggressive clipping is in place

Unified Framework

我们还可以使用一个统一的公式来统一这些方法

θJ(θ)=ExD,y^μα(x)[iAt(x,y^)θlogπθ(y^ty^y^<t)]\nabla_\theta J(\theta) = \mathbb{E}_{x\sim\mathcal{D}, \hat{y}\sim \mu_\alpha(\cdot\mid x)}\left[\sum_{i}A_t(x,\hat{y})\nabla_\theta\log \pi_\theta(\hat{y}_t\mid \hat{y}\mid \hat{y}_{<t})\right]

其中

μα=απθ+(1α)πdataAt=λ[logπT(y^tcT)logπθ(y^ty^<t)]+(1λ)[R(y^)b(x)]\begin{aligned} \mu_\alpha &= \alpha \pi_\theta + (1-\alpha)\pi_{data}\\ A_t &= \lambda\cdot\left[\log \pi_T(\hat{y}_t\mid c_T)-\log \pi_\theta(\hat{y}_t\mid \hat{y}_{<t})\right] + (1-\lambda) [R(\hat{y})-b(x)] \end{aligned}

这里

这样,不同的方法就是不同的参数配置

MethodAAλ\lambdaπT\pi_TNote
SFT0011δ\deltateacher is the ground truth
RL1100Noneon-policy
OPD1111external same-family modeltokenizer + recipe match
OPSD1111self conditioned on yy^*teacher choice is what shifts

Find a teacher

五种策略:

  1. 单任务prompt optimization: 针对某个具体任务,寻找一个合适的prompt作为教师模型
  2. 训练一个模型,专门把复杂的包含答案的hard hint改写成minimal hint
  3. online RL: 让教师模型和学生模型一起进化
  4. RL + OPD: 同时使用教师的KL信号和环境的奖励信号
  1. Brown, W. (2026). On SFT, RL, and on-policy distillation. https://x.com/willccbb/status/2050038277454143918?s=46&t=Y6UuIHB0Lv0IpmFAjlc2-Q
  2. Guo, D., Yang, D., Zhang, H., Song, J., Wang, P., Zhu, Q., Xu, R., Zhang, R., Ma, S., Bi, X., Zhang, X., Yu, X., Wu, Y., Wu, Z. F., Gou, Z., Shao, Z., Li, Z., Gao, Z., Liu, A., … Zhang, Z. (2025). DeepSeek-R1 incentivizes reasoning in LLMs through reinforcement learning. Nature, 645(8081), 633–638. 10.1038/s41586-025-09422-z
  3. Shao, Z., Wang, P., Zhu, Q., Xu, R., Song, J., Bi, X., Zhang, H., Zhang, M., Li, Y. K., Wu, Y., & Guo, D. (2024). DeepSeekMath: Pushing the Limits of Mathematical Reasoning in Open Language Models. https://arxiv.org/abs/2402.03300
  4. Shenfeld, I., Damani, M., Hübotter, J., & Agrawal, P. (2026). Self-Distillation Enables Continual Learning. https://arxiv.org/abs/2601.19897
  5. Wang, W., Wei, F., Dong, L., Bao, H., Yang, N., & Zhou, M. (2020). MINILM: deep self-attention distillation for task-agnostic compression of pre-trained transformers. Proceedings of the 34th International Conference on Neural Information Processing Systems.

Analysis on OPD

Comparison of different methods

SFT

在 SFT 中, 我们使用了采集好的数据集,这个数据集形成了一个数据分布,SFT 要求模型的分布完全能 cover 数据分布。 这就导致了灾难性遗忘。 但是另一方面,这种性质可以让模型快速学习到新知识,因此 SFT 适合作为 cold start.

RL

RL 的数据来源模型本身,当 verifier 或者 reward model 设计比较好的时候,我们可以很好的提高模型的表现。

OPD

reading notes on the blog (wh., 2026)

对于 OPD 来说, OPD 继承了 RL 的 on-policy 性质,同时像 SFT 一样,模型又能够接收 teacher signal. 但是与 RL 基于 advantage 对 rollout 进行加权不同, OPD 使用 log ratio 来实现加权。

OPSD 进一步使用模型本身作为 teacher model, 但是最近研究发现 OPSD 会让模型更关注 style token, 而不是 reasoning token. 这个问题的解决方法是使用 per-token clipping 机制。

  1. SFT 的 reward signal 更 dense, 但是这会影响模型原有表现
  2. RL 的更新与数据相关,数据 diverse, 更新就慢,数据 consistent, 更新就快
  3. RL 更新更稀疏,只有一部分网络参数会被更新,SFT 更新更加 dense

RL 会学习与当前 policy 最近的 optimal policy. 而 SFT 对应的 target policy 可能非常远

为什么 OPD 的 student model 会超过 teacher model:

  1. teacher model 基于 student model 的输出给予建议,student model 可以学习
  2. KL matching 并不是 reward maximization, KL matching 有更高的biias

MiMo-V2-Flash (Team et al., 2026)

总结: RL 和 OPD 效果比 SFT 更好的原因是因为 on-policy (Chen et al., 2025).

  1. Chen, H., Razin, N., Narasimhan, K., & Chen, D. (2025). Retaining by Doing: The Role of On-Policy Data in Mitigating Forgetting. https://arxiv.org/abs/2510.18874
  2. Team, C., Xiao, B., Xia, B., Yang, B., Gao, B., Shen, B., Zhang, C., He, C., Lou, C., Luo, F., Wang, G., Xie, G., Zhang, H., Lv, H., Li, H., Chen, H., Xu, H., Zhang, H., Liu, H., … Yue, Z. (2026). MiMo-V2-Flash Technical Report. https://arxiv.org/abs/2601.02780
  3. wh. (2026). SFT, RL, and On-Policy Distillation Through a Distributional Lens. https://nrehiew.github.io/blog/sft_rl_opd/

Recent progress

multi teacher OPD

DeepSeek-V4 (DeepSeek-AI, 2026) 训练了十几个 specialist, 然后使用加权的方式来训练模型。 MiniCPM-5 [@MiniCPM5] 训练了不同的 specialist, 然后再进行 OPD.

KAT-Coder-V2 (Li et al., 2026) 采用了先训练不同 specialist 然后进行 OPD 来训练模型的做法,与 DeepSeek-V4 不同,KAT-Coder-V2 每次只选取对应任务的专家作为 teacher.

MiMo-V2-flash (Team et al., 2026): multi-teacher OPD

优势:

  1. OPD 可以保持 teacher model 的表现, 并且有 token level credit assignment, fast covergence, 避免了 exposure bias, distribution mismatch
  2. modular and scalable: 每个专家可以独自进行优化,还可以与 ORM 进行结合
  3. 可以让 teacher 和 student 一起进化

OPD 将 reverse KL 写成了 RL objective 的形式,用于统一 ORM

  1. DeepSeek-AI. (2026). DeepSeek-V4: Towards Highly Efficient Million-Token Context Intelligence. https://huggingface.co/deepseek-ai/DeepSeek-V4-Pro/blob/main/DeepSeek_V4.pdf
  2. Li, F., Zhang, H., Huang, H., Wang, J., Hao, J., Yuan, K., Li, M., Zhang, M., Xu, P., Zhuang, W., Shao, Y., Feng, Z., Tang, C., Wang, C., Tong, C., Yang, F., Xiong, G., Gao, H., Gao, H., … Chen, B. (2026). KAT-Coder-V2 Technical Report. https://arxiv.org/abs/2603.27703
  3. Team, C., Xiao, B., Xia, B., Yang, B., Gao, B., Shen, B., Zhang, C., He, C., Lou, C., Luo, F., Wang, G., Xie, G., Zhang, H., Lv, H., Li, H., Chen, H., Xu, H., Zhang, H., Liu, H., … Yue, Z. (2026). MiMo-V2-Flash Technical Report. https://arxiv.org/abs/2601.02780