Production AI · Verified inference · the model ID auto

Verified inference, explained.

Pareta is a verified-inference provider built for repeatable production AI workloads. Through one OpenAI-compatible endpoint and one model ID, "auto", your application can access Pareta’s fleet of open-weight specialists, including several distilled in-house. Pareta checks every result against the workload’s quality bar and automatically escalates to a frontier model whenever the specialist path cannot meet it. You are charged only for the model that produces the final response. For workloads handled by Pareta specialists, serving costs can be 30–140× lower than the comparable frontier model, and you can verify the quality and economics on your own production data.

This page is the canonical description of what happens to a request sent to the model ID auto: who it is for, what is checked, when a frontier model serves, what you are billed, what each response reports, and how to measure all of it on your own data.

OpenAI-compatible · one model ID · routing and verification included
01 · Who Pareta is for

Repeatable production workloads

Pareta is infrastructure for AI tasks embedded in products and automated workflows — not a destination chatbot or general coding copilot. It is best for tasks with a stable objective, a defined output contract, and a measurable quality bar — classification, structured extraction, domain coding, embeddings, and reranking: many tickets to classify or invoices to extract, each different, scored the same way against the same contract. The workloads it is built for share four characteristics; if yours has them, auto is designed for it.

A recurring task inside a product or workflowThe same job runs again and again as part of an application path — tickets to classify, invoices to extract, notes to code, passages to embed or rerank — not a one-off prompt.
A stable task distribution with varying inputs“Repeatable” means the kind of request stays the same while every input differs. Identical requests are not required; a consistent objective is.
A definable output contractThe output can be stated as a contract: a label from an enum, a set of schema-valid fields, a list of codes, a vector, a ranking. In the API this is usually response_format with a json_schema.
Quality you can measureResults can be scored by labels, an evaluator, or acceptance rules — which is what lets a quality bar be defined, measured, and checked on your own data.

There is no minimum volume. An evaluation set is 5–50 items, and the same path that wins your evaluation serves your production traffic.

02 · Definition

What verified inference means

Verified inference is a serving path in which every specialist result is checked against the workload’s quality bar before it is returned, and a frontier model produces the response whenever the specialist path cannot meet that bar. It combines three things a plain model API does not provide: a specialist matched to the workload, a check on what the specialist produced, and automatic escalation when the check is not cleared or no specialist holds the bar.

The quality bar belongs to the workload, not to the request. Each Pareta specialist carries a measured quality ratio against the strongest frontier baseline on its task’s benchmark, and you define your own bar for your own workload by evaluating auto on your data. Nothing is configured per request: your application sends an ordinary chat completion with the model ID auto and receives an ordinary response.

Verification is a quality gate, not a guarantee that an AI output can never be wrong.

The gate raises the floor of what a specialist may return and decides when a frontier model must take over. It does not make any single answer correct by construction, and it is not re-run on frontier-served responses (see 05).

03 · The fleet

The specialist fleet and workload matching

Behind auto is a fleet of open-weight specialists hosted on Pareta’s serving infrastructure, several of them distilled in-house for a single task. Each specialist is deployed for one kind of work and carries a measured quality ratio against the strongest frontier baseline on that task’s benchmark. Specialist identities are not part of the API: GET /v1/models returns exactly one entry, auto, and the response echoes auto as the model.

01

The request is matched to a task

Each request is read for what it is asking — the messages, any response_format, any tools, any image input — and matched to the task it belongs to. Matching is per request, so mixed traffic through one integration is handled request by request.
02

A deployed specialist that holds the bar serves it

When a deployed specialist holds the workload’s quality bar, the request is served by that specialist. That is the default path for the marketed workloads: intent classification, invoice and document extraction, ICD-10 coding, embeddings, and reranking.
03

Otherwise a frontier model serves it

When no deployed specialist holds the bar for the task, or the task has no specialist, the request is served by a frontier model. Unsupported input is declined with an explicit error rather than served badly.

Published benchmarks

Matched or beat the strongest frontier baseline on all five published benchmarks, with 30–140× lower serving cost. Quality is the specialist’s score relative to the strongest frontier model on the task (= 100%); the metric is named per row.

