Dissecting AI
From the paper: Priming Base Models for Agentic Post-Training: An Open Midtraining Recipe

Choosing Midtraining Recipes After SFT

Base-model proxy metrics did not reliably predict agent performance, so candidate and starting models are compared after the same supervised fine-tuning.

Read the paper ↗
The short version

What it is

  • Matched SFT comparison Fine-tune a midtrained model and its starting checkpoint with the same supervised examples, then compare how they perform on agent tasks.
  • Short-SFT signal A smaller fine-tuning run can offer an earlier read on a recipe, while a fuller run remains the stronger downstream check.

Why it matters

Improvements on base-model tests did not reliably predict later agent performance. Comparing candidate and baseline after the same fine-tuning makes recipe decisions more relevant to the model’s intended use.

Before we get into the evaluation setup, here is the short version: a midtraining recipe should be judged by what happens after the model gets the same supervised fine-tuning as its baseline. A shorter fine-tuning run can provide an early read, but it is a signal to check—not a substitute for the fuller downstream evaluation.

  1. Downstream relevance: Midtraining is meant to prepare a base model for later post-training. The canonical example is an agent that has to work through software tasks: a base-model score on repository understanding is not itself the agent outcome we care about. The broader point is that you want to evaluate the capability in the setting where it will be used.

  2. A fair comparison: If the candidate gets one SFT treatment and the baseline gets another, you cannot tell whether the difference came from midtraining or from the fine-tuning setup. So both get identical SFT. Think of it as comparing two starting points under the same recipe; that is not a perfect causal isolation of every interaction, but it avoids changing the downstream treatment between them.

  3. Speed versus confidence: Full SFT was close to saturation in these runs, while short SFT offered a quicker signal. In the blend-validation experiment, gains seen after short SFT carried over to full SFT. But Terminal-Bench was noisier and improved only in full-SFT pass@1, so I would not treat every early movement as decisive.

So why not just use base-model metrics to screen the recipes? The evaluation tracks measures such as repository-oriented tests and held-out code or trace likelihood, but these improved with midtraining without tracking post-training results closely enough to guide recipe decisions. The practical move is to keep those diagnostics, and compare the candidate with its starting checkpoint after matched SFT. Short runs help narrow the field; the full downstream evaluation is still the check that matters.

Read the deep dive

Why People Wanted It

A midtraining recipe is supposed to prepare a model for what comes next, not merely make it look better on a convenient base-model test. But a candidate can improve measures of code or repository understanding without those gains carrying through to agent use. The real question is whether the midtraining choice helps after post-training—and whether you can test that without confusing the recipe’s effect with a different fine-tuning setup.

The Core Move

Run the same supervised fine-tuning on both the midtrained candidate and its starting checkpoint, then compare their downstream results. The evaluation protocol states no new mathematical formula: its key control is identical SFT on both sides.

Quiz
Why does the evaluation apply identical SFT to a midtrained model and its starting checkpoint?
To ensure the candidate receives more SFT than the control.
To guarantee that every benchmark improves after short SFT.
To compare their downstream outcomes while holding the SFT setup fixed.
To replace downstream evaluation with base-model metrics.

Why the Starting Checkpoint Needs the Same SFT

Here is the deeper evaluation logic: identical SFT makes the starting checkpoint a matched control, so the comparison asks what midtraining changed under a shared downstream treatment. In the protocol, each midtrained model is compared with its starting checkpoint after identical SFT. The post-training pipeline is the ultimate measure of success, while base-model post-trainability metrics and pretraining general-capability benchmarks are also tracked.

This does not isolate every possible interaction between midtraining and SFT; it gives a practical comparison under the same SFT recipe. The evaluation also checks general-capability benchmarks for regressions. So what if waiting for the full downstream run is too slow?

Why Short SFT Can Be an Early Signal

Now the more practical layer: short SFT is used as a quicker signal, not as a replacement for the full evaluation. The protocol compares both a short and a full SFT budget, and reports that gains seen after short SFT carried over to full SFT in the blend-validation experiment. That makes a short run useful for screening a recipe, while the full run remains the stronger check for the main claims.

The signal is not equally clean on every benchmark: Terminal-Bench was noisier in that experiment, and improved only in full-SFT pass@1. So when should you trust an early signal, and when should you wait for the fuller comparison?

Minimal Causal Code

This sketch shows the control visibly: both starting points receive the same SFT data and update rule, then their downstream scores are compared. The loop is illustrative, not a claim about the paper’s training implementation.

for label, model in [("candidate", midtrained_model), ("control", starting_model)]:
    for batch in identical_sft_batches:
        loss = assistant_sft_loss(model, batch)
        loss.backward()
        optimizer_step(model)
        zero_grad(model)

    score = evaluate_agent_tasks(model)
    print(label, score)

What You Gain, and What You Lose

You gain a downstream-facing comparison that asks whether the recipe helps after a shared SFT stage, rather than relying on base-model proxies that did not track post-training results closely enough to guide recipe decisions. Short SFT can make that comparison quicker, and the reported blend-validation gains carried over to full SFT.

You lose the certainty of treating a short run as a final verdict: benchmark behavior can be noisy, and the protocol’s short-SFT result is an early signal. You also pay for running SFT and downstream evaluations on both candidate and control. The point is not that one proxy or one short run settles the recipe choice; it is that the candidate must be judged in the same downstream conditions as its baseline.

Core Takeaway

Judge a midtraining recipe after the same SFT as its starting checkpoint; short SFT is a useful signal, not the final verdict.