Skip to main content
Not every row is worth training on. For SFT the rule is simple: keep the rows that passed, because those are the examples to copy. For RL the rule is stranger, and it is the one idea in this course that surprises people. A task the model always gets right teaches it nothing, because there is nothing to fix. A task it always gets wrong teaches it nothing either, because there is no good try to push toward. RL learns from the difference between tries of the same task. So you keep the tasks in the middle.

The mechanism

Here is the RL update in plain words, for the method most teams use today, GRPO. Take one task and its four tries. Score each. Subtract the group’s average score from each try. The tries above average get pushed up, the ones below get pushed down. If all four scored the same, every difference is zero and the update does nothing. A group like that is a unanimous group, and the library drops it before it reaches the trainer. The rule of thumb that follows is the 20 to 80 percent band: keep tasks the model currently passes between one time in five and four times in five. Below that it cannot learn yet. Above it, it already knows. Two more gates run at the same time.
  • Duplicates. The stand-in agent repeats itself, and so do real agents at low temperature. Identical tries carry no difference to learn from.
  • What the reward is really tracking. A model learns whatever gets the score. If longer replies happen to score higher, it learns to be long. The scan checks every reward against features like length and hedging, within each task, and warns when one predicts the reward. That warning is a reason to look at the judge before you train, not a reason to skip it.

Run it

The judge is lesson 3’s, unchanged.
The gates are the point of the call, so read four of them.
  • privileged leaks dropped: 4. Four replies recite the answer key the grader was given. Lesson 3’s judge does not read that key, so it passed three of them; the export would refuse them anyway. Both modes drop them first.
  • unanimous groups dropped: 10. Ten asks where every try scored the same: the asks that name no order, where the stand-in guesses an id on every try and never passes, and the asks it got right all four times. Nothing to learn there. Six groups are in the middle, and those sixteen rows are the RL set.
  • reward punishes reply length (corr -0.74). The judge wants the result in the first sentence, and the planted mistakes put a sentence in front of it, so shorter replies really are the better ones here. On a real judge this line means: check whether it is grading the job or the word count. The line under it says no single feature predicts the reward within an ask, which is the healthy reading of the same scan.
  • Use repeats=16 for a firmer band. Four tries is a coarse estimate of a task’s pass rate. The band is measured from sixteen in the source it cites. Sixty-four rows is a lesson, not a training set.

Where it comes from

  1. Shao, Z. et al. DeepSeekMath: Pushing the Limits of Mathematical Reasoning in Open Language Models. arXiv:2402.03300, 2024. GRPO: the group average as the baseline.
  2. Yu, Q. et al. DAPO: An Open-Source LLM Reinforcement Learning System at Scale. arXiv:2503.14476, 2025. Dropping unanimous groups while sampling.
  3. Yuan, Z. et al. Scaling Relationship on Learning Mathematical Reasoning with Large Language Models. arXiv:2308.01825, 2023. Keeping the passes for SFT, called rejection sampling.
  4. Gao, L., Schulman, J., Hilton, J. Scaling Laws for Reward Model Overoptimization. ICML, 2023. arXiv:2210.10760. Why a model learns what the score rewards rather than what you meant.
  5. Lambert, N. Reinforcement Learning from Human Feedback. arXiv:2504.12501, 2025. Chapters Rejection Sampling, Reasoning and Inference-Time Scaling (the 20 to 80 band) and Over-Optimization.

Next

Training is done when the held-out score moved: export, train, and prove it.
Last modified on September 20, 2026