Train specialists separately. Distill them back into one model.
That is the central pattern in Kimi K3 and DeepSeek-V4. Domain and reasoning effort are separate specialization axes. GLM uses a related idea, but its teachers are snapshots from sequential training stages.
Kimi K3 post-training: 9 teachers -> 1 student
Each teacher is a separate full policy specialized by domain and reasoning effort. MOPD selects the matching teacher for each sampled domain-effort pair and transfers its token distribution into one trainable student.
What is r? rOPDd is the dense token-wise loss signal, one scalar for every output token yt. Its sign and size show how much more or less probability the matched teacher assigns than the student.
What is Rmax? A positive clipping cap. It limits |r| to Rmax so no single token creates an extreme signal. Kimi does not disclose its numeric value. §4.1.3, pp. 13-14
Where the recipes actually differ
Short version: Kimi is the clearest domain x effort grid, DeepSeek scales the teacher bank, and GLM uses sequential checkpoints to repair forgetting.
| Decision | Kimi K3 | GLM-5.2 lineage | DeepSeek-V4 |
|---|---|---|---|
| Specialists | Parallel: 3 domains x 3 efforts = 9 teachers. | Sequential: Reasoning RL, Agentic RL, then General RL. | Parallel: per-domain SFT + RL, then >10 teachers. |
| SFT | Prior-Kimi agent trajectories, verification, human annotation, XTML. | General, reasoning, coding + agent; rejection sampling and masked bad spans. | High-quality domain SFT; data sizes and mixture are not disclosed. |
| RL and rewards | K2.5-derived algorithm; verifiers + tournament GRM; partial rollouts. | GRPO + IcePop for reasoning; async agent RL; rules + ORM + GRM for general. | GRPO specialists; tests for verifiable tasks; rubric-guided GRM otherwise. |
| Reasoning effort | Max first, then budget annealing to high and low. | Per-turn thinking control; no disclosed 3-level RL effort ladder. | Non-think/high/max via different RL penalties and context windows. |
| Why distill | Unify the 9 domain-effort teachers. | Recover capabilities degraded by sequential objectives. | Unify >10 experts and avoid mixed-RL or weight-merge degradation. |
| Model merging | No parameter merge reported. | No parameter merge reported. Figure 5 uses teacher logits and a separate General RL weights path. | Explicitly not traditional weight merging. Uses logits-level alignment. |
| Final checkpoint | One unified K3 target + separate EAGLE-3 draft. | Output of cross-stage OPD; selection rule not disclosed. | One unified student; teacher weighting and selection rule not disclosed. |
| DPO / classic RLHF | Neither is reported as a stage. | Neither is reported as a stage. | No DPO; conventional scalar RLHF rewards are replaced by GRM scoring. |
Reasoning RL, Agentic RL, and General RL are not the same thing
GLM is the only report here that names all three as sequential stages: Reasoning RL -> Agentic RL -> General RL -> cross-stage OPD. Kimi and DeepSeek cover similar capability families through specialist domains instead.
Reasoning RL
Optimizes solving problems with a checkable outcome: math, science, code, and tool-integrated reasoning. Rewards are usually tests, rules, or binary outcome judges.
Mapping: explicit GLM stage; inside Kimi's general-task domain; math/reasoning specialists in DeepSeek.
Agentic RL
Optimizes multi-step action: planning, tool calls, search, SWE, terminal work, and recovery from environment feedback. Rollouts are long, stateful, and often asynchronous or resumable.
Mapping: explicit GLM stage; Kimi general-agent and coding-agent domains; DeepSeek agent and coding specialists.
General RL
Optimizes broad response quality: correctness, instruction following, factuality, emotional intelligence, writing, role-play, and translation. Rewards mix rules, ORMs, GRMs, and human style anchors.
Mapping: explicit GLM stage. Kimi's general-task expert is only a partial analogue; DeepSeek reports instruction-following specialists, not a named General RL stage.
What the papers actually say about trainer efficiency
None says that the entire post-training run is low precision. The verified claims are selective: particular weights, activations, rollout engines, or stages use lower precision, while scheduling and state reuse remove the largest stalls.
Kimi K3
- QAT starts at SFT; MXFP4 internal MoE weights + MXFP8 activations. RL rollout uses the same scheme.
- Partial rollouts pause stragglers and resume them later.
- Million-token KV/KDA and sandbox states are saved and resumed instead of recomputed.
GLM lineage
- INT4 QAT is stated for SFT only. Rollout inference later uses FP8.
- Async Agentic RL separates generation and training GPUs; TITO and direct importance sampling control drift.
- MTP and prefill-decode disaggregation reduce long-tail latency; OPD uses group 1 and batch 1,024.
DeepSeek-V4
- Post-training QAT covers teachers/reference/student; native FP4 is used for rollout and inference.
- Teacher weights are loaded on demand; last-layer states are cached instead of full logits.
- Token write-ahead logs resume interrupted rollouts without length-biased regeneration.
What the research team can learn from these pipelines
Separate domain and effort as two control axes
A coding expert and a max-effort expert solve different problems. Kimi makes the full cross-product explicit.
Distillation is the integration stage
RL creates specialists. OPD is what turns them into one deployable policy and, for GLM, restores capabilities lost later in training.
Use logits, not parameter averaging
All three transfer behavior through teacher distributions. DeepSeek explicitly prefers this to traditional weight merging.
Match the reward to the task
Use tests and state verifiers where possible. Use rubric-guided GRMs for work that cannot be checked deterministically.
Trainer efficiency is mostly a systems problem
Selective low precision helps, but resumable rollouts, KV and sandbox reuse, async generation, and teacher scheduling are just as central.
Important choices are still undisclosed
Teacher mixture weights, student initialization for Kimi/DeepSeek, and final checkpoint-selection rules are not fully specified.