The technical view. Same substance as the Specimen. No metaphors, no decoration — code, benchmarks, recipes, and notebooks. Open in Colab when you want to run something.
# install
pip install distillarium
# distill a teacher into a Spirit (uses recipes/needle.yaml)
distill recipes/needle.yaml --teacher claude --out spirits/needle
# evaluate
taste spirits/needle --eval bfcl
# bottle for deployment (ONNX export + adapter)
bottle spirits/needle --format onnx Three commands cover the full pipeline: distill the teacher's behavior into a tiny student, taste-test against held-out cases, bottle for production.
| Spirit | Task | Params | Headline metric | Source |
|---|---|---|---|---|
| Needle | Function / tool calling | ~30M | 78% tool-name accuracy on BFCL subset | Tasting Notes → |
| Routor | Intent routing | ~25M | 92% macro-F1 on internal eval | Tasting Notes → |
Research code, not production infrastructure. Read each Spirit's full evaluation (strengths, weaknesses, failure cases) before deploying. Auto-generated Tasting Notes never hide the bad numbers.
name: needle
task: tool_calling
teacher:
provider: anthropic
model: claude-3-5-sonnet-20241022
student:
arch: encoder_decoder
params: 30_000_000
mash: # seed corpus
size: 50_000
domains: [api_calls, function_definitions, tool_use_examples]
cuts: # data splits
train: 0.8
val: 0.1
proof: 0.1 # held-out, never seen
eval:
benchmark: bfcl_subset
A recipe describes what to distill, from whom, and how to evaluate it.
Full recipes for both bottled Spirits live in
/recipes.
Walk through end-to-end distillation in a hosted notebook. Free CPU is enough for a small Spirit; bring your own teacher API key.
The Colab link points at the canonical notebook in the repo — when the repo notebook updates, Colab pulls the latest on next open.