the one number: cost × intelligence × speed
A single composite score per model — weighted geometric mean of three normalized sub-scores. Buyers optimize for the highest SVI in class; suppliers climb the leaderboard by submitting verified benchmark results or improving real served TPS.
cost 45% · intelligence 40% · speed 15%
| # | model | SVI | cost | intel | speed | price | tps |
|---|---|---|---|---|---|---|---|
| No models with verified speed yet — run benchmarks first. | |||||||
You don't have to use the default weights. Pass surp_mode to
any combo to route by the lens that fits the job:
| mode | weights (cost·intel·speed) | use for |
|---|---|---|
cost | pure cheapest | overnight batch, agents that can wait |
value | 45·40·15 | default SVI — best all-round value |
balanced | 33·33·33 | no strong preference |
speed | 15·15·70 | interactive work, pair programming |
intel | 20·60·20 | hard reasoning problems |
curl -X POST https://surp.ivc.lol/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model":"surp/best-chat","surp_mode":"speed",
"messages":[{"role":"user","content":"hi"}]}'
Or go fully custom with surp_weights — a
cost:intel:speed triple, e.g. "surp_weights":"0.3:0.4:0.3".
Models without a verified TPS fall back to cheapest so routing never fails.
The 402 response includes routing_reason so you can see which lens won.
curl -X POST https://surp.ivc.lol/api/svi/benchmark \
-H "Content-Type: application/json" \
-d '{"model":"my-quantized-model","mmlu":88,"humaneval":92,"submitter":"you"}'
Verified submissions move the leaderboard. Missing axes fall back to the model class default so partial submissions still count.