Repository navigation
chore(cost-map): sync openrouter prices from the models API - #43950
Conversation
|
|
|
cde0e62 to
7b9838f
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Price-Sync: litellm-providers
7b9838f to
2737f77
Compare
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 2737f77. Configure here.
…ject_key_prefix * upstream/main: (62 commits) fix(guardrails): scan Responses API input in Azure Prompt Shield (BerriAI#43786) feat(lens): investigate sampled traces and retain batch results (BerriAI#43942) fix(proxy): restore pre-config-wins handling of pass-through endpoints (BerriAI#43962) fix(cost-map): raise baseten DeepSeek-V4.1-Flash max output to 262144 (BerriAI#43916) chore(cost-map): add deprecation date for anthropic claude-sonnet-4-5 (BerriAI#43898) chore(cost-map): add fireworks inkling priority prices from the prices api (BerriAI#43949) feat(guardrails): honor litellm_params.timeout in every HTTP guardrail (BerriAI#43134) test(e2e): typed per-test metadata for the e2e suite (BerriAI#42044) fix(caching): write the response-cache SET to Redis at once instead of on the post-call batch (BerriAI#43973) feat(ui): filter tags by name and description on the Tag Management page (BerriAI#42949) feat(providers): add Cortecs as an OpenAI-compatible provider (BerriAI#43872) feat(e2e): record each e2e test's steps, starting with ProxyClient (BerriAI#42393) test(ci): repair stale tests and move retired OpenAI text-completion fixtures (BerriAI#43958) feat(proxy): record in spend logs whether a request used a client-forwarded Anthropic OAuth token (BerriAI#43063) fix(azure_storage): keep the DataLakeServiceClient alive until its TTL elapses (BerriAI#43082) chore(deps): bump gitpython and tornado, extend diskcache osv ignore to Nov 1 (BerriAI#43961) fix(guardrails): treat an unknown straiker api_version as unset instead of skipping the guardrail (BerriAI#43956) fix(azure_storage): name Data Lake objects without base64 padding or slashes (BerriAI#43914) fix(grayswan): send request conversation and tool calls to post-call monitor (BerriAI#43770) chore(cost-map): sync openrouter prices from the models API (BerriAI#43950) ...
Syncs 17 existing OpenRouter rows to the live models API (https://openrouter.ai/api/v1/models). Every row below is kind api: prices come from
pricing.prompt,pricing.completion,pricing.input_cache_readandpricing.overrides, context window and max output fromcontext_lengthandtop_provider.max_completion_tokens, and the deprecation date fromexpiration_dateRows
Notes
openrouter/openai/gpt-oss-120bleavescache_read_input_token_costunset per rulingopenrouter-gpt-oss-120b-no-cached-input-price: the API no longer returnspricing.input_cache_readfor this id, so no cached-input price is published. This PR is sent in replace mode with full rows so that field is droppedopenrouter/deepseek/deepseek-v4-pro-0813base prices are the peak rates frompricing.overridesandoff_peak_pricingcarries the discounted windows, the same weekday window shapeopenrouter/~deepseek/deepseek-pro-latestalready usesopenrouter/tencent/hy3off_peak_pricing already matches the API (the diff only saw a string versus object encoding), so it is unchangedRulings followed:
openrouter-gpt-oss-120b-no-cached-input-price,openrouter-merge-despite-baseline-ci-failures,openrouter-deepseek-v4-pro-drop-legacy-cache-hitandopenrouter-deepseek-v4-pro-0813-drop-legacy-cache-hit; neither row carriesinput_cost_per_token_cache_hitany longer, and this PR does not reintroduce itThe changed https://openrouter.ai/announcements page lists blog posts only, with no model launch, price change or deprecation, so it needs no rows
Delisted by the provider
None
Note
Medium Risk
Incorrect token costs or limits directly affect LiteLLM billing and budget estimates; changes are API-sourced but some rows shift dramatically (pricing and max tokens).
Overview
Updates 17 OpenRouter model entries in
model_prices_and_context_window.json(and its backup) to match the live OpenRouter models API: per-token input/output/cache-read rates,max_input_tokens/max_output_tokens, and capability flags where the sync reordered or reaffirmed them.Notable non-price changes:
openrouter/deepseek/deepseek-v4-pro-0813andopenrouter/tencent/hy4-previewgainoff_peak_pricing(time-window discounts used by cost calculation);openrouter/openai/gpt-oss-120bdropscache_read_input_token_costbecause the API no longer publishes cached-input pricing;openrouter/stealth/space-bunny-alphagets a realdeprecation_date(2026-10-05) and higher output limits. Several models see large pricing corrections (e.g.kimi-k3input cost) or tighter output caps (e.g.qwen3-30b-a3b-instruct-2507).Reviewed by Cursor Bugbot for commit 2737f77. Bugbot is set up for automated code reviews on this repo. Configure here.