Ultra-fast, non-autoregressive encoder engine for structured intent and choice classification.
LLMs generate text. Tachyone produces calibrated decisions.
3.83 ms p50 latency · non-generative (no hallucinated labels) · calibrated confidence · local-first on consumer GPUs.
Tachyone answers atomic typed questions — choice, score, and noul — in a single forward pass
and returns probabilities plus calibrated confidence. It speaks the exact TypeSafe Jev
/v1/systemone wire protocol, so an existing Jev client can be repointed at a Tachyone server with
no code changes.
es) overall accuracyWhy Tachyone¶
-
Sub-5 ms speed
Per-shape CUDA graphs with bf16-resident weights, wired behind
TACHYONE_FAST=1. Graceful fallback on CPU/MPS: the fast path never changes the response shape. -
Permutation-equivariant
choicehead
A dedicated low-rank bilinear residual (
r=32) on top of the cosine baseline, so option order never biases the answer and the number of options is free (1–255). -
Native multilingual
An mmBERT-based checkpoint (LoRA rank 64) trained and calibrated per language for
pt,es,fr,de,it, andnl, with automatic script/language routing. -
Calibrated confidence
Strictly proper scoring (RLCD) plus per-
(primitive, language)temperature scaling, with per-language ECE reported. TheECE ≤ 0.05target is met for two of the six multilingual languages (pt0.024 andes0.038);de/fr/it/nlremain above it (worstnl0.104). -
Decisions, not text
LLMs generate text. Tachyone produces calibrated decisions. Head-to-head against a small local model, against Jev, and against open System One scorers — with the numbers and the method notes: Compare.
-
Local-first, drop-in
Base install runs offline with no API key. Same
/v1/systemonecontract as Jev; extensions (router control, hooks,predict_batch, MCP, LangChain) are additive only. -
Portable runtimes
Encoder, ONNX, and an optional LLM backend behind the same seam; the wire never depends on which engine answers.
Quickstart¶
Not yet on PyPI
Tachyone is distributed from source for now. Install directly from GitHub (requires git and
Python 3.12).
# Requires tachyone installed (see the uv / pip tabs)
from tachyone import TachyoneClient
from tachyone.primitives import ChoiceQuestion
client = TachyoneClient("http://127.0.0.1:8000")
result = client.system_one(
"I need a refund for a duplicate charge.",
{"team": ChoiceQuestion(
instructions="Which team should handle this request?",
criteria={"billing": "payments and refunds", "technical": "bugs and outages",
"sales": "pricing and upgrades", "other": "general questions"},
)},
)
ans = result.answers["team"]
print(ans.choice, ans.confidence, ans.probabilities)
git clone https://github.com/munod/tachyone
cd tachyone
uv sync --extra serve
uv run tachyone-serve
curl -s http://127.0.0.1:8000/v1/systemone \
-H "Content-Type: application/json" \
-d '{"state":"hello","model":"tachyone-latest",
"questions":{"q":{"type":"noul","instructions":"Is this a greeting?"}}}'
Benchmarks¶
Measured on a single RTX 3060 12GB (full tables and reproduction commands in the benchmark report).
Overall accuracy by language — multilingual checkpoint
Held-out synthetic split; temperature fitted per (primitive, language). Calibrated ECE is in-sample. Multilingual LoRA at rank 64.
p50 latency — stock forward vs CUDA-graph fast path
mmBERT + checkpoints/multi, batch=1. 2.68× p50 speedup; p95 11.05 → 4.12 ms.
How it compares¶
Mirrors the canonical table in overview.md.
| Jev | Laya | Needle | Tachyone | |
|---|---|---|---|---|
| Wire contract | /v1/systemone (hosted) |
/v1/systemone (self-hosted) |
Own tool/embedding API | Jev-exact, self-hosted |
| Hosted dependency | Required | None | None (device engine) | None in core |
| LLM backend | — | No (encoder only) | No | Yes (optional) |
| Encoder backend | Own model | Yes | Yes (2-bit) | Yes (ModernBERT/mmBERT + LoRA) |
| ONNX backend | No | Yes | Yes | Yes (onnx extra) |
| MCP / LangChain | No | Yes | No | Yes |
| Multilingual | Yes | Yes (mmBERT) | Partial | Yes (100+ routed, 6 trained) |
| Fast path | Proprietary | No | Quantized | CUDA graphs (fast extra) |
| Extension model | n/a | Router, hooks | Grammar, telemetry | Router, hooks, batch (additive) |
| License | Proprietary service | Apache-2.0 | Open | Apache-2.0 |
Start here¶
- Overview — vision, personas, non-goals.
- Compare — why not a small LLM, why not Jev, why not another scorer.
- Use cases — five recipes with real JSON in and JSON out.
- Protocol — the frozen
POST /v1/systemonecontract. - Architecture — components, flows, backend strategy.
- CLI reference — every
tachyoneflag with copy-paste examples. - Cookbook — uncertainty thresholding and System-2 handoff.
- MCP server · LangChain · LangGraph · n8n · Power Automate · Azure Functions · FastAPI · Docker — all integrations.
- Training — data → LoRA/RLCD → calibration → evaluation.
- Benchmarks — accuracy, ECE, and latency.
- Testing · Release · Hugging Face · Model card.
- Roadmap · Tasks · Requirements · Decisions.