Skip to content

chore(cost-map): move azure gpt-realtime-2.1-mini deprecation date to the later Models API date - #43058

Merged
kerry-berri merged 1 commit into
mainfrom
litellm_sync_azure
Sep 24, 2026
Merged

kerry-berri merged 1 commit into
mainfrom
litellm_sync_azure

Conversation

@devin-ai-integration

@devin-ai-integration devin-ai-integration Bot commented Sep 24, 2026 •

Copy link
Copy Markdown
Contributor

TLDR

Problem this solves:

  • azure/gpt-realtime-2.1-mini carries a retirement date earlier than the one Azure's Models API states
  • The retirement schedule page and the Models API disagree, and the row held the earlier date

How it solves it:

  • Moves deprecation_date from 2027-06-25 to 2027-07-31, the Models API model.deprecation.inference value
  • Same edit in model_prices_and_context_window.json and litellm/model_prices_and_context_window_backup.json

User Flow

Before: a proxy admin planning migrations sees a retirement date for gpt-realtime-2.1-mini that is a month earlier than what Azure enforces

  1. Their proxy has a deployment on azure/gpt-realtime-2.1-mini
  2. They send GET https://litellm-domain/model/deprecations with the master key
  3. The model appears with deprecation_date 2027-06-25
  4. They schedule the migration five weeks earlier than needed

After: the same call reports the later date Azure's Models API enforces

  1. Their proxy has the same deployment
  2. They send GET https://litellm-domain/model/deprecations with the master key
  3. The model appears with deprecation_date 2027-07-31
  4. They plan the migration against that date

Pre-Submission checklist

Please complete all items before asking a LiteLLM maintainer to review your PR

  • I have added meaningful tests
  • The handful of test files covering my change pass locally, e.g. 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
  • My PR passes all required CI/CD checks (e.g., lint, schema.d.ts sync check, etc.)
  • My PR's scope is as isolated as possible; it only solves 1 specific problem
  • I have received a Greptile Confidence Score of at least 4/5 before requesting a maintainer review (Greptile reviews automatically once the PR is opened; only comment @greptileai to re-request a review after pushing changes)

Screenshots / Proof of Fix

This is a data only change to the cost map, so the proof is the row value at the merge base and the tip next to the Azure evidence. No completion calls were made on purpose; the row is changed on the strength of the list API row

Shared setup: python3 -c 'import json; d=json.load(open("model_prices_and_context_window.json")); print(d["azure/gpt-realtime-2.1-mini"]["deprecation_date"])'

Before (b72a030)

  1. Run the shared command at the merge base
  2. Output: 2027-06-25

After (1702f49)

  1. Run the shared command at the tip
  2. Output: 2027-07-31
  3. LITELLM_LOCAL_MODEL_COST_MAP=True uv run --no-sync pytest tests/test_litellm/test_model_prices_schema.py tests/test_litellm/test_cost_map_guard.py -q passes, 85 tests

Row changed

One row, kind api. Evidence is the Azure ARM Models API, GET https://management.azure.com/subscriptions/{sub}/providers/Microsoft.CognitiveServices/locations/eastus2/models?api-version=2024-10-01, fetched fresh on 2026-09-24 with npm run providers -- list azure --raw in BerriAI/litellm-providers

catalog key Models API row deprecation.inference deprecation_date before deprecation_date written
azure/gpt-realtime-2.1-mini OpenAI.gpt-realtime-2.1-mini.2026-07-07 2027-07-31T00:00:00Z 2027-06-25 2027-07-31

