Commit graph

50473 commits

Author SHA1 Message Date
Yuneng Jiang
77a5e2cb64
test(proxy): isolate environment variable encryption 2026-09-17 21:07:02 -07:00
Yuneng Jiang
463ece762a
fix(proxy): preserve opted-in environment variable saves 2026-09-17 20:53:21 -07:00
Yuneng Jiang
af17691389
fix(proxy): persist only the keys a caller changed in save_config 2026-09-17 20:32:04 -07:00
kerry-berri
db37977307
Merge pull request #41736 from BerriAI/litellm_mistral_cache_read_pricing
fix(model_prices): add cache-read pricing to Mistral chat models missing it
2026-09-17 19:35:26 -07:00
kerry-berri
ea047e5133
Merge pull request #41734 from BerriAI/litellm_reasoning_backfill_test_openrouter
test(cost_map): stop pinning supports_reasoning absent on the openrouter o1 entry
2026-09-17 19:25:12 -07:00
kerry
1bc4509bf0 test(model_prices): type the Mistral cache-read helpers and check the backup registry too
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 02:22:06 +00:00
kerry
6933ca2337 fix(model_prices): add cache-read pricing to Mistral chat models missing it
Mistral bills cached prompt tokens at 10% of the input price for every model, but twelve
active mistral/ chat rows had no cache_read_input_token_cost, so the cost calculator billed
their cache hits at zero. Adds the derived rate to those rows in both registry copies and a
registry invariant test that fails when an active priced Mistral chat row drops the field or
drifts from the 10% ratio

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 02:13:44 +00:00
kerry
38bc855235 test(cost_map): stop pinning supports_reasoning absent on the openrouter o1 entry
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 02:09:04 +00:00
yuneng-jiang
34718f0da6
Merge pull request #41723 from BerriAI/litellm_/circleci-specific-sha-0cf414
fix(proxy): forward every method on the typesafe pass-through route
2026-09-17 18:57:06 -07:00
yuneng-jiang
fc662a778c
Merge pull request #41729 from BerriAI/litellm_fix_gcs_pubsub_spillover_golden
test(logging): add azure_spillover to the GCS pub/sub spend-log golden
2026-09-17 18:56:39 -07:00
kerry-berri
0342c75196
Merge pull request #41597 from BerriAI/litellm_registry_audit_2026_09_17
fix(models): rolling registry audit: Azure retirement dates, Bedrock Mantle Grok 4.3 context window
2026-09-17 18:53:57 -07:00
Yuneng Jiang
471eff8421
test(logging): add azure_spillover to the GCS pub/sub spend-log golden
#41569 made SpendLogsMetadata always carry azure_spillover, null unless
Azure reported a spillover, and updated the unit tests that run on the PR
gate. The GCS pub/sub golden only runs on CircleCI's logging lane, so it
kept the old key set and test_async_gcs_pub_sub_v1 has failed on every
run since that merge with an extra metadata.azure_spillover key
2026-09-17 18:33:42 -07:00
Yuneng Jiang
50ccb2c670
Merge remote-tracking branch 'origin/main' into litellm_/circleci-specific-sha-0cf414 2026-09-17 18:31:04 -07:00
Yuneng Jiang
349e8b9358
test(proxy): forward each method through the typesafe route to a mocked upstream
The route test only resolved route names. It now sends every method through
the proxy with a virtual key and asserts the upstream receives that method,
the proxy's TypeSafe key and the caller's body
2026-09-17 18:19:42 -07:00
yuneng-jiang
7e03084f83
Merge pull request #41719 from BerriAI/litellm_fix_41550
fix(ocr): keep a downloaded document inlined when callbacks intercept the request (#41550 follow-up)
2026-09-17 18:16:20 -07:00
Yuneng Jiang
b9e468100b
chore(proxy): regenerate the OpenAPI snapshot with the CI Python version
The previous regeneration ran on Python 3.13, which strips docstring
indentation at compile time, so one description and one query field came out
different from what the Python 3.12 sync check produces. Regenerated on 3.12
so only the typesafe route entries differ from main
2026-09-17 18:15:55 -07:00
kerry
86f625736c Revert "fix(gemini): gemini-3.5-flash-lite priority cache read is $0.054/M"
This reverts commit 14e4b9f906.

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 01:13:41 +00:00
Yuneng Jiang
685ac115ca
chore(proxy): regenerate the OpenAPI snapshot and dashboard types for the typesafe methods 2026-09-17 18:09:50 -07:00
Yuneng Jiang
e8c1fe884e
Merge remote-tracking branch 'origin/main' into litellm_/circleci-specific-sha-0cf414 2026-09-17 18:05:39 -07:00
Yuneng Jiang
acc375a2a9
fix(proxy): forward every method on the typesafe pass-through route
#41607 registered the typesafe pass-through with a route that only accepted
GET and POST, so a PUT, DELETE or PATCH to /typesafe/... came back 405
before reaching the upstream. CircleCI's pass-through method test caught it,
but that lane does not run on the PR gate, so the mapped unit test now
covers the same invariant for typesafe

The same CircleCI run also failed test_models_by_provider because typesafe
is not a key of models_by_provider. Registering it there would satisfy the
assertion without changing behaviour: typesafe has no LlmProviders member,
so a typesafe/* deployment never loads and get_valid_models returns nothing,
and its spend is priced straight from model_cost. The test already skips
search-mode providers for that reason, so it now skips evaluation mode too
2026-09-17 18:04:58 -07:00
Mateo Wang
c25c098bc1
Merge pull request #41469 from BerriAI/litellm_bedrock_mantle_responses_drop_top_p
fix(responses): drop top_p for gpt-5 reasoning models when drop_params is set
2026-09-17 18:04:19 -07:00
Mateo Wang
3424390101
Merge pull request #41448 from BerriAI/litellm_fix_passthrough_empty_query_params_drop_url_query
fix(passthrough): keep target URL query when client sends no query params
2026-09-17 18:02:48 -07:00
Mateo Wang
706f69af50
Merge pull request #41665 from BerriAI/litellm_remove_dead_vertex_v1beta1_stub
refactor(vertex_ai): remove constant-False is_using_v1beta1_features stub and its dead call sites
2026-09-17 17:56:22 -07:00
Mateo Wang
151a92a230
Merge pull request #41662 from BerriAI/litellm_remove_retired_provider_streaming_handlers
chore(streaming): remove retired ai21/maritalk/baseten/azure raw-bytes handlers and dead palm completion code
2026-09-17 17:56:15 -07:00
Mateo Wang
1a59a58040
Merge pull request #41661 from BerriAI/litellm_remove_dead_prometheus_validators
refactor(prometheus): remove unreferenced metric validators and pretty printers
2026-09-17 17:56:08 -07:00
Mateo Wang
98b3564a5b
Merge pull request #41660 from BerriAI/litellm_remove_commented_out_proxy_tests
chore(tests): remove fully commented-out proxy test files and their CI entries
2026-09-17 17:56:02 -07:00
Mateo Wang
2e195c5f70
Merge pull request #41654 from BerriAI/litellm_remove_commented_out_test_files
test: remove 15 fully commented-out test files that collect no tests
2026-09-17 17:55:55 -07:00
Mateo Wang
9966d9d1a8
Merge pull request #41652 from BerriAI/litellm_remove_dead_langfuse_v1_path
refactor(langfuse): remove unreachable langfuse v1 logging path
2026-09-17 17:55:47 -07:00
Mateo Wang
cb14dee357
Merge pull request #41648 from BerriAI/litellm_remove_commented_streaming_tests
test(streaming): remove commented-out retired-provider streaming tests
2026-09-17 17:55:40 -07:00
Mateo Wang
04834e0408
Merge pull request #41643 from BerriAI/litellm_remove_dead_performance_utils
chore(proxy): remove unreferenced performance_utils profiling module
2026-09-17 17:55:33 -07:00
Mateo Wang
cfbcc7dfad
Merge pull request #41642 from BerriAI/litellm_remove_deprecated_proxy_logging_module
chore(proxy): delete deprecated unused litellm/proxy/_logging.py
2026-09-17 17:55:27 -07:00
Mateo Wang
5c934c4760
Merge pull request #41641 from BerriAI/litellm_remove_openai_cost_per_token_dead_code
chore(openai): drop commented-out legacy cost_per_token implementation
2026-09-17 17:55:19 -07:00
Mateo Wang
a7dc6551c0
Merge pull request #41640 from BerriAI/litellm_remove_dead_provider_config_test_blocks
chore(tests): remove commented-out hf, petals and vertex ai completion blocks
2026-09-17 17:55:12 -07:00
kerry-berri
f51f01fb54
Merge pull request #41443 from BerriAI/litellm_remove_brittle_price_pinning_tests
test: delete unit-test assertions that pin cost-map prices, limits and deprecation dates
2026-09-17 17:52:42 -07:00
Yuneng Jiang
726dbf0d0d
fix(ocr): keep a downloaded document inlined when callbacks intercept the request
Providers that cannot fetch a public document URL themselves (Azure AI
mistral document AI, Azure cohere parse, Vertex AI) download it and
inline it as a data URI. When a pre-call callback or debug logging
intercepts the request, the Python host hands the caller's original
document back into the body, so the provider request carried the URL
again and Azure's inline-only check rejected it with "invalid OCR
document data URI". The core now keeps the prepared document when a
hook returns the untouched caller document, while a hook that edits or
replaces the document still wins
2026-09-17 17:48:52 -07:00
ryan-crabbe-berri
85fe646776
Merge pull request #41694 from BerriAI/litellm_rename_model_sync_allowlists
fix(proxy): propagate db model renames to key, team, org, project and user model allowlists
2026-09-17 17:42:06 -07:00
kerry
8504c51f6c Revert "test: keep prompt cache prediction logic tests and drop only their price pins"
This reverts commit 810df257d8.
2026-09-18 00:40:38 +00:00
Mateo Wang
2fb502a556
Merge pull request #41702 from BerriAI/litellm_bedrock_invoke_tool_search_opus48_gen5
fix(bedrock): gate Invoke tool search on the model map for Opus 4.8 and gen 5 Claude
2026-09-17 17:39:34 -07:00
kerry
810df257d8 test: keep prompt cache prediction logic tests and drop only their price pins
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 00:39:34 +00:00
ryan-crabbe-berri
03ba5634a2
Merge pull request #40632 from BerriAI/litellm_fix_ui_disable_cache_control_injection_points
fix(ui): persist disabling cache control injection points on model update
2026-09-17 17:35:07 -07:00
kerry-berri
2842a2fb05
Merge pull request #41678 from BerriAI/litellm_auto-merge-drop-bot-gates
ci(auto-merge): stop requiring Greptile and Bugbot on price sync pull requests
2026-09-17 17:32:35 -07:00
kerry
b97c2d6307 test: drop pinned bedrock invoke cost literals
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 00:31:11 +00:00
Mateo Wang
cf42b607c3
Merge pull request #41615 from BerriAI/litellm_jev_complexity_classifier
feat(router): add TypeSafe Jev as a complexity router classifier
2026-09-17 17:31:08 -07:00
kerry
84d4d17bf8 Merge remote-tracking branch 'origin/main' into litellm_remove_brittle_price_pinning_tests
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>

# Conflicts:
#	tests/test_litellm/llms/bedrock/chat/test_converse_transformation.py
2026-09-18 00:29:52 +00:00
kerry
c4620170ca test: delete assertions that pin vendor cost map facts
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 00:28:49 +00:00
yucheng-berri
a9bea4f64d
Merge pull request #41571 from BerriAI/litellm_policy_attachment_priority
feat(policy_engine): explicit priority for policy attachment execution order
2026-09-17 17:27:55 -07:00
mateo-berri
9ae5bde829 fix(bedrock_mantle): resolve gpt-5 sampling rules from the OpenAI catalogue entry 2026-09-17 17:25:59 -07:00
kerry
5d5f191a9c Merge remote-tracking branch 'origin/main' into litellm_auto-merge-drop-bot-gates 2026-09-18 00:20:29 +00:00
ryan
696587c4ab fix(ui): persist disabling cache control injection points on model update
Turning Cache Control off on the model edit screen omitted the field from the
PATCH body, which the backend reads as leave unchanged, so the stored
cache_control_injection_points list survived the save. The dashboard now sends
an explicit null when a stored list is being disabled, and update_db_model
clears that field on null the same way it already clears the mirrored pricing
fields. Omitted keys keep the stored value

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 00:20:22 +00:00
mateo-berri
853fd04bd5 test(router): price the unpriced Jev cost test off a model the registry never ships 2026-09-17 17:18:03 -07:00