Skip to content
OpenSmartRoute

Published runs - opensmartroute 0.5.0

The 0.5.0 run on MT-Bench human, PPE human and WebDev Arena: learned router vs declarative, static task table and baselines, with robustness and held-out calibration.

examples/leaderboard/results/README.md

Produced with the recipe in ../README.md on 2026-09-06, osr 0.5.0, seed 0, --limit 1000 per suite. One JSON per suite: <suite>.json is the learned router (--slm slm.json --baselines --calibration --robustness), <suite>.declarative.json is the same catalogue without the SLM (--baselines only). The per-row arrays calibration.conformal_pairs and calibration.temperature_samples were removed from the committed files; every aggregate they feed (reliability, held_out) is kept.

Data#

RoleCache nameHugging Face datasetRows after --tier relabelling
trainarena-55k-tierslmarena-ai/arena-human-preference-55k1 986
trainroutellm-battles-tiersroutellm/gpt4_judge_battles4 000
held outmt-bench-human-tierslmsys/mt_bench_human_judgments (human)2 228
held outppe-human-tierslmarena-ai/PPE-Human-Preference-V1 (test)2 360
held outwebdev-arena-tierslmarena-ai/webdev-arena-preference-10k (test)1 070

Catalogue: ../targets.yaml (llm-small / llm-mid / llm-frontier). SLM bundle: osr -t examples/leaderboard/targets.yaml slm train --out slm.json --cache-dir data --source arena-55k-tiers --source routellm-battles-tiers --report --seed 0 -> 5 956 rows, 10 % holdout accuracy 0.721, ECE 0.056, sha256 8faf8466902b753a9f22382de24bfd0e1d5271c7fe5d6564dec8105310dcbb1e (4.0 MB, not committed; the command is deterministic for the same cache).

Results#

Suite (n=1000)Router (learned)DeclarativeStatic task tableRandomCheapestBest priorParaphraseRepeat flipsECE rawECE held-out temp.ECE held-out isotonic
MT-Bench human0.5230.4210.5410.4410.3720.3431.0000.0000.3280.0560.048
PPE human0.5520.4180.6510.4450.1740.6510.8980.0000.2980.1210.035
WebDev Arena0.5730.1920.6700.3910.0000.6700.8830.0000.2830.0320.047

Cost and latency per 1k tokens for the learned router: MT-Bench $0.00363 / 968 ms, PPE $0.00390 / 1005 ms, WebDev $0.00324 / 925 ms (static task table: $0.003 / 900 ms on MT-Bench, $0.015 / 2500 ms on PPE and WebDev, since it degenerates to "always the best single tier").

Reading: the learned router beats the declarative router by +10 to +38 pp and random / cheapest everywhere, at a fifth of the cost of "always frontier" on PPE and WebDev. It does not beat the best single tier on any suite (-2 to -10 pp): a pairwise battle between two named models is a weak label for a three-tier decision, and the label-noise floor cannot be measured on these rows (one sample per prompt). Raw confidence is over-confident (ECE 0.28-0.33); a calibrator fitted on the even rows and scored on the odd rows brings held-out ECE to 0.03-0.05 (isotonic). These are the numbers a RouterArena / LLMRouterBench / xRouteBench entry should quote; the gated multi-sample suites (step 5 of the recipe) are what would let the router be scored against the noise floor.

Listings#

Where this run has been submitted. python scripts/release.py readiness counts rows whose status is accepted for the v1.0 adoption item "Leaderboard listings accepted" and reports it as open until one listing is accepted. A submission links the exact commit, the SLM SHA-256 above and this page.

LeaderboardEntryStatusNotes
RouterArena-not submittedsubmission = a PR to the RouterArena repository with runs/*.json
LLMRouterBench-not submittedneeds the gated multi-sample suites (step 5) for the noise-floor comparison
xRouteBench-not submittedcomponent ablation report from osr eval --ablation