A provider route is one way Oda can reach a model provider: an address, a credential and a set of limits. You manage routes in Settings > Models, and this page is the reference for the settings each route carries. To add a provider or refresh its model list, see Set up models and providers.
A route holds everything Oda needs to call one provider:
A change to a route's settings needs no restart. New values apply from the next request, and a request already running keeps the settings it started with.
| Setting | What it controls | Default |
|---|---|---|
| Credential | The name Oda reads your key from. The key itself is stored on the Models page, and Oda also reads the same name from the environment it was started from. | The provider's own variable name |
| Base address | Where the route sends its requests. | The provider's public address |
| Thinking | Whether the route may think before it answers. | On |
| Reasoning effort | How much thinking the model may use. | High |
| Max tokens | The most a reply may contain. A model in the route's list can carry its own cap. | 256,000 |
| Context window | The window Oda measures the route's requests against. | 1,000,000 tokens |
| Stream idle timeout | How long Oda waits for activity on a streaming reply before it stops waiting. | Five minutes |
| Retry policy | How Oda retries failed calls to this route. | Normal mode, up to five retries |
Model retries and billing covers the retry modes and their cost.
Thinking is on by default. Where the route offers reasoning, the choices read:
High is the default. In a chat, make this choice with the Effort control (Chat with Oda).
With thinking off, the route offers only Off, and a settings document that names a higher effort is refused. Oda's automatic chat titles are generated without thinking, whatever the route says.
| Setting | What it controls | Default |
|---|---|---|
| Request file limit | The total size of files one request may carry. | 128 MiB |
| Inline image limit | The total size of images kept in the request itself. | 20 MiB |
| Images per request | The most images one request may carry. | 600 |
| Offload step sizes | How much Oda sets aside at a time when a request goes over its image budgets. | 64 MiB, 10 MiB and 20 images |
| File lifetime | How long an image Oda uploads for the route stays usable. | Seven days |
| Refresh margin | How much lifetime must remain before Oda uploads a fresh copy. | One hour |
| Cleanup batch | How many of Oda's own oldest uploads it removes when the provider reports its storage is full. | 100 |
When a request goes over these limits, Oda sets aside the oldest images first; the full behaviour is in Image and file limits in requests.
The route Oda ships with lists two models:
Both carry a 1,000,000-token context. A model id the list does not name can still be used; Oda sends it as a text-only model. The list decides what the pickers offer, not what a request may name.
Oda can serve three request styles: the common chat style, a response-object style, and a typed-message style in which content travels as blocks.
Oda validates a route's values before it saves the document, so a refused save leaves the route as it was. The checks that most often refuse a save:
No. New values apply from the next request, and a request already running keeps the settings it started with.
Oda checks each value before it saves; when one fails, nothing is written. The common refusals: a file lifetime outside 1 hour to 30 days or not a whole number; a refresh margin that is negative or not below the lifetime; a timeout that is not a positive, finite number; an offload step larger than its limit; a higher reasoning effort with thinking off; and a setting this version no longer supports.
A whole number of seconds from 3600 to 2592000: 1 hour to 30 days. Seven days is the default.
It keeps an uploaded image from expiring mid-use. When the remaining lifetime drops to the margin, one hour by default, Oda uploads a fresh copy and uses that instead. The margin must be zero or more and below the file lifetime.
The route offers only Off. The other choices disappear, and a settings document that names a higher effort is refused. Turn thinking back on to offer the full set again.
They set how much the model may think before it answers: Off "Use for simple tasks that do not need reasoning."; Low "Prefer for routine or latency-sensitive tasks."; High "The default balance for most tasks."; Max "Reserve for the hardest quality-first tasks." High is the default.
Not on the route Oda ships with: its style is fixed, and a settings document that tries to set one is refused. A route you add names one of the three styles Oda can serve.
On the route Oda ships with, yes. Oda sends a model the list does not describe as a text-only model. The list decides what the pickers offer, not what a request may name.
Two: a fast model that takes text and images, and a stronger text-only model, both with a 1,000,000-token context.
No. Each route keeps its own settings, so two routes can carry different limits, thinking defaults and retry policies.