TaskMetricQuality vs strongest frontier baselineServing cost advantagePath
Intent classificationmacro-F1113%88× lowerBenchmark harness, specialist called directly
Text embeddingnDCG@10109%32× lowerDirect · /v1/embeddings
ICD-10 codingmicro-F1106%138× lowerThrough auto
Invoice extractionField-level F1103%142× lowerThrough auto
Document rerankingnDCG@10101%31× lowerDirect · /v1/rerank

Path tested: stated per row on the benchmarks page — benchmark harness, direct endpoint, or the product path through auto; none of the figures include route-mix or escalation statistics. The frontier models were run on the same items; frontier cost = their actual usage tokens × vendor list price, Pareta cost = actual metered billing. The chart is on the homepage; the retrieval models have their own page, as does ICD-10 coding.

04 · The gate

The workload quality bar and the verification pipeline

The quality bar is task-level. Each specialist carries a measured quality ratio against the strongest frontier baseline on the task’s benchmark, and that measurement decides how much checking a specialist result receives before it is returned. The bar is not configurable at request time; you define your own bar for your workload through evaluation on your data (10).

ON EVERY SPECIALIST RESPONSE

Structural checks

Output parsing and schema/structural validation, including conformance to the caller’s response_format; constrained decoding where the task defines it, so the specialist can only emit output that fits the contract. Nonconformant output is not delivered as the response.
WHERE MEASURED QUALITY CALLS FOR IT

Model-graded checks

On lower-confidence tasks, a model-graded judge assesses the specialist result before it is returned. This is configured per task from the specialist’s measured quality; it does not run on specialist-trusted tasks, and it is not a frontier call on every request.

Verification is a quality gate, not a guarantee that an AI output can never be wrong. Schema instructions written only in the prompt are not enforced by specialists; response_format with a json_schema is the supported contract (09).

05 · Escalation

Automatic frontier escalation

Frontier models step in only when needed to maintain the quality bar. There are two cases, and both happen inside one request, before the response is returned; your application sees a single completion.

CASE A · NO SPECIALIST HOLDS THE BAR

The request is served by a frontier model

When no deployed specialist holds the quality bar for the task — or the task has no specialist at all — the request is sent to a frontier model for serving. No specialist attempt is made first. This is why “every request starts with a specialist” is not a claim Pareta makes.
CASE B · THE RESULT DOES NOT CLEAR VERIFICATION

The request escalates after the check

A specialist served the request, but its result did not clear the checks configured for the task. Pareta escalates the request to a frontier model and returns that model’s response. The specialist attempt is not billed to you.
06 · Not a router

How this differs from a router or marketplace

Traditional routers select among third-party model providers. Pareta operates its own specialist fleet for recurring production tasks, checks each specialist result against the workload’s quality bar, and uses frontier models when needed to maintain that bar.

Marketplace / routerPareta
Primary jobAccess or choose among provider modelsServe repeatable workloads through a quality-controlled path
First-line modelsThird-party provider catalogPareta-hosted specialists where one holds the workload's quality bar; otherwise a frontier model
Quality controlSelection and provider fallbackTask matching plus result verification
Frontier useOne of many selectable destinationsUsed when needed to meet the quality bar
BillingModel/provider price plus possible platform feeOnly the final answer model; internal non-serving attempts included
ProofGeneric benchmarksPublic task benchmarks plus evaluation on your production data
07 · Billing

Billing behavior

You are billed only for the model that produces the final response. Routing, verification, retries, and non-serving attempts are included. Each completed request is billed once, at the rate of whichever path produced the response.

Pareta specialist produces the final response
$0.01 / 1M input tokens
$0.05 / 1M output tokens
Frontier model produces the final response
The provider’s current list price for the tokens it used
Included
Routing · verification · retries · non-serving attempts

New accounts start with $30 in credit; no card is required. Worked examples of all three paths are on the pricing page.

08 · Receipts

Response receipts

Every completion carries its own receipt in response headers, as micro-dollar integers (1,000,000 = $1.00). Two numbers are reported, and they are not the same kind of number.

