Fusion Router
Multi-model deliberation as a model slug
Multi-model deliberation as a model slug
The Fusion Router (openrouter/fusion) gives your model access to a multi-model deliberation tool. When invoked, a panel of models answers your prompt in parallel, then a judge model compares their responses and returns structured analysis — consensus, contradictions, coverage gaps, unique insights, and blind spots. Your model uses that analysis to write a better final answer.
Use Fusion when a single model isn’t enough — research questions, expert critique, “compare and contrast” prompts, or anything where the cost of being wrong outweighs the cost of a few extra completions.
model: "openrouter/fusion". The router resolves the alias to a real model and attaches the openrouter:fusion tool.openrouter:fusion. (Use tool_choice: "required" to guarantee invocation.)openrouter:web_search and openrouter:web_fetch enabled.openrouter:web_search and openrouter:web_fetch available, and compares them — it doesn’t merge them. It returns structured analysis as JSON: what all or most models agreed on (treated as higher-confidence consensus), where they disagreed, what only some models covered, unique insights from individual models, and blind spots none of them addressed.openrouter:web_search and openrouter:web_fetch are enabled on both the panel and the judge calls, so models can pull fresh sources while they answer and analyze.
Both hit the same pipeline. The model alias is simpler — it auto-injects the tool so you don’t have to declare it. The server tool form gives you more control (choose your own outer model, combine fusion with other tools).
In both cases, the model decides when to call openrouter:fusion. For prompts that don’t need deliberation, it answers directly — including invoking any other tools you’ve defined. Add tool_choice: "required" to force fusion on every request.
You can override the default panel and judge by declaring the tool explicitly with a parameters block. This is optional — omit it entirely and fusion uses the Quality preset defaults.
By default, the model decides when to call openrouter:fusion. To guarantee it runs on every request, set tool_choice: "required":
Because openrouter/fusion only injects one tool (openrouter:fusion), requiring some tool call effectively forces fusion. If your request also includes other tools, the model may pick one of those instead.
The response model field reports the concrete model that handled the request — not the openrouter/fusion alias:
To confirm a generation went through the Fusion Router, check the generation metadata. The router field reports openrouter/fusion:
Fusion runs N panel calls + 1 judge call in addition to your normal request. With the default 3-model panel, expect roughly 4–5× the cost of a single completion on the same prompt. Cost scales linearly with panel size.
Inner fusion calls carry an x-openrouter-fusion-depth header. Panel and judge models cannot recursively invoke openrouter:fusion — the plugin refuses to inject the tool a second time, keeping deliberation bounded to a single level.
openrouter:fusion server tool/labs/fusion — interactive playground