Learn

Practical guides to fine-tuning, distillation, and deploying small language models.

Fine-Tune a Model With 20 Examples

The minimal-dataset route end to end: four files, twenty labelled examples, and the distil CLI commands that turn them into a trained small language model.

How to Choose a Teacher Model for Distillation

Choose a teacher on measured accuracy for your own task, not parameter count. Criteria table, tool-calling constraints, and the teacher evaluation step that settles it.

How to Deploy a Fine-Tuned Small Language Model

The four ways to put a trained SLM into service (managed endpoint, local llama.cpp, self-hosted vLLM, and an offline download), with the constraint that selects each one and the mistakes that quietly break accuracy.

Is Your Fine-Tuned Model Good Enough?

A four-baseline decision framework for shipping a fine-tuned small language model: compare against the base model, the teacher, the system you're replacing, and run-to-run noise before you call it done.

Run a Fine-Tuned SLM with llama.cpp

Serving a distilled small language model through llama-server, including the exact flags to pass, why the Jinja chat template matters, and how to confirm the endpoint is serving your model and not a default one.

Running a Small Language Model on CPU

CPU inference for a distilled SLM: how to size the model to available RAM, which quantization to run, how to set thread counts, and the published tokens-per-second figures that tell you whether your workload is realistic.

Three Ways to Get Training Data for a Small Language Model

A decision guide to the three routes for getting training data onto the distil labs platform: live traffic collection, uploading existing traces, or a minimal hand-written dataset.

Train an SLM for Content Moderation

A moderation model inherits whatever your policy leaves undecided: how to convert policy into labels, seed from overturned appeals, and keep the model inside a review path it can't bypass.

Train an SLM for Document QA over Contracts

Contract QA lives or dies on chunking: a clause split across two chunks produces a confidently wrong answer. How to segment agreements, build open-book training data, and grade the result.