Skip to content

Fix Grok 4.1 Fast → Grok 4.3 mispricing on the leaderboard (#166) - #172

Merged
yl231 merged 1 commit into
mainfrom
fix/grok-4.3-pricing-166
Aug 5, 2026
Merged

Fix Grok 4.1 Fast → Grok 4.3 mispricing on the leaderboard (#166)#172
yl231 merged 1 commit into
mainfrom
fix/grok-4.3-pricing-166

Conversation

@yl231

@yl231 yl231 commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Fixes #166. Thanks to @loswald for the detailed, reproducible audit.

Problem

xAI retired grok-4-1-fast-reasoning on 2026-05-15 and silently redirects it to grok-4.3 (low reasoning) — a stronger model priced ~5–6× higher ($1.25/$2.50 vs $0.20/$0.50 per M). Routers that selected the retired slug via xAI/OpenRouter were served grok-4.3 but billed at the retired slug's old price, inflating their cost-aware Arena scores. The prediction artifacts expose it directly: those rows record provider=openrouter, model_used=x-ai/grok-4.3.

Fix — price the model that actually answered

  • model_cost.json: add grok-4.3 / x-ai/grok-4.3 at $1.25/$2.50.
  • run.py / evaluate_models.py: bill by generated_result.model_used when it is present and priced, otherwise the router's selected slug (new has_price() helper; cost lookup factored into _lookup_cost_info()). This is guardrail [Setup] GitHub CI #3 from the issue and generalizes to any future redirect.
  • check_config_prediction_files.py: preflight warning when a submission selects a retired/redirected slug (guardrail [Setup] Pre commit #1). Warning, not hard-fail, because Azure-hosted Grok 4.1 is a legitimate use.

Precision — only provably-redirected rows change

Router grok rows provider model_used Action
cross-router 217 openrouter x-ai/grok-4.3 repriced
vllm-sr 257 openrouter x-ai/grok-4.3 repriced
nadir-tumbler 3,571 xAI (no field) none → backfilled x-ai/grok-4.3 repriced
azure-model-router 4,803 azure none unchanged (Azure-hosted 4.1)
nadir-cascade-v2 3,101 azure none unchanged (Azure-hosted 4.1)

grok-4-1-fast-reasoning is the only grok slug used anywhere in the fleet. Nadir-Tumbler recorded no model_used, but it selected the retired slug and was generated 2026-07-04 (7 weeks after the redirect), so per maintainer decision its grok rows are backfilled with the resolved model; the team will be notified and invited to resubmit an optimized version.

Leaderboard impact (accuracy held fixed, affected calls billed at grok-4.3)

Router Arena Cost/1K Rank
Cross-Router 76.12 → 75.75 $0.30 → $0.40 #1#1
vLLM-SR 75.30 → 74.86 $0.30 → $0.42 #2#3
Nadir-Tumbler 75.17 → 73.44 $0.08 → $0.37 #4#5

Reproduces both the current leaderboard and @loswald's independently-computed repriced numbers. Optimality columns are left as submitted (headline Arena/Accuracy/Cost corrected). Validated: ruff/ruff-format/codespell/mypy clean; build_site_data.py emits 27 clean rows.

xAI retired `grok-4-1-fast-reasoning` on 2026-05-15 and silently redirects it
to grok-4.3 (low reasoning), which is stronger and ~5-6x pricier. Submissions
that selected the retired slug via xAI/OpenRouter were served grok-4.3 but
billed at the retired slug's $0.20/$0.50 price, inflating their cost-aware
Arena scores. Reported and audited by @loswald (thanks!).

Fix (prices the model that actually answered, not the requested alias):
- model_cost.json: add `grok-4.3` and `x-ai/grok-4.3` at $1.25/$2.50.
- evaluate_models.py: add `has_price()`; factor the cost lookup into
  `_lookup_cost_info()`.
- run.py: bill by `generated_result.model_used` when it is present and priced,
  else the router's selected model. Redirected slugs are now billed correctly.
- check_config_prediction_files.py: preflight warning for retired/redirected
  slugs (guardrail #1 from the issue).

Precision (only provably-redirected rows change; Azure-hosted Grok 4.1 is left
alone):
- cross-router  217 rows (openrouter, model_used=x-ai/grok-4.3) -> repriced
- vllm-sr       257 rows (openrouter, model_used=x-ai/grok-4.3) -> repriced
- nadir-tumbler 3571 rows (xAI, model_used absent): backfilled
  model_used=x-ai/grok-4.3 (retired slug + 2026-07-04 generation date) so the
  same mechanism reprices it. Team to be notified.
- azure-model-router (4803) and nadir-cascade-v2 (3101): provider=azure, NOT
  subject to the xAI redirect -> unchanged.

Leaderboard (accuracy held fixed, affected calls billed at grok-4.3):
- Cross-Router   76.12 -> 75.75  ($0.30 -> $0.40/1K)  stays #1
- vLLM-SR        75.30 -> 74.86  ($0.30 -> $0.42/1K)  #2 -> #3
- Nadir-Tumbler  75.17 -> 73.44  ($0.08 -> $0.37/1K)  #4 -> #5

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.

Leaderboard integrity: retired Grok 4.1 Fast slug silently resolved to Grok 4.3 at the old price

1 participant