Skip to content

One key.Every model.

Prism gives engineering teams one OpenAI-compatible endpoint in front of every model, and a log that says why each request went where it went.

api.prism.example
Acme AI production Requests
All policies 1,284 today
Time Model Task Status Latency Cost
09:41:02 google/gemini-3.1-flash summarize Routed 340 ms $0.0021
09:41:02 google/gemini-3.1-flash summarize Routed 318 ms $0.0019
09:41:01 deepseek/deepseek-v4-pro summarize Routed 602 ms $0.0074
09:41:00 google/gemini-3.1-flash summarize Routed 355 ms $0.0022
09:40:59 anthropic/claude-sonnet-5 summarize Pinned 540 ms $0.0186
09:40:58 google/gemini-3.1-flash summarize Routed 331 ms $0.0020

Eleven providers. One invoice, at their list price.

  • OpenAI
  • Anthropic
  • Google
  • Meta
  • Mistral
  • DeepSeek
  • xAI
  • Alibaba

Route by policy, not by hand.

A policy is a short file of rules: what to prefer, when to fall back, where the budget stops. Commit it beside your code and every request obeys it.

  • Cheapest above a quality floor, fastest within a margin, best under a price cap — or a pinned model.
  • Fallbacks fire inside the same call, even mid-stream, and the log records both legs.
Read the policy reference

production.policy.yml

live
  1. when task is summarize

    then prefer cheapest above quality 75

  2. when p95 latency over 800 ms

    then fall back to the next provider

  3. when context over 400K tokens

    then route to gemini-3.1-pro

  4. when key spend over $200 today

    then downgrade to fast tier and alert

Pushed 4 minutes ago · 2,318 requests routed since

Spend by model

September, to date

$4,322

−31% vs. August at the same point

  1. $1,842

    Sonnet 5

  2. $1,210

    GPT-5.6

  3. $412

    Gemini Flash

  4. $388

    DeepSeek V4

  5. $296

    Llama 4

  6. $174

    Others

See every token you spend.

Spend, tokens and latency by model, key and policy — live, and exportable as a row per request. The bill stops being a surprise.

  • Per-key budgets with alerts at 50, 80 and 100 percent, and a soft-stop that downgrades instead of failing.
  • Quality scores from a judge you pick, on your own traffic, so the router learns what good looks like for you.
Usage and limits

Every model behind one endpoint.

Prism is OpenAI-compatible. Change the base URL and the model id, keep everything else, and the whole catalog is one request away.

Read the quickstart

route.py

from openai import OpenAI

client = OpenAI(
    base_url="https://api.prism.example/v1",  # was api.openai.com
    api_key="pk_live_…",
)

reply = client.chat.completions.create(
    model="prism/auto",  # the policy picks the model
    messages=[{"role": "user", "content": prompt}],
)

print(reply.headers["x-prism-route"])
# → google/gemini-3.1-flash · cheapest_above(80) · $0.0021
140+
Models behind one endpoint
11
Providers, one invoice
99.99%
Routed uptime, trailing 90 days
38 ms
Median routing overhead

Built for the workloads that actually run.

Agents
Give an agent one key and let each step pick its own model — planning on a frontier model, tool calls on a fast one.
model: "prism/auto"
Batch pipelines
Route a million overnight classifications to whatever is cheapest above your quality floor, with the bill capped in advance.
policy: "cheapest-above-80"
Consumer chat
Keep first-token time under 300 ms at peak by spilling over to the next provider before anyone notices.
fallback: ["meta", "google"]
We cut our model bill by a third in the first week and nobody on the team noticed a quality change. The log is what sold me: I can see why every request went where it went.

Priya Anand

Head of Platform, Loamworks

Point your client at Prism. Keep everything else.

Free for a million routed tokens a month. Provider prices at list, on one invoice.