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

# Model Fusion

> Run one request across a panel of models, have a judge weigh the answers, and return a single response under one gateway model ID.

**Model Fusion** answers a request with several models at once, has a judge compare their answers, and returns one response. Callers use it like any other model: one model ID, one response.

## Use cases

* **Review across providers**: put models from different providers on the panel and read the judge's list of contradictions before shipping an answer or a code change.
* **High-stakes answers**: the **Safety** preset makes the judge weigh physical, financial, legal, and medical risk, and flag it before synthesis.
* **Swap models without touching callers**: the fusion owns the model ID, so changing the panel or the judge leaves client code unchanged.

## Create a Model Fusion

Open **AI Gateway** → **Model Fusion**, then select <kbd> Model Fusion</kbd> in the page header.

| Field | Meaning |
| - | - |
| **Name** | The gateway model ID that callers pass as `model`. |
| **Synthesis mode** | Who writes the final answer: **Analysis** or **Judge writes final**. |
| **Preset** | The judging strategy: **General**, **Quality**, **Budget**, **Code**, or **Safety**. |
| **Models** | The panel that answers the request, 1 to 8 chat models. |
| **Judge model** | Compares the panel answers and records where they agree and differ. |
| **Orchestrator model** | Writes the final answer in **Analysis** mode. |
| **Web tools** | Lets the panel and the judge call web tools. |
| **Include raw panel answers** | Passes the panel answers to synthesis alongside the judge's analysis. |
| **Max tool calls** | Tool calls per phase, default 8; `0` turns web tools off. |

The list filters by **Preset** and **Status**, and the switch in the **Status** column turns a fusion on or off without deleting it. The detail page carries **Overview** telemetry, **Traces**, and **Settings**.

## Use it

Pass the fusion's **Name** as `model` through the gateway. It answers on the [Responses API](/ai-gateway/features/responses-api) and on [chat completions](/ai-gateway/features/openai-compatible-api).

```bash cURL theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl 'https://my.orq.ai/v3/router/chat/completions' \
  -H 'Authorization: Bearer $ORQ_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "my-fusion",
    "messages": [{ "role": "user", "content": "Summarize the trade-offs." }]
  }'
```

```typescript TypeScript theme={"theme":{"light":"github-light","dark":"github-dark"}}
import { OpenAI } from 'openai';

const client = new OpenAI({
  baseURL: 'https://my.orq.ai/v3/router',
  apiKey: process.env.ORQ_API_KEY,
});

const response = await client.responses.create({
  model: 'my-fusion',
  instructions: 'You are a helpful assistant.',
  input: 'Summarize the trade-offs.',
});

console.log(response.output_text);
```

```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
from openai import OpenAI
import os

client = OpenAI(
    base_url='https://my.orq.ai/v3/router',
    api_key=os.getenv('ORQ_API_KEY'),
)

response = client.responses.create(
    model='my-fusion',
    instructions='You are a helpful assistant.',
    input='Summarize the trade-offs.',
)

print(response.output_text)
```

## Synthesis modes

| Mode | Final answer |
| - | - |
| **Analysis** | The **Orchestrator model** writes it from the judge's analysis, plus the raw panel answers when **Include raw panel answers** is on. |
| **Judge writes final** | The judge writes it in the same call, so no orchestrator is used. |

## Presets

The preset changes what the judge weighs.

| Preset | Judge focus |
| - | - |
| **General** | Agreement and contradictions across the panel. |
| **Quality** | Reasoning quality and fidelity to the instructions over style. |
| **Budget** | No tool calls and shorter arrays, so the run costs less. |
| **Code** | Runtime correctness, API misuse, and security. |
| **Safety** | Physical, financial, legal, and medical risk. |

## Limits

* The panel takes 1 to 8 distinct chat models. Provider models only: another fusion cannot sit on the panel.
* **Max tool calls** runs from 0 to 20 per phase. The **Budget** preset keeps web tools off whatever the switch says.
* An error answers the request when every panel call fails, or when the judge or orchestrator call fails.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.