fix(model_prices): add provider-announced deprecation dates for OpenAI, Gemini, Vertex, Azure models - #37213
Conversation
…I, Gemini, Vertex, Azure models Adds missing deprecation_date values verified against provider retirement docs and flags native structured output support on Anthropic-direct Claude Fable/Mythos 5. 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:
|
|
|
Greptile SummaryThe PR synchronizes provider-announced model retirement dates into both model registries and enables native structured-output metadata for three Anthropic models.
Confidence Score: 5/5The PR appears safe to merge. No blocking failure remains.
|
| Filename | Overview |
|---|---|
| model_prices_and_context_window.json | Adds and corrects model lifecycle metadata and three structured-output capability flags; no eligible follow-up defect was established. |
| litellm/model_prices_and_context_window_backup.json | Mirrors the primary registry changes without introducing divergence. |
Reviews (2): Last reviewed commit: "fix(model_prices): add provider-announce..." | Re-trigger Greptile
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
|
bugbot run |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit 0897b6d. Configure here.
|
Superseded by #37283, which adds the same provider-announced deprecation dates (identical values on the 51 overlapping entries) plus 122 more. Closing in favor of that PR. |
TLDR
Problem this solves:
text-embedding-004carried a wrong retirement dateHow it solves it:
deprecation_datefrom official retirement docstext-embedding-004to Vertex's published datesupports_native_structured_outputon 3 Anthropic modelsUser Flow
Before: an admin running gpt-4.1 on Azure OpenAI gets no warning that the deployment retires on 2027-04-14
azure/gpt-4.1deploymentazure/gpt-4.1has no deprecation date fieldAfter: the same admin sees the published retirement date for that deployment
azure/gpt-4.1deploymentazure/gpt-4.1now carries"deprecation_date": "2027-04-14", matching Microsoft's published scheduleazure_ai/*), Vertex (gemini-2.5-*,veo-*, embeddings) and legacy OpenAI (babbage-002,davinci-002,gpt-3.5-turbo-instruct) deploymentsRelevant issues
Supports #26900 (proactive model deprecation alerts and
/model/deprecationsendpoint), which consumes registrydeprecation_datevalues.Changes
All values below come from official provider retirement/lifecycle docs; every date was read from the raw HTML/Markdown of the source page, not a rendered summary. Provider-announced dates for direct APIs were not copied to cloud-hosted variants (or vice versa) — each entry is dated only from the doc that covers that platform.
OpenAI — https://platform.openai.com/docs/deprecations
deprecation_dategpt-3.5-turbo-instruct,babbage-002,davinci-002text-moderation-007,text-moderation-latest,text-moderation-stableSize/quality-derived keys (
1024-x-1024/...) were left alone, matching existing registry convention.Gemini API — https://ai.google.dev/gemini-api/docs/deprecations
deprecation_dategemini/gemini-robotics-er-1.6-previewThe Gemini API page still shows "No shutdown date announced" for
gemini-2.5-pro/-flash/-flash-lite, so no date was added to thegemini/*keys for those.Vertex AI — https://cloud.google.com/vertex-ai/generative-ai/docs/learn/model-versions (Discontinuation date column)
deprecation_dategemini-2.5-pro,gemini-2.5-flash,gemini-2.5-flash-litegemini-2.5-flash-image,vertex_ai/gemini-2.5-flash-imagevertex_ai/veo-2.0-generate-001,vertex_ai/veo-3.0-generate-001,vertex_ai/veo-3.0-fast-generate-001text-embedding-005,text-multilingual-embedding-002,multimodalembedding@001text-embedding-004(was2026-01-14, not on the page)gemini-embedding-001was left undated: the page says "No sooner than May 20, 2028", which is not a committed date.Azure OpenAI + Azure AI Foundry — https://learn.microsoft.com/en-us/azure/foundry/openai/concepts/model-retirement-schedule (Retirement date column)
Azure OpenAI (
azure/*):gpt-4.12027-04-14,gpt-4.1-mini2027-04-14,gpt-4o-mini2027-04-14,gpt-4.1-nano2026-10-14,gpt-5/-mini/-nano2027-02-09,gpt-5.1/-codex/-codex-mini2027-05-15,gpt-5.22027-06-08,gpt-5.42027-09-02,gpt-5.4-mini/-nano2027-09-21,gpt-5.4-pro2027-09-07,gpt-5.52027-10-26,gpt-image-1.52027-06-16,gpt-image-22027-10-21,o12026-10-21,o32026-10-21,o3-mini2026-10-01,o3-pro2026-12-17,o4-mini2026-10-16.Azure AI Foundry (
azure_ai/*):claude-opus-4-12026-08-05,claude-haiku-4-5/claude-opus-4-5/claude-sonnet-4-52026-10-19,claude-opus-4-62027-02-02,claude-sonnet-4-62027-02-10,claude-opus-4-72027-04-06,deepseek-r12026-08-13,deepseek-v3-0324/deepseek-v3.12026-07-13,deepseek-v4-flash/deepseek-v4-pro2028-02-20,grok-3/grok-3-mini(incl.global/) andgrok-4-fast-reasoning/-non-reasoning2026-05-01,kimi-k2.52027-01-26,kimi-k2.62027-04-16,FW-DeepSeek-V3.2/FW-GLM-5/FW-GLM-5.1/FW-Kimi-K2.5/FW-MiniMax-M2.52027-07-01,Llama-3.2-11B-Vision-Instruct/Llama-3.2-90B-Vision-Instruct/Meta-Llama-3.1-405B-Instruct/Meta-Llama-3.1-8B-Instruct2026-06-13,cohere-rerank-v3.52026-05-14,mistral-document-ai-25052026-07-20,MAI-Image-2e2026-08-15,gpt-5.4/gpt-5.4-2026-03-052027-09-02,gpt-5.4-mini(+snapshot)/gpt-5.4-nano(+snapshot) 2027-09-21,gpt-5.4-pro(+snapshot) 2027-09-07,gpt-5.52027-10-26.Models with several live versions under one alias (e.g.
azure/gpt-4o,azure/sora-2,azure_ai/model_router) were skipped rather than pinned to one version's date.Anthropic capability flag — https://docs.claude.com/en/docs/build-with-claude/structured-outputs
claude-fable-5,claude-mythos-5,claude-mythos-previeware listed as supported models for structured outputs but were missingsupports_native_structured_output. Added on the Anthropic-direct entries only (matching #35930, which did the same forclaude-sonnet-5/claude-haiku-4-5).Audited, deliberately unchanged
eu.anthropic.claude-opus-4-1-20250805-v1:0: the Bedrock lifecycle row lists only us-east-1/us-east-2/us-west-2, so the EU inference-profile key was left undated.deepseek-v4-flash/deepseek-v4-propricing: https://api-docs.deepseek.com/quick_start/pricing now lists only peak ($0.44/$1.32 in, $1.32/$3.96 out per 1M) and off-peak (half those) rates, while the registry pins $0.14/$0.28 and $0.435/$0.87 as a "75% discounted active price" (test_deepseek_v4_models_in_cost_map, from [Feature]: Add cost mapping for Deepseek V4 Flash and Pro #26709). The registry matches neither published rate, but correcting it means changing that pinning test and choosing a single rate for a time-of-day price, so it is left for maintainers to decide.Pre-Submission checklist
Existing coverage applies (this is a data-only change):
tests/test_litellm/test_model_prices_schema.py(19 passed),tests/test_litellm/test_utils.py(264 passed), andpython ci_cd/check_files_match.pyconfirming the root registry andlitellm/model_prices_and_context_window_backup.jsonstay in sync.Proof
Data-only change; no runtime behavior to exercise e2e. Verification of the change against the provider docs, at commit 0897b6d:
python3 -c "import json; d=json.load(open('model_prices_and_context_window.json')); print(d['azure/gpt-4.1']['deprecation_date'], d['gemini-2.5-pro']['deprecation_date'], d['babbage-002']['deprecation_date'])"→2027-04-14 2026-10-20 2026-09-28, matching the Microsoft, Vertex and OpenAI pages linked above.python3 ci_cd/check_files_match.py→Passed! Files model_prices_and_context_window.json and litellm/model_prices_and_context_window_backup.json match.LITELLM_LOCAL_MODEL_COST_MAP=True pytest tests/test_litellm/test_model_prices_schema.py tests/test_litellm/test_utils.py -q→283 passed.Link to Devin session: https://app.devin.ai/sessions/9b4d808bfacd40a1abb0c894c05e04a0
Note
Cursor Bugbot is generating a summary for commit 0897b6d. Configure here.