Commit graph

50714 commits

Author SHA1 Message Date
mateo-berri
1adbfbfbb1 fix: strip eager_input_streaming for non-Claude providers next to input_examples 2026-09-18 15:28:45 -07:00
mateo-berri
3d3a46fc1f refactor: build the Converse beta list once and keep the OpenAPI snapshot as CI generates it 2026-09-18 14:08:11 -07:00
mateo-berri
e5fd2bec83 fix: forward eager_input_streaming through the Responses API tool bridge 2026-09-18 13:34:29 -07:00
mateo-berri
a37d1e8b9b test: type the eager_input_streaming test helpers and mark constants Final 2026-09-18 13:30:08 -07:00
mateo-berri
d1563e0b55 feat: honor eager_input_streaming on Bedrock and Anthropic Claude tools 2026-09-18 13:09:13 -07:00
Mateo Wang
a2626726a2
Merge pull request #40500 from BerriAI/litellm_bedrock_aws_auth_params
fix(bedrock): send aws_session_tags on every STS call via one typed auth struct
2026-09-18 12:01:52 -07:00
ryan-crabbe-berri
ed9e666b54
Merge pull request #41351 from BerriAI/litellm_routing_groups_atomic_validation
fix(router): validate routing_groups at save time and keep invalid DB groups from blocking SSO load
2026-09-18 11:59:21 -07:00
ryan-crabbe-berri
839c040b53
Merge pull request #41695 from BerriAI/litellm_issue_classifier
ci: classify new issues into domain, provider, kind, priority and lift labels
2026-09-18 11:50:56 -07:00
Mateo Wang
adb5ee0881
Merge pull request #41275 from BerriAI/litellm_azure_strip_file_format
fix(azure): strip litellm format field from file and image content parts
2026-09-18 11:46:23 -07:00
Mateo Wang
88c9dd1294
Merge pull request #41511 from BerriAI/litellm_foundry_a2a_entra_agents
feat(a2a): reach Microsoft Foundry agents with Entra auth and versioned card discovery
2026-09-18 11:44:14 -07:00
mateo-berri
a4da989aa9 test(bedrock): type the STS recording helper 2026-09-18 11:42:52 -07:00
Yassin Kortam
1653d132c5
Merge pull request #41506 from BerriAI/litellm_vertex_gcs_file_content_streaming
feat(vertex_ai): stream GCS batch output files from /v1/files/{id}/content
2026-09-18 11:42:14 -07:00
Yassin Kortam
0594dd7caf
Merge pull request #41539 from BerriAI/litellm_vault_login_secret_namespace
feat(vault): add separate login and secret namespaces for HashiCorp Vault
2026-09-18 11:38:49 -07:00
Yassin Kortam
84ae0805ba
Merge pull request #41620 from BerriAI/litellm_team_member_temp_budget_increase
feat(proxy): temporary budget increase for team members
2026-09-18 11:38:34 -07:00
ryan-crabbe-berri
539ac2bc01 ci(issue-classifier): name every workflow, script and job after the issue it works on
Everything this stack adds now carries issue in its file name, workflow name
and job id, so one search finds all of it:

  ls .github/workflows/issue_*
  grep -ril issue scripts .github/prompts .github/*.json

Renames: label_sync.yml -> issue_label_sync.yml, label_claude_code.yml ->
issue_label_claude_code.yml, .github/labels.json -> .github/issue-labels.json,
scripts/sync-labels(.test).ts -> scripts/sync-issue-labels(.test).ts. Job ids
now match the script they run: classify-issue-tests, classify-issue,
label-issue, sync-issue-labels-tests, sync-issue-labels, label-claude-code
2026-09-18 11:37:55 -07:00
ryan-crabbe-berri
333ed01878 ci(issue-classifier): give the classifier and label jobs unique check-run names
code-quality's job name collision check flagged classify (also in
duplicate_issue_check.yml) and label (also in label_claude_code.yml)
2026-09-18 11:37:55 -07:00
ryan-crabbe-berri
e37bd7c60b fix(issue-classifier): queue runs per issue and judge edits by live labels
An edit during the first run used to cancel it, and the edited run then
skipped because the webhook payload had no needs:template yet, so a
well-formed issue edited within the first minute was never labelled.
Runs for one issue now queue, and the script decides an edited event
against the live labels: a domain label means leave it alone, a gated
issue is re-run, and an unlabelled issue is re-run for its first hour
2026-09-18 11:37:55 -07:00
ryan-crabbe-berri
9c0a840122 ci(issue-classifier): parse only form headings and keep the claude code label
Split the issue body only on headings the two forms actually emit, keep the
first value when a heading repeats, cap each field on its own so a long config
cannot push the repro out of the model's view, and only treat comments from
github-actions[bot] as the template notice. The claude code keyword label the
deleted component labeler used to add gets its own small workflow.
2026-09-18 11:37:55 -07:00
ryan-crabbe-berri
294a9e15de ci: classify new issues into domain, provider, kind, priority and lift labels
Every issue opened from now on is gated on the template headings, sent once
through the LiteLLM proxy with a strict JSON schema, and labelled from the
manifest in .github/labels.json. Old-template issues are not touched. The bug
template shrinks to Description, Config, LiteLLM Version and Steps to Repro,
both templates gain a domain dropdown, and the labelers that keyed off the old
component dropdown go away.
2026-09-18 11:37:55 -07:00
ryan-crabbe-berri
30035f817b
Merge pull request #40935 from BerriAI/litellm_codex_duplicate_issue_check
ci: replace the title-similarity duplicate bot with a Codex semantic check
2026-09-18 11:37:51 -07:00
Yassin Kortam
f6d9b2552f
Merge pull request #41692 from BerriAI/litellm_mcp_gateway_sessions_by_client_user
feat(mcp): show live gateway sessions by AI client and user
2026-09-18 11:37:16 -07:00
Yassin Kortam
ca79c393d5
Merge pull request #41636 from BerriAI/litellm_per_key_end_user_default_budget
feat(proxy): per-key default budget for dynamically created customers
2026-09-18 11:36:59 -07:00
Yassin Kortam
f129e7e2d0
Merge pull request #41515 from BerriAI/litellm_transcribe_passthrough
feat(proxy): add Amazon Transcribe pass-through with completion-time job pricing
2026-09-18 11:35:06 -07:00
yassin
3b8f887686 ci: rerun proxy-infra after main timeout
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 18:19:32 +00:00
Yassin Kortam
d42f448e41
Merge pull request #41585 from BerriAI/litellm_lazy_fastapi_bpe_imports
perf: defer fastapi and tiktoken BPE imports out of import litellm
2026-09-18 11:19:13 -07:00
Yassin Kortam
660f3dfdd3
Merge pull request #41555 from BerriAI/litellm_max_parallel_requests_queue_size
feat(router): reject with 429 when a deployment's max_parallel_requests slots are all in use
2026-09-18 11:18:08 -07:00
mateo-berri
860b0203c0 test(bedrock): expect canonical session tags in the dynamic auth params propagation test 2026-09-18 11:17:34 -07:00
Mateo Wang
db756b9393
Merge pull request #40730 from BerriAI/litellm_responses_nested_additional_drop_params
fix(responses): honor nested additional_drop_params paths
2026-09-18 11:04:38 -07:00
kerry-berri
fd58c31cc7
Merge pull request #41832 from BerriAI/litellm_lit_8111_cache_read_missing_rate
fix(cost): bill cache-read tokens at the input rate when the map has no cache-read rate
2026-09-18 10:56:25 -07:00
yassin
fa70e49b81 chore: merge main into litellm_transcribe_passthrough
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 17:54:59 +00:00
mateo-berri
48f5dc6176 chore(proxy): keep the lazy OpenAPI snapshot as CI's Python 3.12 generates it 2026-09-18 10:48:07 -07:00
mateo-berri
2a76f54a5a fix(bedrock): merge main and thread aws_session_tags through the auth struct
Merge origin/main (a9ee15372f) into the typed AwsAuthParams refactor so the
session tags PR #40446 added land in the struct: resolve_credentials
canonicalizes aws_session_tags before STS, the realtime path forwards them,
and Files upload/download plus bodiless S3 signing now assume the role with
the tags instead of dropping them.
2026-09-18 10:41:52 -07:00
ryan
8dfda93123 test(proxy): drop explanatory docstrings from routing_groups regression tests
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 17:32:31 +00:00
ryan
02c0ee4b5d fix(proxy): drop _add_general_settings_from_db_config re-added by merge
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 17:20:05 +00:00
ryan-crabbe-berri
a9ee15372f
Merge pull request #39308 from BerriAI/litellm_ui_per_second_video_pricing
fix(ui): show per-second pricing for video models instead of $0.00 token costs
2026-09-18 10:05:26 -07:00
ryan
c3bc55d18f chore: merge main into litellm_routing_groups_atomic_validation
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 16:59:23 +00:00
ryan-crabbe-berri
4e2117832a
Merge pull request #40700 from BerriAI/litellm_ui_editable_model_team_id
fix(ui): let admins change a model's team from the model edit page
2026-09-18 09:53:34 -07:00
yuneng-jiang
c4ab1d98e9
Merge pull request #41779 from BerriAI/litellm_settings_store_precedence
refactor(proxy): make the config file win over the database
2026-09-18 09:52:09 -07:00
kerry
af61d9247c test(cost_tracking): expect cache reads without a map rate to estimate at the input rate
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 16:33:17 +00:00
kerry
88d1eb3b35 fix(cost): bill cache-read tokens at the input rate when the map has no cache-read rate
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 16:22:14 +00:00
ryan
4f86035a79 style(ui): format pricing test fixtures with prettier
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 16:16:28 +00:00
ryan
d197ca20fa fix(ui): type transformModelData output as ModelData so the dashboard build typechecks
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 16:13:28 +00:00
kerry-berri
0bd8b7fe02
Merge pull request #41772 from BerriAI/litellm-providers/price-sync-openrouter
chore(prices): sync OpenRouter prices: 15 models, 6 deprecated
2026-09-18 09:12:05 -07:00
berriai-litellm-provider-info-sync[bot]
cc0342ac56
chore(prices): sync OpenRouter prices: 15 models, 6 deprecated
openrouter/~deepseek/deepseek-pro-latest: input_cost_per_token, output_cost_per_token, cache_read_input_token_cost
openrouter/~deepseek/deepseek-v4-flash-latest: input_cost_per_token, output_cost_per_token, cache_read_input_token_cost
openrouter/~z-ai/glm-latest: input_cost_per_token, output_cost_per_token, cache_read_input_token_cost
openrouter/deepseek/deepseek-v4-flash: input_cost_per_token, output_cost_per_token, cache_read_input_token_cost
openrouter/deepseek/deepseek-v4-pro: input_cost_per_token, output_cost_per_token, cache_read_input_token_cost
openrouter/deepseek/deepseek-v4-pro-0813: input_cost_per_token, output_cost_per_token, cache_read_input_token_cost
openrouter/google/gemini-2.5-flash: deprecation_date
openrouter/google/gemini-2.5-flash-image: deprecation_date
openrouter/google/gemini-2.5-flash-lite: deprecation_date
openrouter/google/gemini-2.5-flash:batch: deprecation_date
openrouter/google/gemini-2.5-pro: deprecation_date
openrouter/google/gemini-2.5-pro:batch: deprecation_date
openrouter/meta/muse-glimmer-30b: input_cost_per_token, output_cost_per_token
openrouter/qwen/qwen-plus-2025-07-28: supports_prompt_caching
openrouter/z-ai/glm-5.2: input_cost_per_token, output_cost_per_token, cache_read_input_token_cost
2026-09-18 16:01:00 +00:00
yujonglee
799673d5ba
Merge pull request #41829 from BerriAI/litellm_rust_crate_layering
refactor(rust): align crates with Python package layering
2026-09-18 08:55:10 -07:00
ryan
b5070408e7 refactor(ui): move per-second cost formatter to dataUtils and type transformModelData input
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-09-18 15:48:56 +00:00
Mateo Wang
861f79797f
Merge pull request #41663 from BerriAI/litellm_remove_legacy_interactions_schema_flag
refactor(interactions): remove expired use_legacy_interactions_schema shim
2026-09-18 08:48:30 -07:00
Mateo Wang
48c4204b43
Merge pull request #41658 from BerriAI/litellm_remove_orphaned_use_delete_project_hook
chore(ui): remove orphaned useDeleteProject hook and its test
2026-09-18 08:48:05 -07:00
Mateo Wang
444d345d69
Merge pull request #41657 from BerriAI/litellm_remove_dead_use_key_list_hook
refactor(ui): remove dead useKeyList hook from key_list.tsx
2026-09-18 08:47:56 -07:00
Mateo Wang
8ff4991583
Merge pull request #41656 from BerriAI/litellm_remove_dead_networking_and_marketplace_helpers
refactor(ui): remove dead networking exports and orphaned Claude Code marketplace helpers
2026-09-18 08:47:46 -07:00