Unified Mode
Unified mode lets you call any LLM provider using the OpenAI SDK. Gateway AI translates your request into each provider’s native format and translates the response back. You use one SDK, one API shape, and switch models by changing a string.
How it works
- You send an OpenAI-compatible
POST /v1/chat/completionsrequest - The
modelfield tells the gateway which provider and model to use - The gateway translates the request to the provider’s native format
- The provider responds, and the gateway translates back to OpenAI format
- You get a standard OpenAI-shaped response regardless of which provider handled it
Model naming
Use the provider/model format:
For well-known models, you can omit the provider prefix:
So model="claude-sonnet-4-6" works the same as model="anthropic/claude-sonnet-4-6".
For any model name that doesn’t match these prefixes, use the explicit provider/model format.
Base URL
Point the OpenAI SDK at your gateway’s /v1 endpoint:
Supported models
What’s translated
The gateway handles the translation between OpenAI’s API format and each provider’s native format:
- Messages: role mapping, content format, system message extraction
- Streaming: SSE event translation in real time
- Tool calling: function definitions, tool_choice, tool results
- Vision: image content parts (base64 and URLs)
- Parameters: temperature, top_p, top_k, max_tokens, stop sequences
- Response: content blocks, finish reasons, usage/token counts
Limitations
Unified mode translates the most common features. Some parameters and features are not available for all providers:
Parameters marked ”—” are silently dropped when routing to that provider. No error is returned.
For full provider feature support, use Native Mode.
Next steps
- Python examples — chat, streaming, tool calling
- TypeScript examples — Node.js integration
- cURL examples — raw HTTP requests