The retirement schedule page (https://learn.microsoft.com/en-us/azure/foundry/openai/concepts/model-retirement-schedule, fetched raw with a cache buster) lists the row gpt-realtime-2.1-mini | 2026-07-07 | GA | 2027-06-25 | —. The two sources disagree, so ruling azure-conflicting-dates-latest-wins applies and the later Models API date is written. The sibling azure/gpt-realtime-2.1 already holds 2027-07-31 from the same rule

Changed pages, no pricing difference

https://learn.microsoft.com/en-us/azure/foundry/foundry-models/concepts/claude-models and https://learn.microsoft.com/en-us/azure/foundry/foundry-models/concepts/models-sold-directly-by-azure were fetched raw with a cache buster. Neither states a price; the Claude page lists model, availability, context window and capabilities, and the direct sale page lists models, endpoints and capabilities. npm run providers -- prices azure, which reads the Claude page together with the Anthropic pricing page, produced 202 records and every field matches the catalog, so no price row changes

Naming mismatch, not delistings

The Azure Models API emits ids as Publisher.model.version (for example OpenAI.gpt-4.1.2025-04-14) while the catalog keys are azure/<model>. Each id is mapped by dropping the publisher prefix and the trailing version segment and matching the lower cased model name to azure/<model>, with tts, tts-hd and whisper mapping to azure/tts-1, azure/tts-1-hd and azure/whisper-1. 67 of the 101 ids the dispatcher listed as delisted are present in the fresh list under that form and are not delistings. Their deprecation_date values were compared with the Models API deprecation.inference dates and only azure/gpt-realtime-2.1-mini held an earlier date. Rulings honoured: azure-gpt-4o-mini-transcribe-tts-latest-date, azure-gpt-realtime-mini-latest-date, azure-conflicting-dates-latest-wins

Delisted by the provider

These catalog keys are absent from the fresh Models API list in eastus2 and neither the list nor the retirement schedule page states a date for them, so they are left unchanged for a human to decide: azure/ada, azure/command-r-plus, azure/computer-use-preview, azure/container, azure/gpt-3.5-turbo, azure/gpt-3.5-turbo-instruct-0914, azure/gpt-35-turbo, azure/gpt-35-turbo-16k, azure/gpt-35-turbo-16k-0613, azure/gpt-35-turbo-instruct, azure/gpt-35-turbo-instruct-0914, azure/gpt-4, azure/gpt-4-0125-preview, azure/gpt-4-0613, azure/gpt-4-1106-preview, azure/gpt-4-32k, azure/gpt-4-32k-0613, azure/gpt-4-turbo, azure/gpt-4-turbo-vision-preview, azure/gpt-4.5-preview, azure/gpt-5.2-pro, azure/gpt-5.5-pro, azure/gpt-5.6, azure/mistral-large-2402, azure/mistral-large-latest, azure/o1-mini, azure/sora-2-pro, azure/sora-2-pro-high-res

Also absent from the list but already dated in the catalog, so nothing to add: azure/chat-latest, azure/o3-deep-research, azure/o3-pro, azure/tts-1, azure/tts-1-hd

Type

🧹 Refactoring

Link to Devin session: https://app.devin.ai/sessions/13fa5732277347df9fa48f320f448044
Open in Devin Desktop: https://app.devin.ai/desktop/session/13fa5732277347df9fa48f320f448044?variant=devin
Requested by: @kerry-berri


Note

Low Risk
Metadata-only cost-map edit with no runtime logic or pricing changes.

Overview
Updates the cost-map deprecation_date for azure/gpt-realtime-2.1-mini from 2027-06-25 to 2027-07-31 so LiteLLM matches Azure’s Models API (deprecation.inference) instead of the earlier retirement-schedule date.

The same one-line change is applied in model_prices_and_context_window.json and litellm/model_prices_and_context_window_backup.json. No pricing or capability fields change—only what GET /model/deprecations (and other consumers of the catalog) report for migration planning.

Reviewed by Cursor Bugbot for commit 1702f49. Bugbot is set up for automated code reviews on this repo. Configure here.

… the later Models API date

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

@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.

@greptile-apps

greptile-apps Bot commented Sep 24, 2026

Copy link
Copy Markdown
Contributor

RetriggerConfidence Score: 5/5

The PR appears safe to merge; no actionable regression was identified.

Summary

Updates the Azure gpt-realtime-2.1-mini deprecation date from June 25 to July 31, 2027, in both the primary and backup cost maps.

  • The two maps remain consistent, and the canonical deployment lookup uses the updated value.

Reviews (1) · Last reviewed commit: "chore(cost-map): move azure gpt-realtime..."

@cursor cursor Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ 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 1702f49. Configure here.

@codspeed

codspeed Bot commented Sep 24, 2026

Copy link
Copy Markdown
Contributor

Merging this PR will not alter performance

✅ 31 untouched benchmarks


Comparing litellm_sync_azure (1702f49) with main (de8aeff)

Open in CodSpeed

@codecov

codecov Bot commented Sep 24, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

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.

1 participant