What you'll learn: how to pick the cheapest fix for a failing answer: a prompt change, retrieval, structured output or a fine-tune. You get a decision table, what a fine-tune needs and never fixes, and a break-even sketch with illustrative numbers. You measure your own model's behaviour.
At a glance
Figure 1. From a failing answer to the cheapest fix
How to read this: each question is cheaper to act on than the one below it, so you reach a fine-tune only after the cheaper ones fail on your own evaluation set.
- Measure first: without an eval set and a baseline you cannot tell whether a fix worked.
- Facts that change belong in retrieval, not in model weights.
- Output shape problems start with a schema and validation.
- A fine-tune needs labelled examples, a held-out eval set and an owner.
- It does not fix stale facts or missing access control.
Scenario
Composite scenario, not a real company. Lumen Industrial Supply's service desk wants emails sorted into a fixed list of categories, and a vendor says to fine-tune a model. The desk has a year of hand-sorted emails and a long prompt full of examples. Sales engineers also say the assistant sometimes quotes an old datasheet limit. The FDE must say which problem a fine-tune would fix, which it would not, and what to measure first. All numbers are illustrative.
What you will be able to do
- Match a failing answer to a prompt, RAG, structured output or a fine-tune.
- List what a fine-tune needs and name two problems it does not fix.
- Compute a break-even volume from your own numbers.
- Prepare a chat-style training file whose splits hold no golden-set question.
Prerequisites
- Golden set, Structured output and Access control in RAG.
- Theory: Models and routing.
Core ideas
Match the problem to the cheapest fix
Figure 2. The four levers and where they sit in a request
How to read this: levers 1 to 3 change what you send or check in your own code; lever 4 changes the model, so it comes last.
| Problem | Try first | Fine-tune only if |
|---|---|---|
| Facts change (datasheets, prices) | RAG: update the document, re-ingest | never as the main fix |
| Output must have a fixed shape | Structured output plus validation | schema and prompt still fail on your eval set |
| House style or tone | Prompt with a few examples | examples no longer fit the prompt |
| Closed vocabulary (fixed labels) | Prompt with the label list, output checked against it | the prompt is below your bar and you have labelled data |
| Cost or latency at high volume | Shorter prompt, prompt caching, another model | you pass break-even |
| Different data per caller | Retrieval filter by caller | never |
How to read this: find the failure, do the middle cell, and measure before reading the right cell.
Anthropic's prompt engineering overview notes that latency and cost can sometimes be improved more easily by choosing a different model (as of 2026-11-04).
What a fine-tune needs
Anthropic's glossary defines fine-tuning as further training a pretrained model on extra data, so it mimics that dataset's patterns.
| Need | What it means | Owner |
|---|---|---|
| Labelled examples | Prompt and correct answer pairs, checked by an expert | Lumen's service desk |
| Eval set kept apart | Examples training never sees | FDE with the customer |
| A baseline | The prompt-only score on that set | FDE |
| Retraining plan | A new run and eval when the model or policy changes | A named owner |
| Permission for the data | Emails can contain personal data | Customer's privacy team |
Provider facts as of 2026-11-04; check the source before relying on them:
- OpenAI's guide says to set up evals first and hold data out as a control group, with 10 examples as the minimum and 50 as a suggested start.
- It also says the platform is being wound down and is closed to new users.
- Anthropic's glossary says the Claude API does not currently offer fine-tuning.
So the provider decides whether a route exists and for how long.
What a fine-tune does not fix
Predict first. Lumen fine-tunes a model on its price lists, including partner-only prices. A public caller asks for a partner price. Does the fine-tune stop the leak? Decide, then open the answer.
Answer
No. The weights are the same for every caller and know nothing about who is asking. Access control must run in the retrieval filter, and partner-only data should stay out of the training set. The same limit covers stale facts: a changed datasheet reaches the weights only in a new run.
Worked example
A break-even sketch for the service desk. Assumptions: all numbers are illustrative; the price is a placeholder (use your provider's published price); any extra fee for a tuned model is ignored.
- 300 training and 100 eval examples, 3 minutes each, at 30 per hour; 40 relabelled per refresh, 4 refreshes a year.
- Prompt shrinks from 1,800 to 300 tokens; placeholder price 1.00 per million input tokens.
Verified: capstone/fde-product-discovery-copilot/lessons/M3-L10/m3_l10_breakeven.py