The right intelligence.
Every time.
Enso is a meta-LLM: Hanzo's own small model that coordinates every model on the gateway for higher intelligence, faster and at lower cost.
Read the docs →Consensus mode
When accuracy matters more than cost, Enso brings multiple models together to independently evaluate, compare and verify their answers.

Historical multi-model research evaluation · new questions: Enso Ultra 95.6% at $14.76 per 1,000 questions, Enso 93.7% at $10.03, against 93.1% for the best single model at $5.16. run
Enso Flash, the low-cost option on new questions: $3.26 per 1,000 questions against $5.16 for the best single model, at 90.6%. run
Historical multi-model research evaluation · questions it has seen: Enso Ultra 98.0%, Enso 96.5%, Enso Flash 95.5%. run
LiveCodeBench 93.7% at $8.59 — 1.5× less than Opus 4.8 (72.0%, $13.14), at list prices, Oct 31, 2026. run
The enso measured here is enso-bench's router at the tag each run names, not today's catalog presets: its LiveCodeBench run is frontier, 2026-07-19. Each run's cost is its recorded input and output tokens at the price list's rate per million, Oct 31, 2026: Opus 4.8's at anthropic/claude-opus-4.8's $5 in and $25 out; Enso's at the dearest Enso tier's, enso-ultra's $5.5 in and $27.5 out, since enso bills the tier that answers and the run does not record which. Opus 4.8 is one model, on the same questions.
One runtime
One runtime. Every layer of AI.
A request can touch a model, a tool, an agent, your memory, a decision and the machine it runs on. Enso is the runtime that decides which.
Models
Agents
Tools
Memory
Decisions
Data
Compute
Enso
The route between all of them, chosen per request.One request at a time
Every request has a different best path.
Same endpoint. A review, a label, an action and a choice each take the lane and the preset the work needs.
- Review this change.Someone is waiting on the review.Write · Enso Pro
- Classify this ticket.High volume, and a fast answer is enough.Write · Enso Flash
- File the bug and assign it.The answer is an action, so it comes back as a tool call.Act · A tool call
- Should the deploy continue?A bounded choice with known options — Kai’s job once it ships inside Enso.Decide · Kai · in progress
- Audit this design.A wrong answer here is expensive.Write · Enso Ultra
Spend intelligence where it matters.
The flagship is for the call where being wrong is expensive. Everything else gets the preset that is fast and enough.
The balance
Weighed the same way, every call.
Quality, latency and cost — inside the fence your policy draws.
Flash · Pro · Ultra
Pick speed or depth per call.
Name a preset when you already know. Name Enso when you want the choice. A preset is a pool and a rate; rates per million tokens, in → out.
Enso Ultra
enso-ultraEnso Pro
enso-proEnso Flash
Default · ensoEnd to end
Watch one request run.
Six steps between the request and the answer. You write none of them.
Understand
Enso reads what the request is for — an answer, an action, or a choice.Constrain
Your policy sets the bounds: the models you allow, and the budget on your key.Route
The preset, and the model inside it, that should answer this call.Act
When the answer is an action, it comes back as a tool call your agent runs.Check
Ultra looks again when its first pass is unsure.Learn
Scores from your traffic sharpen the next choice of the same kind.
The glue
Stop stitching the AI stack together.
A gateway here, an agent runtime there, a policy layer, a tracer, a GPU contract. Each is one more integration to keep alive. On Hanzo they are one runtime.
Models
Every model you can name. One you don’t have to.
Enso picks among 500+ models from 70+ labs. It weighs five things.
Capability
Can this model do this work at all?Latency
Is someone waiting on the answer?Cost
What is a wrong answer worth here?Policy
Which models is this call allowed to reach?Context
How much does the call carry, and which window holds it?Agents
Agents inside a runtime, not a demo.
An agent makes hundreds of calls to finish one task. Every turn is a call, and every call is routed: the plan gets depth, the routine step gets speed.
Decisions
Zen answers “what could we do?” Kai answers “what should we do?”
Kai takes the state, the evidence and the options, and returns a calibrated distribution over them — no prose to parse. Inside Enso, routing a bounded choice to Kai is in progress; Kai is live on its own today.
Ultra
Sure on the first pass. Checked when it is not.
Flash and Pro pick once. Ultra answers once when the first pass holds, and looks again when it does not.
- SureThe first pass holds, and that answer is the one that comes back.
- Not sureUltra asks again and keeps the answer that holds.
Your traffic
The same choice, getting sharper.
A new workload follows the rules. Scores from your traffic take over, and the rules return when a score is unsure.
Rules first
A new kind of work has no scores yet, so the call follows the rules.Then your scores
Scores from your traffic take over that kind of call.Unsure, rules again
A score that is not confident gives the call back to the rules.
Your routing
Route it your way.
Static, by policy, or trained on your own traffic. One API for all three.
Static
Pin a model to a route or a tier. The same model answers, every time.Policy
Set rules on cost, latency, capability, provider and data residency. Every call stays inside them.Trained
Train a router on your own usage and evals, the way Enso is trained.Measured
Accuracy, and what it costs.
Enso beside single models from the labs, on the same questions: GPQA Diamond against what 1,000 questions cost, then LiveCodeBench.
GPQA Diamond
LiveCodeBench
LiveCodeBench · enso.livecodebench, split v6-recent-175 · every row a research run, read from api.hanzo.ai when the page opens · sorted by accuracy
| System | Accuracy | Correct | Run cost | Tag, date |
|---|---|---|---|---|
| ensorun | 93.7% | 164 of 175 | $8.59 | frontier · 2026-07-19 |
| gpt-5.6-solrun | 93.1% | 163 of 175 | $6.14 | frontier · 2026-07-19 |
| gpt-5.5run | 91.4% | 160 of 175 | $15.60 | v1 · 2026-07-16 |
| opus-5.5run | 80.0% | 140 of 175 | $5.94 | fill · 2026-10-16 |
| fable-5.1run | 80.0% | 140 of 175 | $18.40 | fill · 2026-10-16 |
| fable-5run | 78.3% | 137 of 175 | $28.08 | frontier · 2026-07-19 |
| haiku-5.5run | 74.9% | 131 of 175 | $0.294 | fill · 2026-10-16 |
| sonnet-5.5run | 72.0% | 126 of 175 | $3.74 | fill · 2026-10-16 |
| opus-4.8run | 72.0% | 126 of 175 | $13.14 | v1 · 2026-07-16 |
| deepseek-v4-prorun | 52.6% | 92 of 175 | $0.452 | frontier · 2026-07-19 |
| gpt-4orun | 21.1% | 37 of 175 | $1.40 | frontier · 2026-07-19 |
Each system's frontier run, else its v1 run, else its fill run: the three put the same prompts to a model. A run cost is the input and output tokens the run records at the price list's rate for its own model id, the router's included, at list prices, Oct 31, 2026; a dash is a run that records no tokens, a model the list does not price, or a list that could not be read.
Infrastructure
From prototype to production without changing the architecture.
The call you make on day one is the call you make at scale. What changes is what rides along it.
Drop-in
Name Enso. It picks the model.
Same key on /v1/chat/completions and /v1/messages. Send enso, or name the preset. The SDK you already use works: point it at api.hanzo.ai.
curl https://api.hanzo.ai/v1/chat/completions \
-H "Authorization: Bearer $HANZO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "enso",
"messages": [{ "role": "user", "content": "Plan the migration." }]
}'import os
from openai import OpenAI
client = OpenAI(base_url="https://api.hanzo.ai/v1", api_key=os.environ["HANZO_API_KEY"])
answer = client.chat.completions.create(
model="enso", # or enso-flash, enso-ultra
messages=[{"role": "user", "content": "Plan the migration."}],
)Built for
What the presets are for.
Coding and review
Pro is the default when someone is waiting on the change. The call is the endpoint you already speak.A long, careful run
Ultra is the preset where a wrong answer costs more than the tokens.Volume
Flash is the preset for a label, an extraction, or a short step, repeated.A pool you bound
The choice stays inside the models you allow. That holds on every preset.Enterprise
Built for AI that actually runs businesses.
What holds today, said plainly.
Security
Governance
Control
Observability
Reliability
Questions
Asked plainly.
What do I send?
What do the three presets change?
Can I see which model answered?
Does Enso route to Kai today?
Where is the rest of the measurement?
Enso · Model Router
Microsecond model routing. Intelligent optimization across quality, latency, and cost.
Learned bilinear utility model evaluates each incoming prompt in 12 µs. Routes across every model on the gateway from frontier labs and Hanzo native weights behind one unified API.
curl -X POST https://api.hanzo.ai/v1/chat/completions \
-H "Authorization: Bearer $HANZO_API_KEY" \
-H "Content-Type: application/json" \
-H "X-Max-Latency-Ms: 800" \
-d '{
"model": "auto",
"messages": [{"role": "user", "content": "Analyze and optimize this SQL query."}]
}'Enterprise Solutions
Battle-tested model routing blueprints across enterprise scale.
Save up to 90% in LLM cloud compute costs while enforcing strict SLA latency caps and organization data fences.
AI Inference Optimization & Workload Routing
Learned bilinear utility model maps each prompt to the optimal model based on quality, latency, and token cost. Bypasses expensive frontier models when specialized open weights suffice.Distribution & EDI Exception Routing
Parses ASN discrepancies, EDI 856 transmission mismatches, and missed carrier ETAs. Enso routes exceptions to automated disposition or escalation under strict SLA bounds.Retail Media & Seller Campaign Ad Ops
Evaluates seller promotional copy and sponsored banner creatives against trademark and safety guidelines. Enso routes real-time bidstream requests with deterministic latency.Audit, Evaluation & Enterprise Guardrails
Guarantees strict enterprise boundary fences, automated verification, and false-alarm suppression across all routed AI requests in production.Research & Architecture
Routing theory, microsecond data planes, and learned utilities.
Read engineering papers, latency benchmarks, and architectural designs from the Enso routing team.
Read
Models, benchmarks, research.
The three presets, the runs that measure the router, and the writing.
Paste and ship
Paste this into any agent. It reads the skill manifest and calls Enso from there.
Read https://hanzo.ai/skill.md and use Hanzo Enso in my project. Start with: hanzo chat completions