HeaderKindMeaning
X-Pareta-BilledExactThe amount this request debited from your balance, following the ledger exactly. An idempotent retry (same Idempotency-Key) that replays a prior debit reads 0.
X-Pareta-Frontier-Would-Have-CostEstimateAn estimated comparison: this request’s usage tokens priced at a frontier model’s list price. The frontier model is not run on live requests; the figure is a projection, and billed vs. this figure is your estimated per-request savings.
Example · reading the receipt
curl -si https://api.pareta.ai/v1/chat/completions \
  -H "Authorization: Bearer $PARETA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "auto", "messages": [{"role": "user", "content": "..."}]}' \
  | grep -i x-pareta

x-pareta-billed: 653
x-pareta-frontier-would-have-cost: 11795

Example values in micro-dollars, as shown in the API documentation. x-pareta-billed is exact; x-pareta-frontier-would-have-cost is estimated. Streamed responses carry the same two numbers as SSE comment lines just before data: [DONE]; comments are invisible to OpenAI SDK parsers, so stock clients are unaffected. Serving-path diagnostics ride on every auto response (tool-calling turns carry the receipt headers only): X-Pareta-Served-By (specialist | frontier; none on a $0 clarification), X-Pareta-Specialist (the workload capability, never a model id), X-Pareta-Escalated, X-Pareta-Route-Version, and X-Pareta-Input-Required on clarification responses; streams carry the same as SSE comment lines.

09 · Compatibility

API compatibility

Use your Pareta API key, point the OpenAI client at Pareta’s base URL, and set the model ID to auto. The features below are supported in production; anything not listed is ignored or rejected as described in the compatibility section of the docs.

Chat completions and streamingPOST /v1/chat/completions with the OpenAI request and response shapes; stream: true returns SSE chunks ending in [DONE]. Standard generation parameters pass through.
Structured output: response_formatjson_schema is the supported contract for constrained output: it constrains decoding on specialists and the result is validated against your schema before delivery, however the request was served. json_object guarantees parseable JSON with no schema check. Schema instructions given only in the prompt are not enforced by specialists.
Tool calling: tools / tool_choiceOpenAI-compatible function calling; tool_calls arguments are valid JSON for the declared schema. One request is one turn; you run the loop. tools and response_format cannot be combined on one request.
Image inputs on document tasksInvoice and document extraction accept image or PDF input; the message format is in the compatibility section of the docs.
Direct endpointsPOST /v1/embeddings and POST /v1/rerank are called directly, not through auto. Audio transcription and speech, and image generation, are available as their own endpoints.
Errors and limitsA request that cannot be served returns an explicit error. Per-request timeouts apply (45 s default; 120 s ICD-10 coding; 180 s long-document extraction); past the specialist deadline the request is escalated to a frontier model, and a request no path can serve returns an explicit error and is not billed. A cold specialist can add up to 60 s of boot time before that deadline applies. An empty balance returns 402. A malformed response_format returns 400 and is never silently ignored. Limits, timeouts, and measured latency per workload: production readiness.
Example · a structured classification request
import json
from openai import OpenAI

client = OpenAI(api_key=PARETA_API_KEY, base_url="https://api.pareta.ai/v1")

resp = client.chat.completions.create(
    model="auto",
    messages=[{"role": "user", "content": f"Classify this support ticket: {ticket}"}],
    response_format={
        "type": "json_schema",
        "json_schema": {
            "name": "intent",
            "schema": {
                "type": "object",
                "properties": {
                    "label": {"type": "string", "enum": ["refund", "billing", "other"]}
                },
                "required": ["label"],
                "additionalProperties": False,
            },
        },
    },
)
label = json.loads(resp.choices[0].message.content)["label"]

With response_format set, a streamed response delivers the JSON as a single validated chunk rather than token by token. Full parameter-by-parameter behavior, including what returns a 400, is in the inference guide.

10 · Evaluation

Evaluation on representative production data

The published benchmarks state the path tested per row. Your own evaluation is the end-to-end one: it runs auto — the same matching, verification, and escalation that serves production traffic — and the frontier models you name on the same items, under the same grading contract, and reports per contender the quality with a confidence interval and the measured cost.

01

Bring 5–50 representative items

Rows from the workload you plan to deploy, each an input and the expected output, plus one sentence saying what you want done with them. Document tasks attach the PDF or image per row.
02

