Skip to content

Add iq-routing submission - #209

Open
George-Avila wants to merge 3 commits into
RouteWorks:mainfrom
George-Avila:submission/iq-routing-2026-09-22
Open

George-Avila wants to merge 3 commits into
RouteWorks:mainfrom
George-Avila:submission/iq-routing-2026-09-22

Conversation

@George-Avila

@George-Avila George-Avila commented Sep 22, 2026 •

Copy link
Copy Markdown

Add IQ Routing submission

Router

IQ Routing (https://iq-routing.com) is a closed-source, general-purpose production
gateway
. It is not a research prototype built for this benchmark — its main workloads are coding
turns and cache protection, not QA benchmarks. The answers in this submission were generated by
IQ's routing pipeline, executed in an offline experiment harness against IQ's own provider
accounts. The gateway build carrying this
configuration is being deployed separately.

For this benchmark, each prompt was answered by exactly one of the five pool models, chosen by
IQ's routing
. One routing decision and one generation per query — no cascade, no answer-side
ensembling, and no re-routing on a wrong answer.

The one exception is a provider-side content block: on 4 of the 8,400 rows (four NarrativeQA
queries) the selected model returned HTTP 400 for prohibited content before generating anything, and
IQ's fallback rung (the same rung the production gateway uses) served gpt-5.6-luna instead. The
blocked attempt produced no tokens and no cost; those rows are billed only at the model that actually
answered, which every row reports in model_used.

After the first /evaluate run flagged 17 rows with no valid generation, the 15 that had failed
transiently were re-run once through the same routing policy and the prediction file was updated in place (commit b9ce3f0); 13 now
carry valid generations and 2 still have no valid generation. The two GeoBench image rows stay failed.

Robustness file recomputed (2026-09-22). iq-routing-robustness.json was regenerated after correcting a
defect in how one of our routing features read reworded prompts. The 8,400 predictions in
iq-routing.json are unchanged
: the corrected feature makes the same decisions on all 8,400 original
prompts, so the served model, accuracy and cost on every full-split row are untouched. Only the
robustness split moves, recomputed offline from the robustness pass's already-recorded routing decisions
with no new generations (commit dab1fe6). The same feature version was deployed in the production
gateway on 2026-09-22.

All five pool models were served internally, against IQ's own provider accounts (BYOK), by that
same pipeline. Costs on this leaderboard are therefore computed by RouterArena from reported token
counts at public list prices, not from anything IQ was billed.

Pool model
gemini-3-flash-preview
gemini-3.8-flash
gpt-5-nano
gpt-5.6-luna
gpt-5.6-terra

Files

File Rows Notes
router_inference/predictions/iq-routing.json 8,400 full split, with generated_result
router_inference/predictions/iq-routing-robustness.json 420 routing-only, no generated_result
router_inference/config/iq-routing.json — 5-model pool
universal_model_names.py +3 gemini-3.8-flash, gpt-5.6-luna, gpt-5.6-terra
model_cost/model_cost.json +3 same three, at public list prices

The two registry additions are required: without them the three models do not resolve in
ModelNameManager, and _lookup_cost_info's substring fallback would silently bill
gpt-5.6-luna and gpt-5.6-terra at the gpt-5 rate and gemini-3.8-flash at no rate at all.
Prices used are the public list prices in force on the run date
(gemini-3.8-flash $0.75/$3.75 per 1M is Google's promotional tier, published as in force
through 2026-12-31; gpt-5.6-luna $0.20/$1.20; gpt-5.6-terra $2.00/$12.00).

Two GeoBench queries (GeoBench_841, GeoBench_1080) reference an image that the text-only
dataset does not carry. The production gateway answers those with a "no image attached" notice
rather than guessing. They are submitted honestly as failed rows: success: false,
empty generated_answer, error: "no_image_attached", zero tokens. They score 0 and contribute
no cost. We did not substitute a guessed answer.

Evaluation Integrity

  • No component of IQ was trained or fitted on RouterArena data or its label files. There is no
    learned router, no classifier fitted to RouterArena labels, and no weights of any kind derived
    from this dataset. The label files were used for scoring only.
  • IQ is a closed-source, general-purpose production gateway. Its main workloads are coding
    turns and cache protection, not QA benchmarks. The outputs submitted here come from a fixed
    routing configuration of that gateway, served internally through IQ's own provider accounts.
  • Costs are recomputed by the board. Nothing here reports what IQ was billed: RouterArena
    recomputes cost from the reported token counts at public list prices.

Reproducibility

Every row carries the provider-reported model_used, provider, and token counts from the
original generation. token_usage reports input_tokens, output_tokens, and total_tokens;
total == input + output on every row, so RouterArena's reasoning-token residual is zero by
construction.

Prompts are byte-identical to dataset/router_data.json. The routing-only robustness file was
produced by the same routing, over the 420 prompts of dataset/router_robustness.json.

Judge-based complexity routing over a fixed 5-model pool (gemini-3-flash-preview,
gemini-3.8-flash, gpt-5-nano, gpt-5.6-luna, gpt-5.6-terra). 8400 rows + 420 routing-only
robustness rows. Adds 3 required model rows to universal_model_names.py and model_cost.json
at public list prices.
@George-Avila

Copy link
Copy Markdown
Author

/evaluate

@github-actions

Copy link
Copy Markdown

Router Evaluation Results

Router: iq-routing
Dataset Split: full

RouterArena Metrics

Metric Value
RouterArena Score 0.7631
Accuracy 79.79%
Total Cost $5.611358
Avg Cost per Query $0.000668
Avg Cost per 1K Queries $0.6680
Number of Queries 8400
Abnormal Entries 17
Robustness Score 0.3833

⚠️ 17 of 8400 queries (0.2%) had no valid generation (inference failed / empty answer) and were scored as incorrect (0). These queries still count toward the denominator, so accuracy and cost reflect the full query set. Please regenerate predictions for these queries and resubmit for a complete evaluation.


Evaluation completed by RouterArena automated workflow

Re-served the 15 rows the evaluation flagged as having no valid generation
(4 HTTP 503, 1 read timeout, 9 cap-truncated generations, 1 output-blocked 400)
through the same routing policy; 13 now carry valid generations (one via the
gpt-5.6-luna fallback rung), 2 remain cap-truncated and stay failed. The two
GeoBench image rows remain honest failed rows. All other rows byte-identical.
@George-Avila

Copy link
Copy Markdown
Author

/evaluate

@github-actions

Copy link
Copy Markdown

Router Evaluation Results

Router: iq-routing
Dataset Split: full

RouterArena Metrics

Metric Value
RouterArena Score 0.7636
Accuracy 79.86%
Total Cost $5.650297
Avg Cost per Query $0.000673
Avg Cost per 1K Queries $0.6727
Number of Queries 8400
Abnormal Entries 4
Robustness Score 0.3833

⚠️ 4 of 8400 queries (0.0%) had no valid generation (inference failed / empty answer) and were scored as incorrect (0). These queries still count toward the denominator, so accuracy and cost reflect the full query set. Please regenerate predictions for these queries and resubmit for a complete evaluation.


Evaluation completed by RouterArena automated workflow

…e v2

The routing rule's multiple-choice detector required the literal header
"Options:" before reading the lettered option block; the robustness split
renames that header on 253 of 420 prompts while keeping the options, which
flipped 248 rows. Version 2 of the feature drops the header requirement. It
selects exactly the same rows on all 8,400 original prompts (the 8,400-row
prediction file is unchanged), and the 420-row routing file is recomputed
from the recorded judge decisions with no new model calls.
@George-Avila

Copy link
Copy Markdown
Author

/evaluate

@github-actions

Copy link
Copy Markdown

Router Evaluation Results

Router: iq-routing
Dataset Split: full

RouterArena Metrics

Metric Value
RouterArena Score 0.7636
Accuracy 79.86%
Total Cost $5.650297
Avg Cost per Query $0.000673
Avg Cost per 1K Queries $0.6727
Number of Queries 8400
Abnormal Entries 4
Robustness Score 0.9619

⚠️ 4 of 8400 queries (0.0%) had no valid generation (inference failed / empty answer) and were scored as incorrect (0). These queries still count toward the denominator, so accuracy and cost reflect the full query set. Please regenerate predictions for these queries and resubmit for a complete evaluation.


Evaluation completed by RouterArena automated workflow

@George-Avila

Copy link
Copy Markdown
Author

The current automated result excludes the routing-decision call to gpt-4o-mini. Recorded usage totals 15,408,927 input and 645,732 output tokens, adding $2.69877825 at $0.15/$0.60 per million tokens. Including it gives $8.34907555 total ($0.9939 per 1,000 queries). Usage is unavailable for two failed routing-decision attempts. Which field or sidecar convention should we use to charge this call at its own model price?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants