Back
FastRouter Blend: Ask a Panel of Models, Get a Judge's Analysis

FastRouter Blend: Ask a Panel of Models, Get a Judge's Analysis

FastRouter Blend sends one prompt to multiple models, then a judge model compares where they agree, disagree, and what each one missed

author Andrej
Andrej Gamser
4 Min Read|Latest -

FastRouter now supports Blend, a multi model deliberation feature. Instead of sending a prompt to one model and trusting whatever comes back, Blend sends the same prompt to a panel of models in parallel, then has a judge model compare their answers into a structured analysis, where they agree, where they disagree, what each one uniquely covered, and where the answers seem uncertain.

What the judge actually does

The judge does not merge the panel's answers into one blended response. It evaluates them. The output is a structured comparison covering agreements, disagreements with each model's position, coverage gaps, standout insights unique to one model, missing considerations no model addressed, and confidence notes where responses seemed hedged or speculative. That distinction matters, Blend is built to surface disagreement and gaps, not paper over them with an averaged answer.

Two ways to use it

Method

How to trigger

When to use

Model alias, fastrouter/blend

Set "model": "fastrouter/blend"

Blend always runs and returns a human readable summary as the completion content. Best when Blend should be the whole response.

Server tool, fastrouter:blend

Attach a fastrouter:blend tool to a normal request

The outer model decides when to call it, the structured analysis is fed back as a tool result so the model writes the final answer.

Model alias

Send a normal chat completion request with the model set to fastrouter/blend.

1curl https://api.fastrouter.ai/v1/chat/completions \
2  -H "Authorization: Bearer $FASTROUTER_API_KEY" \
3  -H "Content-Type: application/json" \
4  -d '{
5    "model": "fastrouter/blend",
6    "messages": [
7      { "role": "user", "content": "Survey the strongest arguments for and against EV cars." }
8    ],
9    "analysis_models": ["anthropic/claude-sonnet-5", "openai/gpt-5.2", "google/gemini-3-pro"]
10  }'

The assistant content comes back as markdown, a panel responses section with one subsection per model, followed by the structured analysis. analysis_models is optional, if omitted, the panel is auto-selected from the router's top candidates.

Server tool

Attach the hosted fastrouter:blend tool to a request targeting any normal model. The outer model decides whether to call it, so for simple prompts a model may answer directly and skip Blend entirely, use the model alias instead if Blend should always run.

1curl https://api.fastrouter.ai/v1/chat/completions \
2  -H "Authorization: Bearer $FASTROUTER_API_KEY" \
3  -H "Content-Type: application/json" \
4  -d '{
5    "model": "x-ai/grok-4.20-beta",
6    "messages": [
7      { "role": "user", "content": "Assess the case for and against banning internal combustion engine vehicles by 2035." }
8    ],
9    "tools": [
10      {
11        "type": "fastrouter:blend",
12        "parameters": {
13          "analysis_models": [
14            "google/gemini-3-flash-preview",
15            "z-ai/glm-5.2",
16            "moonshotai/kimi-k2.7-code"
17          ],
18          "model": "anthropic/claude-sonnet-5"
19        }
20      }
21    ]
22  }'

What comes back

For the server tool path, the Blend pipeline returns a structured result as the tool result, which the outer model then uses to write the final natural language answer.

1{
2  "status": "ok",
3  "analysis": { "agreements": [...], "disagreements": [...], "coverage_gaps": [...] },
4  "responses": [ { "model": "...", "content": "...", "usage": { ... } } ],
5  "failed_models": [],
6  "panel_models": ["..."],
7  "judge_model": "anthropic/claude-sonnet-5",
8  "usage": { "prompt_tokens": 0, "completion_tokens": 0, "total_tokens": 0, "cost": 0 }
9}

Usage is the sum of every panel call plus the judge call, and is counted even for panel models that failed to produce usable content, since the tokens were still spent. If the judge fails but at least one panel model succeeded, status stays ok and the panel responses are still returned rather than discarding the whole run.

Where this is useful

  • Getting a second opinion on ambiguous or high stakes questions before acting on a single model's answer. For example, a team reviewing a contract clause for legal risk runs it through Blend rather than trusting one model's read, since a confident wrong answer on an ambiguous clause is exactly the kind of mistake worth catching early.
  • Surfacing where models disagree on a judgment call, rather than silently picking whichever model happened to be configured. For example, two models call a marketing claim defensible while a third flags it as likely to draw regulatory scrutiny, a disagreement worth seeing rather than one model's silent guess.
  • Catching coverage gaps, a point that only one out of several models thought to raise. For example, when auditing a security policy, one model is the only one to flag a missing rate limiting rule the other two overlooked entirely.
  • Letting an agent call Blend selectively, only reaching for a multi model check when the outer model decides the question warrants it. For example, a coding agent handles routine refactors with a single model but calls

Limits worth knowing

The panel is capped at 5 supplied models, or 3 when auto-selected. Blend runs at most once per turn, so it cannot recursively call itself. The server tool path is non-streaming and top-level only. Panel models receive any other tools attached to the request too, so a panel member may itself answer with tool calls, which are captured and included in what the judge compares.

FastRouter Blend is available now at fastrouter.ai. Reuses the same routing, BYOK, and credits as every other request, it is a pattern available through the gateway you are already using.

Related Articles