One grading contract for every contender

Pareta binds your set to a grading contract and shows the scoring before anything runs. auto and each frontier baseline are scored by the same scorer on the same items; a frontier baseline is actually run, not estimated.
03

Read quality with a confidence interval, and cost

Per contender: mean quality with a 95% confidence interval, mean cost per item, and per-item predictions. Overlapping intervals mean the sample does not separate the contenders; add rows before deciding.
11 · Data flow

Data flow and subprocessors

Pareta-hosted specialists run on Pareta’s serving infrastructure. A request reaches a third-party provider only when it is served by a frontier model, when model-graded verification runs, or when quality grading in an evaluation uses a frontier judge. Inputs and outputs are not used to train models.

RetentionPrompts and responses are retained up to 30 days, then deleted.
TrainingNo model training on your inputs or outputs.
RegionOperated from the United States (us-central1).
Frontier subprocessorsOpenAI, Anthropic, and Google — to serve, verify, or grade — under API terms that prohibit training on your data.
Zero retentionNot offered today; no regional-processing option.
Dedicated capacityDedicated GPU capacity and custom specialists by arrangement: .

Read Security & data → · Privacy Policy

12 · FAQ

Questions, limitations, and what is not a fit

Direct answers to the questions production teams ask before putting auto in a live path.

Does every request start with a Pareta specialist?

No. A request is served by a Pareta specialist when a deployed specialist holds the workload’s quality bar; that is the default path for the marketed workloads. When no deployed specialist holds the bar, or the task has no specialist, the request is served by a frontier model.

Are frontier-served responses verified?

No. A frontier-served response is returned as served; the quality gate is not re-run on it. Conformance to your response_format is still enforced.

Is the X-Pareta-Frontier-Would-Have-Cost header exact?

No. It is an estimate: the request’s usage tokens priced at a frontier model’s list price. The frontier model is not run on live requests. X-Pareta-Billed is the exact amount billed.

Can I set the quality bar or pick the model per request?

No. The quality bar is task-level and measured; you define your own bar through evaluation on your data. The model ID is always auto, and specialist model identities are not exposed.

Can I tell which path served a request?

Yes. X-Pareta-Served-By says whether a Pareta specialist or a frontier model produced the response (none on a $0 clarification), X-Pareta-Specialist names the workload capability it was matched to (never a model id), X-Pareta-Escalated flags a frontier answer after a specialist attempt, X-Pareta-Route-Version is the serving revision, and X-Pareta-Input-Required on a clarification response says what the request was missing. X-Pareta-Billed reports the exact charge and X-Pareta-Frontier-Would-Have-Cost the estimated comparison.

Do I need the Pareta SDK?

No. Use your Pareta API key, point the OpenAI client at Pareta’s base URL, and set the model ID to auto. The Pareta SDK adds evaluation runs on your own data and auto metrics from code.

What happens when the balance is empty, or a request cannot be served?

An empty balance returns HTTP 402 and the request is not served. A request that cannot be served returns an explicit error, not a silent empty answer, and is not billed. Per-request timeouts apply (45 s default; 120 s ICD-10 coding; 180 s long-document extraction); past the specialist deadline the request is escalated to a frontier model, and a request no path can serve returns an explicit error and is not billed. A cold specialist can add up to 60 s of boot time before that deadline applies.

Limitations

Workloads that are not a fit

Destination chatAn open-ended assistant whose traffic has no stable task or output contract. Pareta serves tasks embedded in products and workflows, not a chat destination.
General coding copilotInteractive, open-ended code assistance. Not the positioning, not a headline workload, and not what the specialist fleet is deployed for.
One-off creative promptingSingle prompts with no recurrence and no measurable bar. There is nothing to match, nothing to verify against, and nothing to evaluate.
Model browsingChoosing among named vendor models. There is one model ID, auto; specialist identities are not exposed and frontier models are used when needed to maintain the quality bar, not selected by you.

Benchmark the production workload you already run

Use the OpenAI client already in your application, set the model ID to auto, and compare Pareta with your current frontier model on representative traffic before switching production.

$30 in credit · no card required · OpenAI-compatible