Commit Graph
36031 Commits
Author SHA1 Message Date
Sameer Kankute ad8c321ea8 fix(proxy): use union-attr mypy ignores for deferred logging hooks
Made-with: Cursor
2026-03-22 00:35:35 +05:30
Sameer Kankute 4f1e484a9b Merge branch 'main' into litellm_dev_sameer_16_march_week
Resolve conflicts in common_request_processing.py (keep main streaming,
post_call_success_hook try/finally, deferred logging; retain skip_pre_call_logic)
and utils.py (defer + internal-call skip + sync success callbacks for all calls).

Tighten _has_post_call_guardrails for event_hook=None; align deferred
guardrail test. Sync model_prices_and_context_window_backup.json.

Pyright: narrow ignores for passthrough StreamingResponse and post_call hook.
Made-with: Cursor
2026-03-22 00:29:38 +05:30
Krish DholakiaandGitHub b64b0d4b9b Merge pull request #24222 from BerriAI/docs/prompt-caching-gemini-support
docs: add Gemini/Vertex AI prompt caching support to docs
2026-03-21 10:28:49 -07:00
Krish DholakiaandGitHub c8a7d5d237 Merge branch 'main' into docs/prompt-caching-gemini-support 2026-03-21 10:28:39 -07:00
Krish DholakiaandGitHub ea02c7cc15 Merge pull request #24174 from BerriAI/litellm_oss_staging_03_19_2026
Litellm oss staging 03 19 2026
2026-03-21 10:27:50 -07:00
Sameer KankuteandGitHub a427807796 Merge branch 'main' into litellm_dev_sameer_16_march_week 2026-03-21 21:16:07 +05:30
Sameer KankuteandGitHub 8d3445fb43 Merge pull request #24297 from BerriAI/revert-23842-fix/deepgram-cost-per-second
Revert "fix(transcription): fix cost_per_second calculation for audio transcription models"
2026-03-21 20:45:12 +05:30
Sameer KankuteandGitHub 6830b63269 Revert "fix(whisper): correct output_cost_per_second pricing and cost calcula…"
This reverts commit 00dd984415.
2026-03-21 20:44:52 +05:30
Sameer Kankute 676a79e9f7 bump: litellm-enterprise 0.1.34 → 0.1.35 2026-03-21 20:42:34 +05:30
Sameer KankuteandGitHub 5b5c998dbd Merge branch 'main' into litellm_oss_staging_03_19_2026 2026-03-21 20:31:08 +05:30
Sameer Kankute c1e90ed300 Fix mypy errors 2026-03-21 20:29:14 +05:30
Cesar GarciaandGitHub a3095f47fd Merge pull request #24076 from Chesars/feat/cache-control-tool-config-21969
feat(bedrock): support cache_control_injection_points for tool_config location
2026-03-20 23:29:53 -03:00
Cesar GarciaandGitHub a4f091c025 Merge pull request #24073 from Chesars/feat/gemini-context-circulation
feat(gemini): support context circulation for server-side tool combination
2026-03-20 23:29:30 -03:00
Chesars 29ab11a9c2 fix(types): add CacheControlToolConfigInjectionPoint to union type 2026-03-20 23:23:28 -03:00
Cesar GarciaandGitHub ead607a42b Merge pull request #24072 from Chesars/fix/strict-additional-properties-20997-clean
fix(adapter): add additionalProperties: false for OpenAI strict mode in Anthropic adapter
2026-03-20 22:19:39 -03:00
yuneng-jiangandGitHub d8e4fc4dd0 Merge pull request #24260 from BerriAI/litellm_yj_march_19_2026
[Infra] Merge internal dev branch with main
2026-03-20 17:35:19 -07:00
yuneng-jiangandGitHub 2ca4fa6189 Merge branch 'main' into litellm_yj_march_19_2026 2026-03-20 17:28:41 -07:00
yuneng-jiangandGitHub e6e3085845 Merge pull request #24258 from joereyna/fix/anthropic-file-content-test-mock
fix(test): mock get_auth_header instead of get_api_key in anthropic file content test
2026-03-20 16:14:59 -07:00
yuneng-jiangandClaude Opus 4.6 e678ddea43 Fix unreachable special MCP server name guard in add_mcp_server
The special name check (all_team_servers, all_proxy_servers) was an elif
after the server_id-is-not-None check, making it unreachable since special
names are non-None strings. Split into separate if blocks so the special
name guard runs before the duplicate-ID check.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-20 16:12:48 -07:00
joereyna f0e0d98f86 fix(test): mock get_auth_header instead of get_api_key in anthropic file content test 2026-03-20 16:07:09 -07:00
yuneng-jiangandClaude Opus 4.6 6862930538 Revert test to match reverted team MCP manager feature
The team MCP manager feature was reverted in PR #24255, so the test
needs to go back to the original single auth failure test that expects
a 403 for non-admin users.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-20 15:44:00 -07:00
yuneng-jiangandGitHub 1fad0d557d Merge pull request #24255 from BerriAI/revert-24171-litellm_/awesome-dhawan
Revert "[Feature] Team MCP Server Manager Role"
2026-03-20 15:42:10 -07:00
yuneng-jiangandGitHub c9683c6f97 Revert "[Feature] Team MCP Server Manager Role" 2026-03-20 15:41:57 -07:00
ryan-crabbeandGitHub 72c307df0e Merge pull request #24217 from BerriAI/litellm_ryan_march_18
feat: add control plane for multi-proxy worker management
2026-03-20 14:05:19 -07:00
Ryan Crabbe 541863a566 Merge branch 'litellm_ryan_march_18' of https://github.com/BerriAI/litellm into litellm_ryan_march_18 2026-03-20 13:58:32 -07:00
Ryan Crabbe 6f81eb01fe fix: apply Black formatting to ui_sso.py 2026-03-20 13:57:26 -07:00
ryan-crabbeandGitHub 59b4a05782 Merge branch 'main' into litellm_ryan_march_18 2026-03-20 13:36:37 -07:00
yuneng-jiangandClaude Opus 4.6 ba4aae02c7 Fix outdated MCP server auth test for team MCP manager flow
The test_create_mcp_server_auth_failure test expected a 403 for non-admin
users, but the team MCP manager feature changed the auth flow to first
check for team_id (400) before checking permissions. Split into two tests:
one for missing team_id (400) and one for non-manager rejection (403).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-20 13:10:10 -07:00
yuneng-jiang 5d317c3a5c Merge remote-tracking branch 'origin' into litellm_yj_march_19_2026 2026-03-20 12:59:21 -07:00
yuneng-jiangandGitHub 50f88c8642 Merge pull request #24243 from BerriAI/litellm_/gifted-spence
[Docs] Add missing team_member_budget_duration param to new_team docstring
2026-03-20 12:51:13 -07:00
yuneng-jiangandGitHub 4d198558c8 Merge branch 'main' into litellm_/gifted-spence 2026-03-20 12:44:20 -07:00
yuneng-jiangandClaude Opus 4.6 404c68c74b Add missing team_member_budget_duration param to new_team docstring
Fixes CI failure in test_api_docs.py which validates that all Pydantic
model fields are documented in endpoint docstrings.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-20 12:42:35 -07:00
yuneng-jiang 3ea69c9539 Merge remote-tracking branch 'origin' into litellm_yj_march_19_2026 2026-03-20 12:37:26 -07:00
yuneng-jiangandGitHub b36269e2c1 Merge pull request #24171 from BerriAI/litellm_/awesome-dhawan
[Feature] Team MCP Server Manager Role
2026-03-20 12:30:50 -07:00
yuneng-jiangandClaude Opus 4.6 700fd86de9 Fix importorskip guard and add LiteLLM_TeamTableCachedObj import
- Add pytest.importorskip("mcp") at module level so tests skip cleanly
  in CI environments without the mcp package (instead of ImportError)
