JETINFER NOT YET LIVE · EARLY ACCESS LIST OPEN

Built for the workload that re-sends its prompt

Qwen3.8-27B on an OpenAI-compatible endpoint, priced for agents and coding tools. Cached input costs $0.034 per million tokens — one tenth of our input rate — and roughly 95% of an agent's prompt is a repeated prefix. That line, not the headline price, is what shows up on your invoice.

Get on the list See the measurements no card · tell us the workload · a person replies
Cost of 1,000 median agent requests 6,500 in / 300 out · cheapest profile
Priced at Cost per 1,000 requests Versus market
Market average actually paid$3.70baseline
JetInfer, no cache hits at all$2.98−20%
JetInfer, 50% prefix cache hits$1.98−47%
JetInfer, 90% prefix cache hits$1.18−68%

The median request shape (6,500 input / 300 output) comes from published production traces, not from us. The baseline is the volume-weighted average price actually paid across the seven providers serving this model on OpenRouter on 2026-08-21 — $0.4232 per million input, $3.175 per million output — which already includes their cache discounts, so this compares effective prices rather than list prices. The three JetInfer rows are arithmetic on our published rates; pick the one that matches your traffic. We have not measured our own production cache hit rate yet, so we show the whole range instead of quoting the flattering row as a result.

Qwen3.8-27B int4 W4A16 · 150k context · 65,536 max output
$0.34 / $2.55per 1M in / out
$0.034per 1M cached in
tools · JSON schemaverified live
91.2%
prefix cache hit
150,000
context tokens
873 tok/s
server aggregate
48.7 tok/s
per request
24
concurrent requests

Performance, and the conditions attached

We run two serving profiles and never mix them, because the settings that win on single-stream latency lose on aggregate throughput. They are separately priced, and every row below is tagged with the profile that produced it. Read the tag before you compare: the fastest number on this page and the cheapest price on this page are not available at the same time, and quoting them together would overstate what you actually get.

Profile Input / output per million Single stream Server aggregate
cheapest default $0.34 / $2.55 48.7 tok/s 873 tok/s at 32 concurrent
fastest $0.30 / $3.20 90.8 tok/s 192.6 tok/s at 8 concurrent

Speculative decoding runs in the fastest profile only: it raises per-request speed and lowers total throughput, so the batch profile does not use it. That is also why the fastest profile costs more — it genuinely burns more GPU per token, and its output price sits above every competitor's list price on this model. Take it only if latency is worth more to you than price. Everything else on this page — the cost table, the pricing section — quotes the default cheapest profile.

Measurement Result Profile Conditions
Time to first token~100 msfastestsingle request, 128-token prompt; measured 99–114 ms
Per-request decode90.8 tok/sfastestone at a time, speculative decoding
Per-request decode48.7 tok/scheapestone at a time, no speculation
Per-request decode~27 tok/scheapest32 concurrent, 128-token prompts
Server throughput873 tok/scheapestsum across 32 concurrent, 128-token prompts
Server throughput192.6 tok/sfastestsum across 8 concurrent, 128-token prompts
Prefill rate~1,810 tok/sboththis is what sets first-token time on long prompts
Prefix cache, warm vs cold492 / 1,218 msboth2.5× faster first token when the prefix is held
Context window150,000bothtokens, input + output
Max output tokens65,536bothper request

Measured on our own deployment on a single RTX 3090, 2026-08-21, reproducible on the same hardware. Read the throughput rows carefully: they used 128-token prompts. At a realistic 6,500-token agent prompt, prefill is the large majority of the GPU work, so aggregate throughput at that shape is materially lower than 873 tok/s. We are re-running the whole matrix at median shape and will republish it here; until then, do not compare this figure against a provider's live-traffic numbers, because they are not measuring the same thing. Independent per-provider throughput and latency are measured continuously by OpenRouter from real traffic — compare us there once we are listed, not here.

First-token time is a function of your prompt, not a constant

The ~100 ms above is a short prompt. Prefill runs at roughly 1,810 tokens per second, so a real agent prompt costs real time — unless its prefix is already cached. Most providers publish only the first column.

Prompt size Cold first token With 90% prefix cached
128 tokens0.13 s0.13 s
6,500 tokens3.6 s0.4 s
16,000 tokens8.8 s0.9 s
32,000 tokens17.7 s1.8 s

Change one line

When your key is issued, this is the whole integration. Point your existing OpenAI client at our endpoint — streaming and logprobs are supported, the latter of which only about a quarter of endpoints return at all.

