Archive/MODELS

Small models, big jobs: where tiny models quietly win

Classification, extraction, routing and on-device work. The jobs where a small model matches a big one at a fraction of the cost, and how to prove it.

Small models, big jobs: where tiny models quietly win

The largest models get the headlines, but a large share of production AI work is narrow and repetitive: sort this ticket, pull these fields out of that invoice, decide whether this message needs a human. For jobs like these, a small language model (roughly 1 to 10 billion parameters) often performs as well as a frontier model, for a small fraction of the cost and latency, and it can run on your own hardware.

This guide explains why small models have become so capable, which jobs they handle well, where they fail, and how to test and deploy them alongside larger models.

Why small models got good

Three trends made small models far more useful than their size once suggested:

The result: on well-specified tasks with clear inputs and outputs, the gap between small and large models is often small or zero. On open-ended reasoning and broad knowledge, it remains large.

Jobs where small models usually win

Small-model fit by task type
TaskSmall model fitWhy
Classification and taggingExcellentShort outputs, fixed labels, easy to verify
Routing and intent detectionExcellentSame as classification; latency matters
Field extraction with a schemaVery goodAnswer is in the input; validation catches errors
Summarising provided textGoodFacts are in context; style matters more than knowledge
Rewriting, translation of common languagesGoodPattern-heavy tasks
Retrieval-augmented Q&AGood, with good retrievalFacts supplied; reasoning load is light
Open-domain factual questionsPoorLess stored knowledge, more hallucination
Multi-step planning and hard mathsPoorReasoning depth is where scale helps most

The common thread: small models excel when the information is in the input and the output is constrained. They struggle when they must supply knowledge or reasoning themselves.

The economics

Small models are cheaper on every axis:

For high-volume tasks such as classifying every incoming message, these savings compound. But cost per token is not cost per task: if a small model's errors require human fixes, the savings can disappear. Price the full task as described in choosing a model is a budget decision.

Routing: small and large together

The most effective pattern is not "small instead of large" but small first, large when needed:

  1. A small model handles every request and produces an answer plus a signal of difficulty or confidence.
  2. Code validates the answer: does it parse, use allowed labels, cite the input?
  3. Requests that are flagged hard, fail validation or fall into known-difficult categories are escalated to a larger model.

Confidence signals can come from the small model's own label probabilities, agreement between two cheap samples, a separate classifier, or simple rules such as input length or keywords. Even crude routing often sends most traffic to the cheap path while preserving quality.

pythonroute.py
def handle(request):
    draft = small_model(request)
    if is_valid(draft) and not looks_hard(request) and draft.confidence >= 0.8:
        return draft
    return large_model(request)   # escalate the hard tail

How to test whether a small model is good enough

  1. Collect real examples, 100 to 300 for a classification task, with correct labels.
  2. Run a large model as the reference and a few small candidates with the same prompt.
  3. Compare per class, not only overall accuracy. Small models often do well on common classes and poorly on rare but important ones.
  4. Read the disagreements. Sometimes the small model is right and the reference is wrong, which also tells you something about your labels.
  5. Try a few examples in the prompt. Small models benefit more from well-chosen few-shot examples than large ones do; see few-shot examples that don't backfire.
  6. Consider fine-tuning if prompting falls short. A small model fine-tuned on a few thousand labelled examples often beats a prompted large model on a narrow task; LoRA makes this inexpensive.

Failure modes to watch

Running small models in production

Deploying a small model brings a few operational choices that large hosted models hide from you:

A practical starting point

Pick the highest-volume, most constrained task in your product, usually classification or extraction. Run a small model alongside your current one in shadow mode for a week, logging both outputs. Compare agreement and errors. If the small model matches on the common cases, route those to it and keep the large model for the rest. That single change frequently cuts a large share of model spend without users noticing any difference.

Frequently asked questions

What is a small language model?

A small language model is typically one with roughly 1 to 10 billion parameters, small enough to run on a single consumer GPU, a laptop or sometimes a phone. Many are open-weights models that can be self-hosted.

Are small language models as good as large ones?

On narrow tasks where the information is in the input and the output is constrained, such as classification or extraction, they are often comparable. On open-ended reasoning and broad factual knowledge, large models remain clearly better.

When should I use a small model instead of a large one?

When the task is high-volume, well-specified and easy to validate, or when latency, cost or data privacy are priorities. Test on real examples first and keep a large model available for escalation.

Can small models run on a phone or laptop?

Yes. Models in the 1 to 4 billion parameter range run on many recent phones, and 7 to 9 billion parameter models run on laptops with enough memory, especially when quantized to 4 or 5 bits.

RK
WRITTEN BYRafael KimAgents and tooling. Has personally been booked into a yurt by a language model.

Keep reading

Liked this? The Sunday Diff has one like it every week.