BlogModels
Choosing which high-volume tasks to give a small language model
The tasks a smaller model handles reliably share a profile: a constrained output such as a label, a set of fields or a score, inputs that look alike from one request to the next, an answer your experts can check, and enough volume for a per-request saving to add up. Classification, extraction and routing often fit. Open-ended reasoning, broad world knowledge and long chains of tool calls usually do not. Screen your candidates against that profile, then test the best one cheaply before anyone trains anything.
What makes a task suitable for a small model
Belcak and colleagues argue in a position paper, first published in 2025, that agentic systems make many model calls that perform a few specialised tasks repetitively and with little variation, and that small models are often capable enough and cheaper for those calls. OpenAI's latency guide makes the practical point: well-defined tasks with limited scope are good candidates for a smaller, possibly fine-tuned model, while open-ended assistant replies are better left to a larger one.
Turned into questions about your own workload:
- Is the output constrained? A category, a JSON object with known fields or a yes or no is easier than free prose.
- Do inputs repeat in structure, such as the same form, ticket template or document type?
- Can someone tell whether an answer is right? Without a checkable answer you cannot test a smaller model.
- Does the task need facts that are not in the input? Then a larger model or retrieval is the safer choice.
- What does a wrong answer cost, and is there a fallback or a reviewer?
Screening a hypothetical task inventory
Suppose an insurer's platform team lists its five highest-volume model calls. The volumes and judgments are hypothetical, written the way a team might fill in the screen during a workshop.
- Email triage into 14 queues, 40,000 a day: constrained output, repetitive inputs, labels from past routing. Strong candidate.
- Field extraction from claim forms, 25,000 a day: fixed fields, known templates, corrected values in the claims system. Strong candidate.
- Claim file summaries for adjusters, 6,000 a day: free text, long inputs, quality judged by people. Weak candidate.
- Customer questions about policies, 3,000 a day: depends on current policy wording and broader reasoning. Better served by retrieval with a larger model.
- Fraud referral notes, 400 a day: high stakes, low volume. Even at an assumed €10 per 1,000 calls, 12,000 calls a month cost about €120, far less than building, evaluating and reviewing a model. A dedicated model would need a quality case, not a cost case.
Two candidates survive on cost. The team starts with email triage, because its labels are cleaner and a misrouted email costs minutes rather than a wrong claim decision.
Test before you train
Find out how far a small model gets without fine-tuning. Run one or two small hosted or open-weight models on held-out cases from the task, with the same prompt and parser as the current model. Each of three outcomes tells you what to do next.
- It already matches the current model: switch with a model and prompt change, and skip training.
- It comes close, with errors concentrated in a few categories: labelled examples can probably teach what is missing.
- It falls behind everywhere: the task is probably less narrow than it looked, so revisit the screen.
OpenAI's fine-tuning documentation describes a further route, and it works equally with an open-weight student trained in your own environment: tune a larger model's prompt until it performs well, keep its outputs that meet your criteria and use them to train a smaller model. That helps when labelled data is scarce, but the small model inherits the larger one's mistakes.
Do the economics with your own volume
Smaller hosted models are often priced lower per token, but the gap depends on provider and workload, and a self-hosted model costs money whether or not requests arrive. Compare monthly cost at your volume: the current cost per request times volume, against fixed serving cost plus the work of building data, training, evaluating and monitoring.
A hypothetical illustration with stated assumptions: the current model costs €3 per 1,000 triage emails, so 1.2 million emails a month cost €3,600. One GPU at an assumed €1.50 an hour costs about €1,100 a month running continuously, before the hosted fallback for peaks. The difference of roughly €2,500 a month has to pay for the engineering and retraining. Under these assumptions, at a tenth of the volume the GPU would cost more than the model it replaced. A smaller hosted model would then be worth testing, if its price, its results on your held-out cases and its data handling are acceptable.
Some reasons sit outside the invoice: response time, and data that must stay on your own systems. Hugging Face's evaluation notes add that a model which fits on one GPU is far simpler to deploy than one split across several.
Where small models disappoint
The usual failure is a task that is narrower on paper than in production. Email triage looks like 14 labels until some emails contain two requests, a legal threat in a postscript or a language nobody planned for. Measure these tail cases and route them to the larger model rather than forcing a label onto them.
The other failure is drift. Queues, products and policies change, and a small model trained on last year's labels does not notice. Decide who retrains it and on what signal before it goes live.
Questions
Do we need to fine-tune, or can we just use a smaller hosted model?
Try the smaller hosted model on your held-out cases first. If it matches the current model, a model and prompt change is enough. Fine-tuning earns its cost when the small model is close but misses specific categories that labelled examples can teach.
Can one small model handle several of our tasks?
It can, with one LoRA adapter per task or one model trained on several tasks, but test each task against its own criteria. A change that improves one task can degrade another, and only per-task test sets show that.
What does Cloudsail need to assess our candidate tasks?
A list of your highest-volume model calls with rough volumes, what each one outputs and how you know whether an answer was right. The first 30-minute call needs no system access or data.
More from the blog
Model distillation trade-offs
When distilling a large model into a smaller one is worth the training work: what the teacher costs, which method needs what, the quality you can lose and how to test for it.
Fine-tuning data quality
Four checks that show whether your examples are ready for fine-tuning: label errors, coverage of real traffic, provenance and leakage into the test set.
LLM routing quality controls
How to send easy requests to cheaper models without hiding quality losses: test the router like a classifier, keep fallbacks separate and log which model actually answered.
GPU serving capacity planning
How to size GPU capacity for a model you serve yourself: what limits a replica, how to benchmark it at your latency target, how many replicas peak traffic needs and how to avoid paying for idle hours.
Talk to an engineer
Bring one piece of work you would like to improve. The call takes 30 minutes and needs no access to your systems or your data.
Booking runs on Google Calendar.
Prefer to write first? Leave your email and a few lines, and we reply with times.
Look for the draft in your email program
Send it from there, and an engineer replies in person with times for a 30-minute call. If no draft has opened, write to us at miki@cloudsail.com.