fix(models): registry audit: new Together/Fireworks/Gemini/Mistral/xAI models, xai retirement repricing, bedrock grok-4.6 caching, deprecation dates - #38693
Conversation
… native audio (from #38573), anthropic sources Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
|
Exited without changes: #38693 has no labels, so it lacks the required |
Greptile SummaryThe PR updates model registry entries and corresponding regression coverage across several providers.
Confidence Score: 5/5The PR appears safe to merge. No blocking failure remains.
|
| Filename | Overview |
|---|---|
| model_prices_and_context_window.json | Updates the primary model registry with new models, corrected pricing, capabilities, caching metadata, and deprecation dates. |
| litellm/model_prices_and_context_window_backup.json | Mirrors the primary registry changes in the bundled backup catalog. |
| tests/test_litellm/llms/gemini/realtime/test_gemini_realtime_transformation.py | Updates realtime model fixtures and verifies that the native-audio model remains available only through Vertex AI. |
| tests/test_litellm/llms/xai/test_xai_redirected_slug_pricing.py | Adds comprehensive coverage for retired xAI model slugs and their redirect-target pricing. |
| tests/test_litellm/integrations/test_anthropic_cache_control_hook.py | Verifies Bedrock Grok cache-read billing without enabling explicit prompt-cache breakpoints. |
| tests/test_litellm/test_together_ai_model_metadata.py | Extends Together AI serverless model metadata coverage. |
Reviews (3): Last reviewed commit: "fix(registry): correct xai retired slug ..." | Re-trigger Greptile
| from typing import Final | ||
|
|
||
| catalog_path: Final = Path(__file__).parents[5] / "model_prices_and_context_window.json" | ||
| catalog: Final = json.loads(catalog_path.read_text()) |
There was a problem hiding this comment.
This test checks only entry presence and gemini_native_audio, so regressions in the newly added endpoints, modalities, pricing, limits, or capability flags will still pass CI. The assertion also exceeds the repository's 120-character line limit.
Context Used: CLAUDE.md (source)
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
There was a problem hiding this comment.
Superseded in 2bd7b58: the gemini/ entry was removed as unserved, this test now asserts the vertex-only invariant, and every line fits 120 chars
…uired for gemini models Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
…evin/1787944648-registry-audit-rolling
…ai/gemini deprecation dates Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…evin/1787944648-registry-audit-rolling
…tries - gemini: nano-banana-pro-preview, gemma-4-26b-a4b-it, gemma-4-31b-it - mistral: 14 official aliases from api.mistral.ai/v1/models - fireworks_ai: glm-5p3, qwen3-embedding-8b - xai: grok-imagine-video, grok-imagine-video-1.5 Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…, and unsourced entries Reprice ten more retired xAI slugs (grok-3 and grok-3-mini families, grok-4-1-fast) to the grok-4.3 rates they now bill at, with family-correct deprecation dates. Restore cache_read_input_token_cost on the Bedrock Grok 4.6 entries so implicit cache hits bill at the cache-read rate while explicit cachePoint stays unsupported. Drop the unsourced 1080p video rate and the gemini/ live native-audio entry the Gemini API 404s on. Add Groq qwen3.8-27b tool-use flags per Groq docs. Extend the xai and gemini tests to lock all of this in
1 similar comment
|
Superseded by #38804, the same commits on a litellm_ branch so CircleCI actually builds them. Review continues there. |
TLDR
Problem this solves:
How it solves it:
gemini/gemini-live-2.5-flash-native-audio(the Gemini API 404s it)deprecation_datevalues from official provider pagesUser Flow
Before: a developer calling a retired xAI slug gets billed at stale rates
"model": "xai/grok-3-mini"After: the same call is priced at the grok-4.3 redirect rates
"model": "xai/grok-3-mini"Relevant issues
Supports #26900 (deprecation metadata)
Linear ticket
Resolves LIT-6472
Changes in the review pass (2026-08-29, third pass)
xAI, per https://docs.x.ai/developers/migration/may-15-retirement and https://docs.x.ai/developers/pricing:
output_cost_per_second_1080pfromxai/grok-imagine-video-1.5: the pricing page lists one flat $0.08/second rate with no per-resolution pricingBedrock Grok 4.6, per the AWS model card:
cache_read_input_token_cost($0.55/M us, $0.50/M global) on both entries: AWS documents implicit prompt caching with cache-read billing for this modelsupports_prompt_cachingstays false because that flag gates explicitcachePointbreakpoints, which Bedrock rejects for Grok; without the rate, implicit cache hits would bill at the full input rateGemini:
gemini/gemini-live-2.5-flash-native-audio: the Gemini API returns 404 for it on v1beta, v1alpha, and v1, and the Live websocket rejects the model. The Vertex entry stays, and the realtime test now asserts the model remains Vertex-onlyGroq, per https://console.groq.com/docs/model/qwen3.8-27b:
groq/qwen/qwen3.8-27bgainssupports_function_calling,supports_response_schema, andsupports_tool_choice(the doc lists Tool Use, JSON Object Mode, and JSON Schema Mode)Together:
together_ai/zai-org/GLM-5.3added to the serverless coverage test listmax_output_tokens; LIT-6489 tracks fixing the sync's context-length fallback and sweeping those entriesChanges in the second pass (2026-08-29)
Together AI, per https://docs.together.ai/docs/serverless-models and https://www.together.ai/models/glm-5-3 (absorbed from #38733 with corrections):
together_ai/zai-org/GLM-5.3($1.40/M in, $4.40/M out, $0.26/M cached, 1048575 ctx). Corrected feat(models): sync together_ai model registry #38733'smax_output_tokensfrom 1048575 to 128000 (the documented output ceiling) and added the capability flags feat(models): sync together_ai model registry #38733 flagged as missing (tools, reasoning, response schema, prompt caching)together_ai/Qwen/Qwen3.8-2.4T-A95Brepriced: in 2e-06 -> 2.5e-06, out 6e-06 -> 6.25e-06, cache read 2.5e-07 -> 5e-07Gemini, per https://ai.google.dev/gemini-api/docs/pricing and
GET generativelanguage.googleapis.com/v1beta/models:gemini/nano-banana-pro-preview(API alias for Gemini 3 Pro Image; priced at the published gemini-3-pro-image rates, 131072 input limit from the models API)gemini/gemma-4-26b-a4b-itandgemini/gemma-4-31b-it(free of charge per the pricing page; 262144/32768 limits from the models API)Mistral, per
GET api.mistral.ai/v1/models(the API's ownaliasesfield): 14 official alias entries cloned from their canonical registry entries:mistral-medium-3.5,mistral-vibe-cli-latest,mistral-vibe-cli-with-tools,mistral-vibe-cli-fast,mistral-code-latest,mistral-code-fim-latest,mistral-code-agent-latest,mistral-ocr-3,mistral-ocr-3-0,mistral-ocr-4,voxtral-mini-latest,voxtral-mini-realtime-2602,voxtral-mini-realtime-latest,labs-leanstral-1-5-1Fireworks AI, per https://docs.fireworks.ai/serverless/pricing and
GET api.fireworks.ai/inference/v1/models:fireworks_ai/accounts/fireworks/models/glm-5p3($1.40/M in, $4.40/M out, $0.26/M cached; 1048576 ctx from the models API, 128000 output per the GLM-5.3 model docs)fireworks_ai/accounts/fireworks/models/qwen3-embedding-8b($0.10/M input per the embeddings pricing table, 40960 ctx)xAI, per https://docs.x.ai/developers/models/grok-imagine-video and https://docs.x.ai/developers/models/grok-imagine-video-1.5:
xai/grok-imagine-video($0.05/second output) andxai/grok-imagine-video-1.5($0.08/second output)Chose not to change:
glm-5p3-flashand thekimi-k2p6-turborouter: in the models API but no row on the pricing pageantigravity-preview-*,deep-research-*: billed at underlying model rates, no fixed per-token price to record;aqa: no published pricingChecked, nothing missing or wrong: OpenAI (models API vs registry; computer-use-preview and current snapshots present), Anthropic (models API; entries current). DeepSeek model-list API rejected the configured key, so that provider was not audited this run; Groq was checked against its public docs in the review pass. OpenRouter/Bedrock/Azure/Cohere/Perplexity/Nebius/Voyage were not reached this run; they stay on the audit backlog.
Changes in the first pass (2026-08-29)
xAI May 15, 2026 retirements, per https://docs.x.ai/developers/migration/may-15-retirement and https://docs.x.ai/developers/models/grok-4.3 and https://docs.x.ai/developers/models/grok-build-0.1: retired chat slugs (grok-3, grok-4, grok-4-0709, grok-4-1-fast-, grok-4-fast-) now priced at grok-4.3 rates (1.25e-06 in, 2.5e-06 out, 2e-07 cache read, 200K tier at 2.5e-06/5e-06/4e-07); stale 128K tiers removed. grok-code-fast* aliases priced at grok-build-0.1 rates (1e-06 in, 2e-06 out, 2e-07 cache read)
Bedrock Grok 4.6 (
us.xai.grok-4.6,global.xai.grok-4.6): explicit prompt caching flag removed; Bedrock rejectscachePointbreakpoints for this model. The review pass above restores the implicit cache-read billing this initially droppedOpenAI deprecation dates, per https://platform.openai.com/docs/deprecations:
deprecation_date: 2026-12-01added to the 15 sized/qualitygpt-image-1.5-2025-12-16variants (the base snapshot entry already had it)Gemini, per https://ai.google.dev/gemini-api/docs/deprecations:
gemini/gemini-omni-flash-previewgetsdeprecation_date: 2026-09-30(replacement gemini-omni-1.1-flash). The vertex_ai copy was left alone because the Vertex deprecations page does not list itVerified as current, no change needed: Anthropic dates against https://docs.anthropic.com/en/docs/about-claude/model-deprecations, other Gemini dates, OpenAI exact-name dates
Absorbed from other PRs
Dropped as unverifiable
deprecation_date: 2026-02-28on Grok-2-era xAI models: the announcement URL it cites returns 404 and no live official xAI page states that date. Itsmode: responseschanges are already on the base branchNot absorbed (code/behavior or structural PRs that only incidentally touch the JSON): #36233, #29898, #30383, #36416, #36422
Pre-Submission checklist
Please complete all items before asking a LiteLLM maintainer to review your PR
uv run pytest tests/test_litellm/<your_test_file>.py -v. Leave the suites (make test-unit-*,make test-unit) to CI: it finishes in ~15 minutes where a laptop takes an hour or more@greptileaito re-request a review after pushing changes)Delays in PR merge?
If you're seeing a delay in your PR being merged, ping the LiteLLM Team on Slack (#pr-review).
Screenshots / Proof of Fix
Registry data change; validated at the PR tip:
python3 ci_cd/check_files_match.py: Passed, both registry copies matchLITELLM_LOCAL_MODEL_COST_MAP=True uv run --no-sync pytest -q tests/test_litellm/test_model_prices_schema.py tests/test_litellm/test_model_cost_aliases.py tests/test_litellm/llms/xai/test_xai_cost_calculator.py tests/test_litellm/llms/xai/test_xai_redirected_slug_pricing.py tests/test_litellm/llms/gemini/realtime/test_gemini_realtime_transformation.py tests/test_litellm/test_together_ai_model_metadata.py tests/test_litellm/integrations/test_anthropic_cache_control_hook.py: all passedType
🐛 Bug Fix
Caveats (if any)
Medium
Low
gemini/gemini-live-2.5-flash-native-audioentry removed; the API already 404s itFinal Attestation
Link to Devin session: https://app.devin.ai/sessions/1eb47e52d5a0484985cc0e51592871d5
Open in Devin Desktop: https://app.devin.ai/desktop/session/1eb47e52d5a0484985cc0e51592871d5?variant=devin