unbiased ai

Add Pareto to your LiteLLM gateway

Adding a model to a shared gateway should not mean touching every app. If your traffic already runs through a LiteLLM proxy, Pareto is one more entry in config.yaml. Name it pareto, point it at the Unbiased base URL, and any app behind the gateway can ask for it by that name, with your keys and spend tracking still in front. Pareto selects frontier and open models for each request and blends their outputs into one answer.

Tested live with LiteLLM 1.106.150M tokens a week

An illustration of LiteLLM on Pareto. Not a screenshot.

Set it up in config.yaml

LiteLLM reaches OpenAI-compatible APIs through its openai/ provider prefix. Add Pareto to the proxy’s model_list, or pass the same three values to litellm.completion from Python. These are the settings from our live run.

  1. Get an Unbiased API key

    Choose a plan, then create a key in the Unbiased platform. New accounts are reviewed and approved by a person before the key works.

  2. Add a pareto entry to model_list

    Set model_name: pareto (the name your apps will ask for) and, under litellm_params, model: openai/pareto. The openai/ prefix tells LiteLLM to use its OpenAI-compatible Chat Completions path.

  3. Point it at Unbiased

    Set api_base to https://api.unbiased.ai/v1. Keep /v1 and leave off /chat/completions; LiteLLM adds the endpoint path. Write api_key: os.environ/UNBIASED_API_KEY so the key stays out of the file.

  4. Start the proxy

    Export UNBIASED_API_KEY and run litellm --config config.yaml. Apps then call the proxy on port 4000 with "model": "pareto" and their own proxy key.

Tested on October 20, 2026LiteLLM 1.106.1 on Pareto (pareto). A short SDK script had Pareto call a weather tool and answer from its result, and a local proxy with a pareto entry in config.yaml answered a request by that name. Run record.
config.yaml
model_list:
  - model_name: pareto
    litellm_params:
      model: openai/pareto
      api_base: https://api.unbiased.ai/v1
      api_key: os.environ/UNBIASED_API_KEY
Terminal
pip install 'litellm[proxy]'
export UNBIASED_API_KEY=your-unbiased-api-key
litellm --config config.yaml
# apps call http://0.0.0.0:4000/v1/chat/completions with "model": "pareto"
Or the Python SDK
import os, litellm

response = litellm.completion(
    model="openai/pareto",
    api_base="https://api.unbiased.ai/v1",
    api_key=os.environ["UNBIASED_API_KEY"],
    messages=[{"role": "user", "content": "Hello"}],
)
print(response.choices[0].message.content)

Unbiased does not serve a model list, so the proxy only knows about Pareto because you wrote it into model_list. LiteLLM 1.106.1 supports Python 3.10 through 3.14, so install it in a virtual environment on one of those releases.

Your gateway stays. One more model joins it.

Pareto sits in model_list beside the models you already serve. The proxy’s keys, budgets and logs work the way they did.

One model string, several models behind it

Pareto is Unbiased’s blended AI model. On each request it selects frontier and open models and blends their outputs into one answer, so LiteLLM talks to one model string, pareto, and never has to pick.

“When the frontier improves, Pareto improves; when frontier prices fall, you should benefit.” From the pricing page.

How a Pareto answer gets made →
An illustration, not a wiring diagram. The blend includes frontier and open models, and its composition can change.

What an agent task costs on Pareto

Agents make many model calls per task, so the price of a finished task matters more than the price of a token. The model card publishes both for Pareto on two public agent benchmarks.

Terminal-Bench 4.0Tasks an agent completes in a terminal
$0.48/task
50.8% solved
DeepSWE v1.1Changes an agent makes in a real codebase
$0.24/task
69.9% solved

Pareto 26.10, preliminary October 1, 2026 runs that may change; denominators and the cost method still require confirmation. Cost is the reported mean USD per task at API rates, not an estimate for your workload. Model card and method.

LiteLLM is open source. Pay for the model by the month.

Your Unbiased plan pays for the Pareto tokens behind the gateway. Pick a monthly allowance for yourself, or pay per token on Team when several people share the proxy.

Personal

$10/month

  • 50M tokens a week
  • 20 requests per minute
  • For one person
Choose Personal

Personal Max

$100/month

  • 600M tokens a week
  • 60 requests per minute
  • For one person
Choose Personal Max

Team

Pay as you go

  • Prepaid credits at published rates
  • 300 requests per minute
  • No weekly token cap
Get started with Team

Subscriptions are for one person and are not unlimited. New API accounts are reviewed by a person before access turns on, and commercial or production use needs a separate written agreement. Rates and limits are on Pricing.

LiteLLM on Pareto, questions answered

Why openai/pareto and not just pareto?

The part before the slash tells LiteLLM which provider code to use. openai/ means an OpenAI-compatible Chat Completions API, which is what Unbiased serves at https://api.unbiased.ai/v1. Inside the proxy, the model_name your apps see can stay plain pareto.

Which key do my apps send to the proxy?

Their proxy key: the master_key or a virtual key you issued in LiteLLM. Only the proxy holds the Unbiased key, through UNBIASED_API_KEY. Apps never see it, and if you issue virtual keys, you can revoke one app’s access in LiteLLM without touching your Unbiased account.

I get a Not Found error. What’s wrong?

Usually the base URL. LiteLLM’s docs say that if you see a Not Found error, check that api_base ends in /v1. Use exactly https://api.unbiased.ai/v1, without /chat/completions on the end.

Why does Pareto’s response say pareto-26.10?

That is the release Unbiased served. Called directly from the SDK, the response carries Unbiased’s model name: currently pareto-26.10, the release pareto points at. Through the proxy, clients see the model_name you configured, pareto.

Can the whole company use Pareto through our gateway?

Personal subscriptions are for one person. For a gateway that serves a team or production traffic, Team has prepaid pay-as-you-go credits, and commercial or production use needs a separate written agreement. See Pareto for platform teams.

Is Pareto made by the LiteLLM team?

No. Pareto is Unbiased’s model. LiteLLM is made by BerriAI, and Unbiased is not affiliated with or endorsed by them. You keep LiteLLM and point it at the Unbiased API.

What happens when I hit the weekly allowance?

Requests over your plan’s limits return an HTTP 429 error. Personal includes 50M tokens a week and 20 requests per minute. Personal Max raises that to 600M a week and 60 requests per minute for $100/month. Team uses prepaid pay-as-you-go credits with no weekly token cap.

Do I choose between models?

No. You send every request to one model string, pareto. Pareto selects frontier and open models for each request and blends their outputs into one answer.

Is my code kept?

Personal and Personal Max are not our zero data retention tier: prompts and responses may be kept up to 30 days, as section 5(c) of the Terms explains. For work that must not be kept, ask about the Zero Data Retention API on the Private AI page.

Pareto works in other tools too

The same key and the same model string go into each of these. See them all.

Product names belong to their owners. Except where a guide says otherwise, Unbiased is not affiliated with or endorsed by the makers of the tools on this page.

Add one more model to the list

Six lines of YAML, one key, and every app behind your gateway can ask for Pareto by name. Plans start at $10 a month for 50M tokens a week.