Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions evalboard/lib/pricing.generated.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ export const PRICING: Record<string, Pricing> = {
"claude-haiku-3-5": { inputPerMTok: 0.8, outputPerMTok: 4.0, cacheWritePerMTok: 1.0, cacheReadPerMTok: 0.08 },
"claude-haiku-4-5": { inputPerMTok: 1.0, outputPerMTok: 5.0, cacheWritePerMTok: 1.25, cacheReadPerMTok: 0.1 },
"claude-haiku-4-5-20251001": { inputPerMTok: 1.0, outputPerMTok: 5.0, cacheWritePerMTok: 1.25, cacheReadPerMTok: 0.1 },
"claude-haiku-5-5": { inputPerMTok: 0.1, outputPerMTok: 0.5, cacheWritePerMTok: 0.125, cacheReadPerMTok: 0.01 },
"claude-opus-4": { inputPerMTok: 15.0, outputPerMTok: 75.0, cacheWritePerMTok: 18.75, cacheReadPerMTok: 1.5 },
"claude-opus-4-1": { inputPerMTok: 15.0, outputPerMTok: 75.0, cacheWritePerMTok: 18.75, cacheReadPerMTok: 1.5 },
"claude-opus-4-20250514": { inputPerMTok: 15.0, outputPerMTok: 75.0, cacheWritePerMTok: 18.75, cacheReadPerMTok: 1.5 },
Expand All @@ -36,6 +37,7 @@ export const PRICING: Record<string, Pricing> = {
"claude-sonnet-4-5-20250929": { inputPerMTok: 3.0, outputPerMTok: 15.0, cacheWritePerMTok: 3.75, cacheReadPerMTok: 0.3 },
"claude-sonnet-4-6": { inputPerMTok: 3.0, outputPerMTok: 15.0, cacheWritePerMTok: 3.75, cacheReadPerMTok: 0.3 },
"claude-sonnet-5": { inputPerMTok: 2.0, outputPerMTok: 10.0, cacheWritePerMTok: 2.5, cacheReadPerMTok: 0.2 },
"claude-sonnet-5-5": { inputPerMTok: 2.0, outputPerMTok: 10.0, cacheWritePerMTok: 2.5, cacheReadPerMTok: 0.1 },
"codex-mini-latest": { inputPerMTok: 1.5, outputPerMTok: 6.0, cacheWritePerMTok: 1.5, cacheReadPerMTok: 0.375 },
"deepseek.v3.2": { inputPerMTok: 0.74, outputPerMTok: 2.22, cacheWritePerMTok: 0.74, cacheReadPerMTok: 0.0 },
"gemini-3-1-pro-preview": { inputPerMTok: 2.0, outputPerMTok: 12.0, cacheWritePerMTok: 0.0, cacheReadPerMTok: 0.2 },
Expand Down Expand Up @@ -73,6 +75,7 @@ export const PRICING: Record<string, Pricing> = {
"gpt-6-astra": { inputPerMTok: 10.0, outputPerMTok: 50.0, cacheWritePerMTok: 12.5, cacheReadPerMTok: 1.0 },
"gpt-6-luna": { inputPerMTok: 0.1, outputPerMTok: 0.5, cacheWritePerMTok: 0.125, cacheReadPerMTok: 0.01 },
"gpt-6-sol": { inputPerMTok: 2.0, outputPerMTok: 10.0, cacheWritePerMTok: 2.5, cacheReadPerMTok: 0.2 },
"gpt-6.1-sol": { inputPerMTok: 2.0, outputPerMTok: 10.0, cacheWritePerMTok: 2.5, cacheReadPerMTok: 0.1 },
"jev-1.13.0": { inputPerMTok: 0.042, outputPerMTok: 0.0, cacheWritePerMTok: 0.042, cacheReadPerMTok: 0.0 },
"jev-latest": { inputPerMTok: 0.042, outputPerMTok: 0.0, cacheWritePerMTok: 0.042, cacheReadPerMTok: 0.0 },
"kimi-k2-7-code": { inputPerMTok: 0.95, outputPerMTok: 4.0, cacheWritePerMTok: 0.0, cacheReadPerMTok: 0.19 },
Expand Down
8 changes: 6 additions & 2 deletions src/coder_eval/pricing.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
Sources: https://platform.claude.com/docs/en/about-claude/pricing,
https://developers.openai.com/api/docs/pricing,
https://ai.google.dev/gemini-api/docs/pricing, and OpenRouter's live
``/api/v1/models`` (every row re-verified 2026-09-03, except the Bedrock
``/api/v1/models`` (every row re-verified 2026-10-07, except the Bedrock
open-weight block: AWS publishes no eu-north-1 figures for those three).

SSOT for rates on both halves of the repo: ``evalboard/lib/pricing.generated.ts`` is
Expand Down Expand Up @@ -77,12 +77,15 @@ class ModelPricing:
"claude-opus-4-1": ModelPricing(15.0, 75.0, 18.75, 1.50),
"claude-opus-4": ModelPricing(15.0, 75.0, 18.75, 1.50),
"claude-opus-4-20250514": ModelPricing(15.0, 75.0, 18.75, 1.50),
# $2/$10, NOT the $3/$15 that Sonnet 4.6 and earlier pay. Do not copy the 4.x row onto it.
# $2/$10, NOT Sonnet 4.6's $3/$15. 5.5's cache hits fell to 0.05x input on 2026-10-07.
"claude-sonnet-5-5": ModelPricing(2.0, 10.0, 2.50, 0.10),
"claude-sonnet-5": ModelPricing(2.0, 10.0, 2.50, 0.20),
"claude-sonnet-4-6": ModelPricing(3.0, 15.0, 3.75, 0.30),
"claude-sonnet-4-5": ModelPricing(3.0, 15.0, 3.75, 0.30),
"claude-sonnet-4-5-20250929": ModelPricing(3.0, 15.0, 3.75, 0.30),
"claude-sonnet-4-20250514": ModelPricing(3.0, 15.0, 3.75, 0.30),
# CAVEAT: the <=100K-prompt tier; a prompt over 100K bills every bucket at 5x, so long contexts read low.
"claude-haiku-5-5": ModelPricing(0.10, 0.50, 0.125, 0.01),
# $1/$5. Not $0.80/$4 — those are Haiku 3.5's rates.
"claude-haiku-4-5": ModelPricing(1.0, 5.0, 1.25, 0.10),
"claude-haiku-4-5-20251001": ModelPricing(1.0, 5.0, 1.25, 0.10),
Expand Down Expand Up @@ -120,6 +123,7 @@ class ModelPricing:
"gpt-5.6-luna": ModelPricing(0.20, 1.20, 0.25, 0.02),
# CAVEAT: flat rate; GPT-6's >272K-input tier (2x input / 1.5x output) is not modelled and reads low.
"gpt-6-astra": ModelPricing(10.0, 50.0, 12.50, 1.00),
"gpt-6.1-sol": ModelPricing(2.0, 10.0, 2.50, 0.10),
"gpt-6-sol": ModelPricing(2.0, 10.0, 2.50, 0.20),
"gpt-6-luna": ModelPricing(0.10, 0.50, 0.125, 0.01),
# Keyed on the literal ids ListModels returns. No cache-write fee, so
Expand Down
Loading