Use cases· Last updated

Routing confidence thresholds with Jev

Not every request deserves the same handler. Jev classifies cheaply; code sends work to a lookup, a specialist LLM, a costlier model, or a human.

This unofficial page is the confidence thresholds slice of the intent and model routing pack. Intent: apply the Jev (TypeSafe System One) decision model to intent and model routing confidence thresholds. Primary search language: Routing Jev confidence thresholds. Confirm patterns on docs.typesafe.ai. This site does not sell, issue, or proxy TypeSafe keys. Use a credential you already have from the console or a documented gateway.

Independent angle (cover ≠ clone): Routing glossary + compare vs rules/queues; ranked-route floors. Not a clone of a rival intent-routing glossary page.

Routing use-case context

Thresholds turn intent and model routing answers into act / review / abstain. They are product policy, not a hyperparameter TypeSafe ships. Official 0.5 / 0.9 sketches are illustrations. This slice also carries the false-reject discussion: over-gating intent and model routing hides calibration.

Hub: Intent routing. Compare, when the other tool is the real job: rules and queues.

Confidence Thresholds inputs

You need (1) pinned answers on a frozen contract and (2) labels for handler gold and whether a human would have taken the complaint. State shape:

{
  "user": { "message": "Where is order 8831?", "locale": "en" },
  "session": { "authenticated": true, "plan": "free" },
  "catalog": { "handlers": ["order_status", "product_question", "return_exchange", "complaint", "other"] }
}

Decision signals and actions

Axis Where it lives Routing use
choice / score / noul answer payload What to do with the latest user request
confidence Choice & Score only Whether to trust the argmax
Distance from 0.5 Noul Whether needs_human is decided
FLOORS = {
    "order_status_lookup": 0.50,      # illustrations — replace
    "complaint_auto_llm": 0.80,
}
NOUL_TAU = 0.65  # for needs_human

def allow(ans, action):
    return ans.confidence >= FLOORS[action]

Do not treat a Noul of 0.5 as a “medium” intent and model routing score — it means yes and no are equally likely. Conjunctions stay in your code.

Guardrails and escalation

TypeSafe’s confidence-gated examples use a lower bar for recoverable reads than for irreversible actions. Those numbers are illustrations. For intent and model routing, treat complaint_auto_llm as the high bar (opening a refund/complaint LLM path or jumping to a costly model). Tune on labels — see offline evaluation.

Band around 0.5 on needs_human always reviews. Do not copy 0.65 onto Choice confidence.

Evaluation and rollout notes

Fit loop: pin jev-1.13.0 → replay → plot error vs confidence → pick floors where auto-act error ≤ your SLA. Pin jev-1.13.0 (the versioned id) after you fit thresholds. jev-latest and the marketing line jev-1.13 can move. Log the response model. TypeSafe’s published list price for jev-1.13 is $0.042 per million input tokens (vendor claim — confirm on the models page); output tokens are free on that same page. Unused distractors still bill as input.

Official Python and JavaScript SDKs read TYPESAFE_API_KEY and retry documented 429/529. This site does not sell, issue, or proxy TypeSafe keys. Use a credential you already have from the console or a documented gateway.

Pack map

Slice Page
Graph and primitives decision workflow
What may enter state input contracts
What to gather first evidence collection
Atomic rules policy checks
Act / review / abstain you are here
Reviewer payload human handoff
What to persist audit trail
How it breaks failure modes
Labeled replay evaluation
Shadow → canary production rollout

FAQ

Should complaint_auto_llm use 0.9 everywhere? No. Over-gating hides calibration and dumps the queue on humans. Fit per action.

Can I reuse a Noul τ as Choice confidence? No. Jaggedness: they are not interchangeable. See confidence.

Where is the rest of the Routing pack? Start with Routing decision workflow and Routing human handoff. Cluster hub: Use cases.

Is intent a reserved API field? No. You name the key. See glossary: intent.

When do rules beat Jev? When the route is already in structured data. Compare traditional routing.

What this page does not claim

Disclaimer

This is an independent unofficial site and is not affiliated with TypeSafe AI; official documentation is available at https://docs.typesafe.ai.

Primary documentation: https://docs.typesafe.ai. Hub: Use cases.

Sources

Public TypeSafe or adjacent documentation only. No private claims.