Edit one fact.
Prove nothing else moved.
Yaz is a sub-1M-parameter, byte-level model that keeps each fact in its own addressable atom. You can create, read, update and delete facts one at a time — with provable per-edit locality — and it abstains when it isn’t confident which fact you mean, instead of guessing. It runs on a CPU, offline.
Yaz is an honest research prototype, not a product or a breakthrough. Every number on this page is measured and reproducible, but each capability is also part of the published model-editing literature — reproducible by a funded team in about a week. We report it as a clean step, with its limits stated plainly below. No overselling.
One fact, one atom.
Each fact lives in its own column of an additive decoder. A frozen sentence embedding routes a prompt to a fact by meaning; the routed atom contributes the answer. Because facts are disjoint columns, editing one cannot touch another.
Addressable facts.
Every fact is a single decoder column you can point at — read it, swap it, or zero it.
By meaning, not surface.
A frozen MiniLM embedding sends paraphrases of the same fact to the same atom, so unseen phrasings still reach it.
No retraining.
Update = swap a column. Delete = zero it. Create = allocate a fresh atom. Instant, with no gradient steps.
Knows its limits.
A routing-confidence margin lets it refuse out-of-scope questions instead of inventing an answer.
Measured capabilities.
Numbers from the prototype: 50 country→capital facts, first-byte routing, CPU, single seed. Scope and caveats below the table.
| Capability | What it does | Measured |
|---|---|---|
| Update | edit a fact by swapping one decoder column | reliability 1.000 · 8/8 land |
| Delete | zero an atom → fact gone | 0 collateral |
| Create | allocate a fresh atom for a new fact | 4/4 conditions |
| Locality | editing A leaves B byte-identical | 0/10 · bpc +0.000% |
| No collapse | retains edits as they stack | flat 1.000 over 40 |
| Routing | reach a fact by paraphrase | 0.696 vs 0.216 |
| Abstain | refuse when routing is unsure | AURC 0.004 (oracle 0.003) |
It refuses when it isn’t sure.
Most editable models, when their lookup misses, quietly answer with the base model anyway. Yaz reads its routing confidence and declines — a near-oracle “I don’t know which fact you mean” signal. Here it is in one command:
$ python demo.py --demo
# confident, in-scope
The capital of France is → ANSWER (France, margin 0.393): 'P'
# name-free clue — routed by meaning
the country of the Eiffel Tower → ANSWER (France, margin 0.129): 'P'
# live edit, no retrain, then a paraphrase
edit France = Lima → ANSWER (France): 'L'
# out of scope
best pizza topping? → ABSTAIN (margin 0.024): not confident which fact you mean
What to watch out for.
These are not footnotes. If you build on Yaz, these are the things that bite.
It’s a first-byte editor. Edits reliably set the answer’s first byte; multi-byte generation garbles (full-word transfer ≈ 0.05).
No edit-magnitude win. An earlier 0.675 generalization headline was retracted — it sits at chance for a random column swap. What survives is routing reach.
Routing degrades on hard clues — ≈0.85 on famous entities, ≈0.50 on oblique, name-free ones. Abstention helps; coverage falls.
Locality assumes no collisions. The guarantee holds while two facts never share an atom; collisions can appear at larger fact counts.
Tiny & synthetic. 50 country→capital facts, single seed, CPU. Not validated at scale or on open-vocabulary knowledge.
Not a new field. Yaz sits in the model-editing lineage (ROME/MEMIT, GRACE, SERAC, PENME, EasyEdit). The part we think is fresh: wiring routing-confidence as an explicit refuse signal inside the editor. Not a moat — a step.
A small, fast, editable, auditable model that knows when it doesn’t know — a clean substrate for studying CRUD-style knowledge editing.
Open, reproducible, research-only.
Yaz ships with a trained checkpoint, the demo, and deterministic reproduction scripts (including a smoke test). Everything runs on a CPU. It is a research prototype — not a product.
First published 14 Jun 2026 · Tilelli LAB · Marrakech.
# Yaz status
Demo + checkpoint: included
Reproduction: python scripts/scaling/s3_route_abstain.py · pytest -q
Questions: hello@tilelli.tech