Skip to content

fix(model_prices): add Bedrock flex prices, Anthropic web search flags, Gemini shutdown dates, OpenRouter alias drift, Mistral Large 4 context - #44910

Merged
kerrylu-berri merged 12 commits into
mainfrom
litellm_model_registry_audit_20261006
Oct 8, 2026
Merged

kerrylu-berri merged 12 commits into
mainfrom
litellm_model_registry_audit_20261006

Conversation

@devin-ai-integration

@devin-ai-integration devin-ai-integration Bot commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Rolling registry PR for the scheduled model-pricing audit. Data-only change to model_prices_and_context_window.json and its byte-identical backup; generated schema unchanged. The Claude Haiku 5.5 flag fix, the openrouter/anthropic/claude-haiku-5.5 row and the Mistral Large 4 rows from earlier runs have since landed on main with the same values, so they drop out of this diff

Run of 2026-10-08 evening

Mistral (direct): max_input_tokens and max_tokens on mistral/mistral-large-4 and mistral/mistral-large-4-0 go from 524288 to 1048576. The raw https://docs.mistral.ai/models/mistral-large-4 model card shows Context 1M, and GET https://api.mistral.ai/v1/models returns max_context_length: 1048576 for both ids. max_output_tokens is not set on these rows and was left unset. tests/unit/test_mistral_large_4_model_metadata.py (added in #44870 with the 524288 value) now expects 1048576

