> ## Documentation Index
> Fetch the complete documentation index at: https://docs.openference.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Format Conversion

> How Openference translates between OpenAI, Anthropic, and Gemini request/response formats.

# Format Conversion

Openference supports three wire formats:

* OpenAI (chat/completions, responses, embeddings)
* Anthropic (messages)
* Gemini (via OpenAI compatibility layer on many routes)

## Passthrough vs conversion

When the model route is configured with the exact format you send, we pass the body through unchanged (best performance and fidelity).

When formats differ, we convert:

* OpenAI ↔ Anthropic (full messages, tool calls, system prompts, streaming events)
* Gemini is usually reached via its OpenAI-compatible surface

## What is preserved

* Roles and content
* Tool / function calling roundtrips
* System instructions (mapped to `system` for Claude)
* Sampling parameters
* Streaming event shapes (converted to the client-expected format)

## What to expect

You can use your preferred client SDK and model ID without caring which upstream serves it.

If a capability (e.g. vision, specific tool schema) is supported by the upstream model, it will work.

See the source of truth for any given model on the [Models page](https://openference.com/models).