- Import LiteLLM_TeamTableCachedObj into MCP_AVAILABLE block so type
  annotations resolve for static analysis and get_type_hints()
- Remove string quotes from type annotations now that the import exists

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-20 12:13:09 -07:00
yuneng-jiangandGitHub c6ffda9671 Merge pull request #23484 from michelligabriele/fix/team-member-budget-duration-on-create
fix(proxy): add team_member_budget_duration to NewTeamRequest
2026-03-20 11:56:30 -07:00
yuneng-jiangandGitHub f884e4ac66 Merge branch 'main' into fix/team-member-budget-duration-on-create 2026-03-20 11:48:08 -07:00
ryan-crabbeandGitHub d381b58570 Merge branch 'main' into litellm_ryan_march_18 2026-03-20 11:44:45 -07:00
BillionTokenGitHubBillionClawAarish Alamgreptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
78139472a1 fix(moonshot): preserve reasoning_content on Pydantic Message objects in multi-turn tool calls (#23828)
* fix(moonshot): preserve reasoning_content on Pydantic Message objects in multi-turn tool calls

The condition 'reasoning_content not in msg' doesn't work correctly for
Pydantic Message objects because they don't support the 'in' operator
like dicts do. This caused reasoning_content to be stripped from
assistant messages in multi-turn conversation history.

Changed the condition to use msg.get('reasoning_content') instead,
which works correctly for both dicts and Pydantic models.

Fixes #23765

* added newline eof

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* Update tests/test_litellm/llms/moonshot/test_moonshot_chat_transformation.py

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* Simplify assertions in test_moonshot_chat_transformation

Removed redundant assertions for non-assistant messages.

---------

Co-authored-by: BillionClaw <267901332+BillionClaw@users.noreply.github.com>
Co-authored-by: Aarish Alam <arishalam121@gmail.com>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-03-21 00:09:17 +05:30
00dd984415 fix(whisper): correct output_cost_per_second pricing and cost calculation (#23842)
- Set output_cost_per_second to 0.0 (was 0.0001) for whisper-1 and
  azure/whisper-1: transcription is billed on input duration only,
  not output duration
- Fix cost_per_second() in openai/cost_calculation.py: change elif to if
  so input_cost_per_second is evaluated independently of output_cost_per_second,
  and remove the erroneous completion_cost = 0.0 assignment that masked
  any previously-set output cost
- Add TestCostPerSecondArithmetic unit tests covering both cost fields,
  the None-guard, and zero-duration edge case

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 00:02:15 +05:30
Jayachander Reddy kandakatlaandGitHub 714c1b80e1 docs(pricing): add official source links for Azure DeepSeek & Cohere models (#20181)
Added 'source' keys to Azure DeepSeek v3.2(Standard & Speciale) and Cohere Rerank 4.0 (Pro & Fast) entries for pricing verification.
2026-03-20 23:55:53 +05:30
Krish DholakiaandGitHub e8ec9eb44a Merge pull request #24220 from milan-berri/fix/streaming-metadata-hidden-params
fix(logging): merge hidden_params into metadata for streaming requests
2026-03-20 11:25:45 -07:00
Sameer Kankute 45f322caef Fix ruff PLR0915 error 2026-03-20 23:52:54 +05:30
Sameer Kankute 8cb3a0f1d2 Fix ruff PLR0915 error 2026-03-20 23:42:07 +05:30
Sameer Kankute 7c168ab173 Fix gpt-5.4 using remote model cost map for tests 2026-03-20 23:35:00 +05:30
Sameer Kankute 92e98a2fd5 Fix test_aaamodel_prices_and_context_window_json_is_valid 2026-03-20 23:35:00 +05:30
Sameer Kankute 2a69426e2f Fix mypy and code qa issues 2026-03-20 23:34:59 +05:30
Sameer KankuteandGitHub 0673c57fef Merge pull request #23939 from Sameerlite/Sameerlite/azure-ai-annotations
fix(azure-ai-agents): preserve annotations in Bing Search grounding responses
2026-03-20 23:33:08 +05:30
Sameer KankuteandGitHub 8d843fd93b Merge pull request #23957 from Sameerlite/litellm_vertex-cancel-batch
fix(vertex-ai): support batch cancel via Vertex API
2026-03-20 23:32:50 +05:30
Christopher BaerandGitHub 589c6cdad0 fix(gemini-embeddings): convert task_type to camelCase taskType for Gemini API (#24191)
The Gemini REST API documents the embedding task type parameter as
camelCase `taskType`. The existing transformation functions convert
`dimensions` to `outputDimensionality` but miss the parallel
`task_type` to `taskType` conversion. This adds that conversion to
both `transform_openai_input_gemini_content` (batchEmbedContents path)
and `transform_openai_input_gemini_embed_content` (embedContent path).

Fixes #24190
2026-03-20 22:32:22 +05:30