The decision tree, from the top
- Did you build a strong prompt baseline? If no — go do that first. Measure success on at least 50 representative inputs.
- Does the task need fresh or external knowledge? If yes — RAG. Stop here.
- Do you need consistent behavior, format, or style? If no — keep iterating on the prompt and few-shot examples. Stop here.
- Do you have at least 50 high-quality examples? If no — collect or synthesize them first (Track 2). Stop here until you do.
- Yes to all of the above? Fine-tune. Pick OpenAI managed (Track 3) for speed, or open-source PEFT (Tracks 4–5) for control.
Evaluation gates before training
- Defined success metrics. Pick at most three.
- Tested the base model with careful prompting. Record the baseline number.
- Tested with few-shot examples. Adding 3–5 examples often closes the gap; if so, do not fine-tune.
- Documented the gap. "Baseline 78%, few-shot 84%, target 95% → 11-point gap to close." Now you have a brief.
Licensing reality (2025–2026)
Open-weights does not mean fully unrestricted. Read the license before you ship.
| Family | License | Practical commercial reality |
|---|---|---|
| Llama 3 / 4 (Meta) | Llama Community License | Free for commercial use under 700M MAU. Above that, contact Meta. |
| Mistral / Mixtral | Apache 2.0 | Fully open. No restrictions. |
| Gemma 2 / 3 (Google) | Gemma Terms | Permissive with a usage policy on harmful content. Gemma 4 moved to Apache 2.0. |
| Qwen 3 (Alibaba) | Apache 2.0 | Fully open. No restrictions. |
| Phi (Microsoft) | MIT | Fully open. No restrictions. |
And ask: is your training data licensed for this use? Privacy concerns? Could the model reproduce copyrighted material at inference? Fine-tuning does not magically launder data rights.