Code and dense tables are folded away. Open any of them on demand.
What is the difference between zero-shot and fine-tuned models?
A zero-shot classifier labels text using only a description of the labels, with no task-specific training examples. A fine-tuned classifier has been trained on hundreds to thousands of labelled examples of your task. Zero-shot is faster to start and easier to change; fine-tuning usually wins on accuracy for domain-specific or idiosyncratic tasks.
Text classifiers sit on a spectrum defined by how much task-specific supervision they get:
- Zero-shot. The model sees only the input and a description of the labels. Examples: NLI-based classifiers that test "This text is about {label}" as an entailment hypothesis (Yin et al., 2019); instruction-tuned LLMs prompted with a label list; encoders like Laya that read options supplied in the request.
- Few-shot. The model sees a handful of labelled examples per class, either in the prompt (in-context learning, Brown et al., 2020) or through light training such as SetFit (Tunstall et al., 2022), which fine-tunes a sentence encoder on as few as eight examples per class.
- Fine-tuned. The model is trained on hundreds to thousands of labelled examples of the exact task, usually starting from a pretrained encoder (Howard and Ruder, 2018, established the recipe).
Show technical detailsHide technical details· 6 rows × 4 columns
| Zero-shot | Few-shot | Fine-tuned | |
|---|---|---|---|
| Labelled data needed | None | ~8 to 64 per class | Hundreds to thousands |
| Time to first result | Minutes | Hours | Days to weeks |
| Change labels | Edit the request | Relabel a few examples | Relabel and retrain |
| Accuracy on well-defined, common tasks | Often good | Good | Best |
| Accuracy on idiosyncratic, domain-specific tasks | Often poor | Variable | Best |
| Calibration on your data | Unknown until measured | Unknown until measured | Can be fitted on held-out data |
What zero-shot is good at, and what it is not
Zero-shot works when the task resembles something the model has seen and the labels are self-explanatory. "Is this email about billing, technical support or sales?" is close to what text on the internet already encodes. Topic classification and coarse sentiment often fall in this category.
It struggles when the labels encode your organisation's policy rather than common meaning. What counts as "needs_human" in your support desk, or "true_positive" for your security team, is a convention that no amount of pretraining can guess. The model has to infer the boundary from the label wording alone, and small wording differences move it.
The second failure mode is multi-field workflows where the right answer to one question depends on business rules that interact. These look like classification but behave more like policy application.
Laya's numbers make the gap concrete
The Laya model card publishes results on the typed-decisions benchmark: 400 cases and 2,000 decisions across four synthetic workflows (customer service, invoice processing, security incidents and agent-trace observability).
Show technical detailsHide technical details· 7 rows × 3 columns
| Model | Regime | Accuracy |
|---|---|---|
| Random | 0.318 | |
laya-multilingual | zero-shot | 0.342 |
laya (English) | zero-shot | 0.362 |
| Per-question majority class | 0.461 | |
| Jev 1.13.0 (third-party published) | general API | 0.727 |
| Teacher self-agreement ceiling | 0.735 | |
laya-typed-decisions | fine-tuned on the benchmark's training split | 0.766 |
Zero-shot, both base checkpoints land barely above random and well below simply predicting the most common answer per question. Fine-tuned on the same workflows, the same architecture clears the teacher's own self-agreement ceiling. The card's conclusion is blunt: "Laya is a fast base to specialise, not a zero-shot decision engine" for this kind of task.
On simpler, more conventional tasks the picture differs. With routing, the card reports 0.950 on four-label AG News and 0.595 on six-label DAIR Emotion. The card does not say whether those datasets were part of training, so treat them as evidence of what the model can do on conventional tasks, not as clean zero-shot results.
Why prompted-schema encoders sit in between
Laya does not fit neatly into one regime. Its options are supplied per request, which makes it zero-shot at the level of the schema: no retraining for a new label set. But the model was trained on many decision tasks in this format, so it has learned how to read a question and options, much as an instruction-tuned LLM has learned to follow instructions.
One consequence is that option wording does much of the work a training set would otherwise do. Compare two versions of the same option:
Show technical detailsHide technical details· json sample
The second encodes your policy in text the model can read against the state. It is the cheapest improvement available before collecting labels, and it is worth iterating on with a labelled evaluation set before concluding that zero-shot has failed. Keep descriptions short enough to fit the option budget (48 tokens per option at most).
That design has a useful property: the same format serves both regimes. You can start zero-shot with the base checkpoint, measure, and if accuracy is not enough, fine-tune on your labelled data without changing the request format. That is what laya-typed-decisions is: the base architecture, fine-tuned, served behind the same API.
A decision framework
- Build a labelled evaluation set first. Two hundred to five hundred real examples per question, labelled by the people who own the decision. You need it whichever regime you choose.
- Compute the baselines. Random and majority-class accuracy per question. A model that does not beat majority class is not helping.
- Try zero-shot. Run the evaluation set through a general model. Iterate on option wording; descriptions matter a lot for prompted-schema models.
- Check calibration as well as accuracy. A zero-shot model at 85% accuracy with honest probabilities may be more useful behind a confidence gate than a 90% model that is always sure.
- Fine-tune if the gap is large and stable. If zero-shot stays far below the accuracy you need after reasonable prompt iteration, labelled data is the fix. Few-shot methods are a cheap middle step.
- Keep the evaluation set after you ship. Re-run it when the schema changes or traffic shifts.
Measuring zero-shot quality on Laya Studio
Laya Studio serves the base checkpoints and the fine-tuned typed-decisions checkpoint on one endpoint, so the comparison in step 3 is one parameter:
Show technical detailsHide technical details· bash sample
Run the same labelled set with "model": "english" and with "model": "typed-decisions", then compare accuracy, Brier score and calibration per question. The typed-decisions checkpoint was fine-tuned on four specific workflows; expect gains only where your questions resemble them. Billing is per input token and each question reads the item once, so a 300-item, two-question comparison across two checkpoints costs about 1,200 times an item's tokens. See /pricing for the 5 free runs and /docs for details.
Frequently asked questions
Is Laya a zero-shot classifier?
How much labelled data do I need to fine-tune?
When is zero-shot good enough?
Does fine-tuning fix calibration?
Can I fine-tune through Laya Studio?
What is zero-shot classification?
Is fine-tuning better than zero-shot?
Sources
- Yin, Hay & Roth (2019), Benchmarking Zero-shot Text Classification
- Brown et al. (2020), Language Models are Few-Shot Learners
- Tunstall et al. (2022), Efficient Few-Shot Learning Without Prompts (SetFit)
- Howard & Ruder (2018), Universal Language Model Fine-tuning for Text Classification
- Laya model card: typed-decisions results and Honest Limits
- Laya fine-tuning notebook (typed-decisions)
Last updated . Laya Studio is an independent hosted service for the open-source Laya model (Apache-2.0, © Convai Innovations) and is not affiliated with Convai Innovations or TypeSafe.
Next articleThe real cost of using an LLM as a classifierThe real cost of using an LLM as a text classifier: prompt and output tokens, latency, retries and parsing, and where a one-pass model like Laya is cheaper.