OpenRouter (source for every row: GET https://openrouter.ai/api/v1/models, OpenRouter's own price list for its routes)

Key Field Before After
openrouter/mistralai/mistral-large-4-0 max_input_tokens 524288 1048576
openrouter/~anthropic/claude-sonnet-latest cache_read_input_token_cost 2e-07 1e-07
openrouter/~openai/gpt-sol-latest cache_read_input_token_cost / _above_272k_tokens 2e-07 / 4e-07 1e-07 / 2e-07
openrouter/anthropic/claude-sonnet-5.5:batch cache_read_input_token_cost 1e-07 5e-08
openrouter/~anthropic/claude-haiku-latest prices, limits, *_above_100k_tokens tiers Haiku 4.5 values (1e-06 / 5e-06, 200k / 64k) Haiku 5.5 values (1e-07 / 5e-07, cache read 1e-08, write 1.25e-07, 1h write 2e-07, 100k-token tier, 1M / 128k)
openrouter/anthropic/claude-haiku-5.5:batch new row none 5e-08 / 2.5e-07, cache read 5e-09, write 6.25e-08, 1h write 1e-07, 100k-token tier at 5x, 1M / 128k

The ~anthropic/claude-haiku-latest alias drifted when OpenRouter repointed it at Haiku 5.5, and the API now returns the same prices and limits as openrouter/anthropic/claude-haiku-5.5, which main already carries. The Sonnet 5.5 and Haiku 5.5 cache-read prices match the raw https://platform.claude.com/docs/en/about-claude/pricing rows ($0.10 and $0.01 per MTok)

Checked this run and not changed: codestral-2508, because /v1/models says 256k context but the raw https://docs.mistral.ai/models/model-cards/codestral-25-08 card says 128k. Anthropic claude-sonnet-4-5-20250929, because /v1/models reports the 200k default while the registry carries the documented 1M beta window. gpt-audio-mini-2025-10-06, with no separate price row. OpenRouter open-weight routes, whose headline price follows the cheapest live provider and moves daily. Fireworks qwen3p8-2p4t-a95b still has no price on https://fireworks.ai/pricing or its model page via r.jina.ai (context 262k only). Bedrock ListFoundationModels profile-only base ids (openai.gpt-6-astra, xai.grok-4.6, zai.glm-5.3 and others) already have us./global. rows

Bedrock flex tier prices (absorbed from #45320 by @roytev, run of 2026-10-08)

input_cost_per_token_flex, output_cost_per_token_flex and, where the model has cache pricing, cache_read_input_token_cost_flex added to 110 Bedrock rows across 43 models (225 fields). Applied at field level from the PR's own merge base, so no existing field changed

Source: AWS Price List API offer file https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AmazonBedrock/current/index.json (13315 products, 3157 *-flex usage types). Every one of the 225 values was matched to the *-flex usage type for the same model and region (bedrock/<region>/... rows to that region, us./eu./apac. profiles to the regions whose standard price equals the row's standard price, unprefixed rows to any region), with the per-1K or per-1M unit converted to per token. Example: us.amazon.nova-2-lite-v1:0 maps to USE1/USE2/USW2-Nova2.0Lite-input-tokens-flex 0.000165 per 1K, so input_cost_per_token_flex 1.65e-07, output 1.375e-06, cache read 4.125e-08

Together AI (absorbed in part from #45307)

deprecation_date 2026-09-29 removed from together_ai/deepseek-ai/DeepSeek-V4-Flash-0731 and together_ai/deepseek-ai/DeepSeek-V4-Pro-0813. The raw https://docs.together.ai/docs/deprecations.md table no longer lists either id (it lists only deepseek-ai/DeepSeek-V4-Pro at 2026-08-27), and GET https://api.together.ai/v1/models still serves both on 2026-10-08 with prices matching main, so the lapsed date would wrongly mark live models as retired

Dropped from #45307: the together_ai/Qwen/Qwen3.7-Max price change, because /v1/models returns 2.50 / 7.50 / 0.50 cached per 1M while the raw https://www.together.ai/pricing row says $1.50 / $4.50 / $0.30 cached, so the official sources disagree. The together/Tev1-4B-experimental cache-price removal, because the pricing page publishes no cache column for it. The 19 absent-model warnings, because Together gives no removal date for them

Anthropic (direct litellm_provider: "anthropic")

supports_web_search: true added to 11 rows that lacked it: claude-opus-5-5, claude-fable-5-1, claude-opus-5, claude-sonnet-5, claude-fable-5, claude-opus-4-8, claude-opus-4-7, claude-sonnet-4-6, claude-opus-4-6, claude-opus-4-5-20251101, claude-haiku-4-5-20251001. Source: GET https://api.anthropic.com/v1/models returns capabilities.server_tools.web_search.supported: true for each id, and https://platform.claude.com/docs/en/agents-and-tools/tool-use/web-search-tool says to read that Models API capability for per-model availability

Gemini API

Source for every row: https://ai.google.dev/gemini-api/docs/deprecations, raw HTML table rows cross-checked with r.jina.ai

Key Before After
gemini/gemini-2.5-flash-image 2026-10-02 2027-03-15
gemini/gemini-omni-flash-preview 2026-09-30 2026-10-22
gemini-2.5-flash-native-audio-preview-12-2025 and gemini/ copy none 2026-11-17
gemini-3.1-flash-live-preview and gemini/ copy none 2026-11-17
gemini-2.5-flash-preview-tts and gemini/ copy none 2026-11-17
gemini/gemini-2.5-pro-preview-tts, gemini/gemini-3.1-flash-tts-preview none 2026-11-17

Checked in earlier runs and not changed

OpenAI (/v1/models): only fine-tune, dated search, deep-research and computer-use snapshots are absent; no published per-token row was confirmed for the dated aliases

Gemini (/v1beta/models): antigravity-preview-* is a managed agent and aqa uses generateAnswer, so neither is a token-priced chat row. API token limits disagree with https://ai.google.dev/gemini-api/docs/models for image, Lyria, Veo, Deep Research and Live rows, so no limit was changed

Bedrock (ListFoundationModels, ListInferenceProfiles): only provisioned-only Nova/Titan variants and legacy profiles are missing

Azure: https://prices.azure.com/api/retail/prices matches azure/gpt-5.6-luna and azure/gpt-5.6-terra. Voyage: https://docs.voyageai.com/docs/pricing matches. Nebius: pricing page is behind a login, nothing checked. Fireworks: qwen3p8-2p4t-a95b has no published per-token price. Perplexity: https://docs.perplexity.ai/docs/agent-api/models matches. Cohere: model page limits kept over the /v1/models context length. Groq: allam-2-7b has no price on https://groq.com/pricing. Mistral, xAI and DeepSeek: no missing rows

Capability pins: ci_cd/cost_map_pins.json does not exist on main, so no pinned flag could be compared

Open registry PRs re-checked and not absorbed

PR Why not absorbed
#43879 kimi-k2.5 Same values already on main as moonshot/kimi-k2.5
#43753 deepseek-v3 Same values already on main; https://api-docs.deepseek.com/quick_start/pricing no longer lists it
#43859 tinker No tinker provider exists in LiteLLM
#32117 Cohere embed-multilingual-light-v3.0 https://cohere.com/pricing no longer lists per-token Embed v3 pricing
#40368 Bedrock Claude 3 Haiku cache pricing Keys are gone from main
#41376 xAI grok-4 flags xai/grok-4* keys no longer exist on main
#30775 Bedrock us.xai.grok-4.3 Not returned by Bedrock ListFoundationModels
#36274 Azure gpt-5.6 terra/luna Contradicted by the Azure retail prices API
#29920 qwen3.7-max Filed under litellm_provider: "anthropic"
#36084, #31460 Every registry field they change already has the same value on main
#41775 Together date removals Superseded by the current Together deprecations table
#45386, #45158, #45016, #44822, #44817, #44808, #44651, #44416, #44400, #44379, #44303, #44299, #44168, #44167, #44163, #44091 New-provider or code PRs whose JSON rows depend on code in the same PR, left alone
#45358, #45200, #45026, #45019, #45016, #44969, #44863, #44856, #44839, #44700, #44601, #44432, #43581, #43457, #43390, #43363, #43094, #42829, #42669, #42668, #41857, #38165, #36385, #31018, #29679, #22086 Code/behavior PRs that touch the JSON incidentally, left alone

Superseded and closed: #45320, #45307

Checks: LITELLM_LOCAL_MODEL_COST_MAP=True uv run --no-sync pytest -q tests/unit/test_model_prices_schema.py tests/unit/test_model_cost_aliases.py 86 passed, check_files_match.py passed, cost_map_guard.py --base origin/main --head HEAD --head-ref litellm_model_registry_audit_20261006 passed, duplicate-key JSON parse and jsonschema validation passed, schema generator produced no diff

Link to Devin session: https://app.devin.ai/sessions/74ee32335515402a92a8b25ff7cfdab0
Open in Devin Desktop: https://app.devin.ai/desktop/session/74ee32335515402a92a8b25ff7cfdab0?variant=devin

Co-authored-by: moyai-devin-berriai[bot] <336287033+moyai-devin-berriai[bot]@users.noreply.github.com>
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@devin-ai-integration

Copy link
Copy Markdown
Contributor Author

I'll fix CI failures and address comments from users with write access. I'll skip comments containing "(aside)".

  • Disable automatic comment, CI, and merge conflict monitoring

@greptile-apps

greptile-apps Bot commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

RetriggerConfidence Score: 5/5

[Medium risk] Adds pricing and capability data for new model variants.

The registry additions appear safe to merge

What we checked:

  • New model names resolve: The lookup constructs provider-prefixed names and checks them before falling back to other names

Summary

Adds Mistral Large 4, its native alias, and its OpenRouter route to both model registries

  • Adds token prices, cache-read prices, limits, and supported features
  • Enables native Mistral reasoning requests through the existing metadata-driven code
  • No actionable issues were established
  • devin-ai-integration[bot] acknowledges that launch-discount prices need updating when the sale ends and intentionally uses the API's 524288 context limit despite the model page saying “1M”

Reviews (1) · Last reviewed commit: "feat(model_prices): add Mistral Large 4 ..."

@codecov

codecov Bot commented Oct 6, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@codspeed

codspeed Bot commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

Merging this PR will not alter performance

✅ 31 untouched benchmarks


Comparing litellm_model_registry_audit_20261006 (bbd7b53) with main (3571b5d)

Open in CodSpeed

…e and Omni previews

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@devin-ai-integration devin-ai-integration Bot changed the title feat(model_prices): add Mistral Large 4 and its OpenRouter route fix(model_prices): sync Gemini API shutdown dates for TTS, Live, image and Omni previews Oct 7, 2026
…search flags and OpenRouter Claude Haiku 5.5

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@devin-ai-integration devin-ai-integration Bot changed the title fix(model_prices): sync Gemini API shutdown dates for TTS, Live, image and Omni previews fix(model_prices): correct Claude Haiku 5.5 flags, add Anthropic web search flags, OpenRouter Claude Haiku 5.5 and Gemini shutdown dates Oct 7, 2026
devin-ai-integration Bot and others added 2 commits October 8, 2026 13:12
…y_audit_20261006

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

# Conflicts:
#	litellm/model_prices_and_context_window_backup.json
#	model_prices_and_context_window.json
…ther DeepSeek V4 dates

Absorbs #45320 (Bedrock flex prices, verified against the AWS Price List API)
and the DeepSeek V4 date removals from #45307 (verified against Together docs and API)

Co-authored-by: Roi <roi@roitev.com>
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@devin-ai-integration devin-ai-integration Bot changed the title fix(model_prices): correct Claude Haiku 5.5 flags, add Anthropic web search flags, OpenRouter Claude Haiku 5.5 and Gemini shutdown dates fix(model_prices): add Bedrock flex prices, Anthropic web search flags, Gemini shutdown dates, clear lapsed Together dates Oct 8, 2026
…y_audit_20261006

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

# Conflicts:
#	litellm/model_prices_and_context_window_backup.json
#	model_prices_and_context_window.json
…aliases and batch pricing

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@devin-ai-integration devin-ai-integration Bot changed the title fix(model_prices): add Bedrock flex prices, Anthropic web search flags, Gemini shutdown dates, clear lapsed Together dates fix(model_prices): add Bedrock flex prices, Anthropic web search flags, Gemini shutdown dates, OpenRouter alias drift, Mistral Large 4 context Oct 8, 2026
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@kerrylu-berri
kerrylu-berri merged commit 95dd90f into main Oct 8, 2026
105 checks passed
@kerrylu-berri
kerrylu-berri deleted the litellm_model_registry_audit_20261006 branch October 8, 2026 20:12
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