Commit Graph
28719 Commits
Author SHA1 Message Date
Ishaan JaffandGitHub bede40a90d [A2a gateway] Add agent cost tracking on UI (#17899)
* add CostConfigFields

* add CostConfigFields

* add output_cost_per_token

* refactor table

* add agent cost view
2025-12-12 16:37:31 -08:00
YutaSaitoandGitHub b93a5f0ca6 Merge pull request #17908 from BerriAI/litellm_fix-mcp-tool-name-prefix
Litellm fix mcp tool name prefix
2025-12-13 08:23:47 +09:00
Yuta Saito bcb26cc55a fix: format 2025-12-13 07:56:05 +09:00
Yuta Saito 864b61b433 fix: support ResponseFunctionToolCall in follow-up input 2025-12-13 07:55:13 +09:00
yuneng-jiangandGitHub 11926ea2d4 Merge pull request #17901 from BerriAI/litellm_usage_date_pick_fix
[Fix] UI - Agent Usage Page Minor Issues
2025-12-12 14:34:15 -08:00
yuneng-jiangandGitHub 64aaba6c58 Merge pull request #17902 from BerriAI/litellm_ui_default_user
[Fix] Add All Proxy Models To Default User Settings
2025-12-12 14:33:42 -08:00
Yuta Saito 48579eafe3 fix: strip mcp server prefixes in responses 2025-12-13 07:17:50 +09:00
yuneng-jiang d090b4ad3e Add All Proxy Models To Default User Settings 2025-12-12 13:15:25 -08:00
yuneng-jiang 94a0ff08b7 Merge remote-tracking branch 'origin' into litellm_usage_date_pick_fix 2025-12-12 13:00:59 -08:00
Cesar GarciaandGitHub ed28818f76 feat(bedrock): add EU Claude Opus 4.5 model (#17897)
Add eu.anthropic.claude-opus-4-5-20251101-v1:0 to support
AWS Bedrock cross-region inference in EU regions.

Fixes #17867
2025-12-12 12:56:17 -08:00
yuneng-jiang 5d01f14f94 Fixing build 2025-12-12 12:55:15 -08:00
yuneng-jiangandGitHub b2695379d1 Merge pull request #17896 from BerriAI/litellm_agent_usage_2
[Feature] Usage Entity labels
2025-12-12 12:53:16 -08:00
yuneng-jiang 19504adb9d Agent Usage small issues 2025-12-12 12:52:51 -08:00
yuneng-jiang 1037dc18b9 Adding test 2025-12-12 12:23:11 -08:00
yuneng-jiang 5b0bf86ee5 Usage Entity labels 2025-12-12 12:13:51 -08:00
Ishaan JaffandGitHub 92d71a3ed4 [UI] - Re organize leftnav to have correct categories + get agents on root (#17890)
* left nav

* fix order

* fix

* fix bad new usage

* fix new
2025-12-12 12:10:13 -08:00
YutaSaitoandGitHub 8899b63fa4 Merge pull request #17747 from BerriAI/litellm_feat_mcp-chat-completions
feat: add support for using MCPs on /chat/completions
2025-12-13 05:05:21 +09:00
Ishaan JaffandGitHub b651012fdc [fix] UI playground - allow custom model name as option[0] (#17892)
* fix: move custom model to top

* fix test
2025-12-12 12:00:23 -08:00
Cesar GarciaandGitHub 1531b58493 feat(openai): add reasoning_effort='xhigh' support for gpt-5.2 models (#17875)
Add support for the 'xhigh' reasoning effort level on all gpt-5.2 model
variants, not just gpt-5.2-pro. This enables deeper reasoning capabilities
for the base gpt-5.2 model.

Changes:
- Add is_model_gpt_5_2_model() method to detect gpt-5.2 variants
- Update xhigh validation to allow gpt-5.2 models
- Update documentation with gpt-5.2 reasoning_effort support
- Update tests to reflect new behavior
2025-12-12 11:40:35 -08:00
Ishaan JaffandGitHub 700a1bb574 [Feat] UI - show UI version on top left near logo (#17891)
* left nav

* fix order

* fix

* add ui version on ui

* fix link
2025-12-12 11:39:02 -08:00
Alexsander HamirandGitHub b635f92d90 Add benchmark_proxy_vs_provider.py script to scripts directory with usage examples (#17889) 2025-12-12 11:26:34 -08:00
Alexsander HamirandGitHub f4db4b6f0e feat(otel): add latency metrics (TTFT, TPOT, Total Generation Time) to OTEL logging (#17888)
- Add time_to_first_token_histogram using api_call_start_time for accurate measurement
- Add time_per_output_token_histogram for average time per output token
- Add response_duration_histogram for total LLM API generation time
- Extract latency metric recording into dedicated helper methods
- Fix parent span double-ending bug when reused as primary span
- Use api_call_start_time for TTFT to exclude LiteLLM overhead (matches Prometheus)
- Support both streaming and non-streaming requests
- Handle both datetime and float timestamp formats
2025-12-12 11:19:17 -08:00
Ishaan JaffandGitHub d38f241032 [Feat] JWT Auth - auth allow selecting team_id from request header (#17884)
* feat: add get_team_id_from_header for JWT Auth

* fix Auth builder JWT Auth

* test_get_team_id_from_header

* test_auth_builder_uses_team_from_header_e2e

* Select Team via Request Header
2025-12-12 10:18:20 -08:00
yuneng-jiangandGitHub 25a38b0f27 Merge pull request #17883 from BerriAI/litellm_ui_new_badge
[Feature] New Badge for Agent Usage
2025-12-12 10:02:31 -08:00
yuneng-jiang 1829e58d25 New Badge for Agent Usage 2025-12-12 09:47:08 -08:00
Sameer KankuteandGitHub d5fcb6fce6 Merge pull request #17882 from BerriAI/litellm_target_storage_documentation
Add documentation for target storage
2025-12-12 22:46:04 +05:30
Sameer Kankute 6f0efff28b Add documentation for target storage 2025-12-12 22:44:53 +05:30
Sameer KankuteandGitHub da81ab6d97 Merge pull request #17758 from BerriAI/litellm_managed_files_target_storage
Add v0 support for target storage
2025-12-12 22:26:34 +05:30
Sameer KankuteandGitHub afda51d476 Merge pull request #17873 from BerriAI/litellm_rerank_foraward_headers
Add support for forwarding client headers in /rerank endpoint
2025-12-12 22:25:57 +05:30
Sameer KankuteandGitHub d98ee8a448 Merge pull request #17872 from BerriAI/litellm_embedding_header_forwarding
fix: bedrock header forwarding with cutom api
2025-12-12 22:25:45 +05:30
Sameer KankuteandGitHub abbf8be07b Merge pull request #17864 from BerriAI/litellm_fix_x-litellm-key-spend
Fix x-litellm-key-spend header update
2025-12-12 22:23:42 +05:30
Sameer KankuteandGitHub e0428388a7 Merge pull request #17860 from BerriAI/litellm_openai_files_expire_after_support
Add support for expires after param in Files endpoint
2025-12-12 22:23:11 +05:30
Alexsander HamirandGitHub d196e0b9c8 refactor(router): replace time.perf_counter() with time.time() for timing measurements (#17881) 2025-12-12 08:51:18 -08:00
AlexsanderHamir 1ad6763500 fix: add PROMETHEUS_MULTIPROC_DIR to docs 2025-12-12 08:33:38 -08:00
Alexsander HamirandGitHub d9cf53b555 fix: remove dependency on database and redis from health test (#17880) 2025-12-12 08:21:48 -08:00
Alexsander HamirandGitHub 9c39539d78 revert CI changes (#17879) 2025-12-12 08:13:18 -08:00
Alexsander HamirandGitHub 5f2f823d44 fix: use docker executor (#17878) 2025-12-12 07:56:03 -08:00
Alexsander HamirandGitHub c9063d13b1 Add health endpoint tests to CI with database and Redis support (#17877)
- Add database and Redis setup to litellm_mapped_tests_proxy job in CircleCI
- Create shared test helpers in tests/test_litellm/proxy/conftest.py for proxy test setup
- Refactor health endpoint tests to use shared helpers from conftest
- Support automatic Redis cache configuration when REDIS_HOST is set
- Ensure minimal config is created when Redis/database is needed
2025-12-12 07:35:50 -08:00
Alexsander HamirandGitHub 762b429d6c enhance: create_litellm_branch tool to be more robust (#17874) 2025-12-12 05:35:50 -08:00
eab5bca583 Add Milvus REST client and update examples (#17736)
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
2025-12-12 04:38:28 -08:00
Devaj ModyandGitHub f25344484f fix(router): add minimum request threshold for error rate cooldown (#17464)
Fixes #17418

  - Add DEFAULT_FAILURE_THRESHOLD_MINIMUM_REQUESTS constant (default: 5)
  - Require minimum requests before applying error rate cooldown
  - Prevents cooldown from triggering on first failure
2025-12-12 04:36:10 -08:00
f6251efab9 Update proxy_server.py (#17468)
Co-authored-by: razvan9991 <57962056+razvan9991@users.noreply.github.com>
2025-12-12 04:34:43 -08:00
Sameer Kankute d28160b2b2 Add tests for header forwarding 2025-12-12 17:54:17 +05:30
ArielandGitHub 5df701d15c [feat]: Add opt-in evidence results for Pillar Security guardrail during monitoring (#17812)
* add evidence headers to litellm

* ensure that evidence is surface-able, even in opt-in mode

* update the docs
2025-12-12 04:09:13 -08:00
Sameer Kankute cf286e6885 Add support for forwarding client headers 2025-12-12 17:35:22 +05:30
Peter ChanthamynavongandGitHub f8e7e153d5 fix(cache): handle string content in is_cached_message (#17853)
Fixes #17821

The `is_cached_message` function crashed with TypeError when message
content was a string instead of a list of content blocks.

Changes:
- Add explicit `isinstance(content, list)` check before iteration
- Add `isinstance(content_item, dict)` check inside loop to skip non-dict items
- Use `.get()` for safer nested dict access
- Follow same pattern as `extract_ttl_from_cached_messages` (same module)

Tests:
- Add TestIsCachedMessage class with 9 test cases covering:
  - String content (the reported bug)
  - None content
  - Missing content key
  - Empty list content
  - List with/without cache_control
  - Mixed content types (strings + dicts)
  - Wrong cache_control type
2025-12-12 03:59:52 -08:00
Vinnie GiarrussoandGitHub 78012ad9a9 fix(prometheus): add 'exception_status' to prometheus logger (#17847)
* fix(prometheus): add 'exception_status' to prometheus logger

* use existing prometheuslogger

* remove unneeded test
2025-12-12 03:57:46 -08:00
nlinebackandGitHub e223cadb9f fix: add speechConfig to GenerationConfig for Gemini TTS (#17851)
Moved speechConfig from RequestBody to GenerationConfig TypedDict so that
TTS configuration survives the filtering in _transform_request_body().

This fixes the 400 INVALID_ARGUMENT error when using Gemini TTS models
(gemini-2.5-flash-tts, gemini-2.5-flash-preview-tts, etc.) with both
vertex_ai and gemini providers.

Fixes: speechConfig was being created correctly in map_openai_params()
but then filtered out because GenerationConfig.__annotations__.keys()
didn't include it.

Tested with both preview and non-preview TTS model names and both
vertex_ai and gemini providers.
2025-12-12 03:56:44 -08:00
Cesar GarciaandGitHub eb94c95e72 fix: add semver prerelease suffix to helm chart versions for non-stable releases (#17678)
Helm chart versions now include a prerelease suffix based on release_type:
- stable: 0.1.830 (no suffix)
- rc: 0.1.830-rc
- latest: 0.1.830-latest

This allows users to easily identify stable vs non-stable chart versions.
Helm also hides prerelease versions by default, preventing accidental
upgrades to non-stable versions.

Also fixes version extraction to strip existing suffixes before bumping.
2025-12-12 03:51:37 -08:00
Marty SullivanandGitHub 63df9392d4 add azure gpt-5.2 models (#17866) 2025-12-12 03:47:08 -08:00