# LiteLLM plugin

Use Canopy through your existing LiteLLM proxy. The plugin adds a **Canopy** panel to the
LiteLLM dashboard, where proxy administrators can configure routing and view cost estimates.
Applications keep their LiteLLM URL, API key, and model names.

[Install and connect the plugin](/litellm/getting-started)

## How it works

A LiteLLM model group is the model name your application requests, such as `coding`.
Each deployment in that group is a configured provider route. The plugin maps a group to a
Canopy catalog model or one of your organization's presets.

You can use Canopy in two ways:

* **Compete with existing providers.** LiteLLM chooses its ordinary route first. If you selected
  that deployment as a competitor, the plugin compares a Canopy offer with its estimated cost.
  Canopy can also reuse an eligible cache commitment for a continuing conversation. If the
  quote fails or cannot be used, LiteLLM keeps ordinary routing.
* **Route directly to Canopy.** Leave competing deployments unselected. Canopy handles the
  mapped model name without a price comparison or fallback to providers in that group.
  Separately configured LiteLLM fallback groups still apply.

Competing deployments must serve the same model as the Canopy target and have known prices.
The plugin compares providers for that model, not different models. It compares against the
route LiteLLM selected, not every configured provider.

The plugin supports OpenAI Chat Completions, including streaming. Other endpoints, such as
`/responses`, keep ordinary routing when a competing route is available. Direct Canopy mappings
reject unsupported endpoints. A failed stream ends rather than silently restarting elsewhere.

## Data and billing

Quote requests contain token estimates, capability flags, and keyed fingerprints, not your
messages. The plugin sends the full request to Canopy only when it uses Canopy for inference.
Syncing models shares deployment IDs, model identities, and prices, not provider credentials.

The connection belongs to a Canopy organization. Requests through Canopy spend that
organization's credits. Add credits on the **Billing** page in the
[Canopy web app](https://app.canopyx.ai) before sending requests.

The adapter makes outbound connections to Canopy. Canopy does not need inbound access to your
LiteLLM host or its database.

[Configure models and send requests](/litellm/usage)