# Works with the OpenAI SDK you already have installed.
client = OpenAI(
    base_url="https://api.jetinfer.com/v1",
    api_key="sk-...",
)

response = client.chat.completions.create(
    model="qwen3.8-27b",
    messages=[{"role": "user", "content": "Summarize this changelog."}],
    stream=True,
)

Supported

Streaming with usage totals in both modes, logprobs and top_logprobs, seed, stop sequences, temperature / top_p / top_k, frequency and presence penalties.

Tool use and structured output

Verified on the live endpoint on 21 August 2026, not merely declared: tool_choice:"auto" returns finish_reason:"tool_calls" with the right function name and arguments that parse as JSON, streaming included; response_format with a JSON schema returns an object matching it. Tool calls did error on this stack earlier — the cause was the wrong tool-call parser, and we said so here while it was broken.

Reasoning traces

Qwen3.8 thinking output is returned in the reasoning field. It is never merged into content, and never billed invisibly.

Pricing

Two profiles, separately priced. The cheapest profile is the default and is what every other number on this page is costed against; the fastest profile exists for buyers who value latency over price, and is deliberately priced above the market because it costs us more to serve.

Cheapest profile — default

Per million tokensJetInferMarket list range
Input$0.34$0.40 – 0.58
Output$2.55$3.00 – 3.45
Cached input$0.034$0.04 – 0.12

Fastest profile — opt in

Per million tokensJetInferMarket list range
Input$0.30$0.26 – 0.47
Output$3.20$2.40 – 3.20
Cached input$0.03$0.04 – 0.12

Ranges cover the providers serving this model class as of 2026-08-21 — the seven on OpenRouter for the default profile, and the 27B-class endpoints on HuggingFace for the fastest profile, which is a different field at different prices. Cached input bills at one tenth of the input rate on both profiles; a cache write costs the normal input price and nothing extra. The fastest profile trades aggregate throughput for single-stream speed, which is why it costs more per token. Prepaid credit only during early access, and you are never billed for a request we failed to serve.

Quantization

We serve int4 weights (W4A16), declared as "quantization": "int4" in our /v1/models response so it is machine-readable and filterable. Most endpoints on this model run fp8 or bf16; int4 is what makes the pricing possible, and you should know which one you are buying before you buy it.

Capacity, stated before you depend on it

This is early access on a small deployment, and pretending otherwise would only waste your integration time. Here is exactly what will stand behind the endpoint at launch.

Concurrency

28 simultaneous requests, of which 24 are open to general traffic and 4 are held back for platform health probes. Above that we return an immediate 429 — we never hold your request in a queue and bill you for the wait. A fast rejection you can retry beats a slow response you cannot plan around.

Rate limits

600 requests per minute per key by default, raised on request once we understand your traffic shape.

Failure handling

The gateway health-checks each worker every 15 seconds with a real completion, not a metadata call, and stops routing to one the moment it fails. A separate on-pod watchdog restarts the engine after three consecutive failed probes, 30 seconds apart, and waits out the full 15-minute cold boot before judging it again. It gives up after four restarts in three hours, on the reasoning that an engine failing that repeatedly is broken rather than unlucky and needs a person — so a bad enough failure stays down until we intervene. We do not yet run a monitor outside our own infrastructure, and nothing automatically replaces a failed machine — that is a manual step today.

Context, never silently

We serve 150,000 tokens. Peers advertise up to 262k. A request over our limit gets a clean error — we will never quietly truncate your prompt and hand back a confidently wrong answer.

What we are not offering: a contractual uptime SLA, or multi-region redundancy. Capacity gets added when demand justifies it, which is why early access is capped rather than open — an oversubscribed endpoint would wreck the measurements above, and those measurements are the whole pitch. If you need a committed SLA before you can build on us, say so in the form and we will tell you plainly whether we are there yet.

Data handling

Prompts and completions are never written to disk, logs, or analytics. We retain only operational metadata — request ID, key identifier, token counts, latency, and status — for billing and debugging, for 13 months. No customer data is used for training, fine-tuning, or evaluation. Inference runs on rented GPU capacity currently located in the Czech Republic. Full terms are in the privacy policy, and a data processing agreement is available on request.

0prompts stored
int4declared quantization
150,000context tokens
CZdatacenter region

Get on the early access list

The endpoint is not live yet — it is in final validation. Tell us what you intend to run on it and we will issue a key with trial credit as capacity comes online, capped, in the order requests arrive. Four fields, and a real person reads them.

The form opens your mail client with the answers filled in, so nothing is sent anywhere until you press send and you can see exactly what you are sending. Prefer to write it yourself? [email protected].