Introduction

Introduction

Conformal Logit Inference (CLI) turns the raw output of any LLM — a generated-token log-probability, a sampled answer, a judge’s verdict, a hidden-state activation — into a finite-sample statistical guarantee. It is not a model. It is a calibration and decision layer that sits between the model you already use and the code that has to act on its output.

CLI ships three engines:

  • Conformal prediction — prediction sets, intervals, and risk-controlled decisions with a marginal or group-conditional coverage guarantee.
  • Venn-Abers calibration — probability intervals [p0,p1][p_0, p_1] with a formally proven calibration guarantee, instead of heuristic confidence scores.
  • E-values — anytime-valid drift monitors, safe optional stopping, and false-discovery-rate control that survives arbitrary dependence between simultaneous decisions.

All three require only one assumption: that your calibration data is exchangeable with the production traffic the guarantee is meant to cover. None of them require the underlying model to be accurate, unbiased, or trained any particular way — a worse model only produces bigger sets, wider intervals, or more escalations, never an invalid guarantee.

Where to start

If you want toRead
Make a first guaranteed callQuickstart
Understand the one assumptionExchangeability
See the math behind each engineThe three engines, Venn-Abers, E-values
Pick a primitivePrimitives
Follow an end-to-end scenarioGuides
Connect your modelBackends
Read a guarantee cardGuarantee reference
Run everything inside your own networkSelf-hosting
Handle failuresErrors and retries

The seven primitives

PrimitiveReturnsGuarantee
BeliefA Venn-Abers probability interval for one statementVenn-Abers calibration
SetA set of optionsCoverage ≥1−α\ge 1-\alpha
IntervalA conformalized ordinal or continuous intervalCoverage ≥1−α\ge 1-\alpha
Gateauto_approve, escalate, or abstainRisk ≤\le target, risk ≤\le target with probability ≥1−δ\ge 1-\delta, or FDR ≤\le target
ClaimLong-form output filtered to supported claimsP(all retained claims true)≥1−αP(\text{all retained claims true}) \ge 1-\alpha
JudgeA verdict, with an escalation cascadeHuman agreement ≥1−α\ge 1-\alpha on non-escalated verdicts
RouteWhich backend in a cascade served the requestCost budget or accuracy bound

Every guarantee in the table is marginal (averaged over exchangeable data) or group-conditional (averaged within a declared group). None is a promise about one individual decision.

Design principle

CLI never returns a guarantee it cannot back. Every primitive requires a calibration profile, and a profile with too few labelled examples for the requested α\alpha serves a heuristic-labelled answer instead of silently under-covering. The SDK makes that visible (answer.is_heuristic) and can refuse it outright (CLIClient(strict_guarantees=True)). See Guarantee reference for the exact schema.