SFT: The Baseline
The opener of Pillar 3. SFT steers behavior — format, style, instruction-following, tool-call formatting, refusal calibration — without injecting knowledge. Build a high-quality SFT mixture (general + domain + tool + safety), diagnose the three failure modes (catastrophic forgetting, mode collapse, format leakage), and know when to stop at SFT versus escalate to preference methods (FT13).
SFT steers behavior; it does not inject knowledge. It redirects an already-capable base model's probability mass toward a target behavior — format, style, instruction-following, tool-call formatting, refusal calibration — by training on (input, target) pairs. If the base could already produce the behavior unreliably, that's SFT (~90% of real fine-tuning). If it couldn't, no SFT will fix it — you need a different base, CPT (rarely), or (usually) RAG. The cardinal error is treating SFT as knowledge injection.
SFT is stage 1 of the post-training stack — the foundation everything else builds on. The modern pipeline is SFT → DPO → (GRPO for reasoning). DPO assumes the model already produces plausible responses in the right format (it just ranks them); GRPO assumes it already produces candidate solutions (it just rewards correct ones). Skip SFT and the preference/reasoning stages have no substrate to refine.
The SFT mixture encodes what you want the model to be, and imbalance has a predictable signature. A defensible mix: 40–50% general instruction-following (Magpie/teacher from FT05), 30–40% domain examples, 5–10% tool-use formatting, 5–10% safety calibration. Too much general → no domain lift; too much domain → catastrophic forgetting; too much tool-use → format leakage; too much safety → refusal-happy. Curation beats volume (LIMA, Magpie).
Three SFT failure modes account for almost every bad run, and all three are steering failures the loss curve can't catch. Catastrophic forgetting (too-narrow data — fix: mix general data, prefer LoRA). Mode collapse (low-diversity data — fix: diversity filtering FT06). Format leakage (template bugs FT07 — fix: tokenizer chat template, round-trip test). Only the three-axis eval — general benchmarks, domain lift, format compliance — detects them.