Commit Graph
28696 Commits
Author SHA1 Message Date
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
Sameer Kankute 19b48d7bad fix: bedrock header forwarding with cutom api v1.80.9.dev6 2025-12-12 16:12:06 +05:30
Sameer Kankute caaf8a6784 Fix x-litellm-key-spend update 2025-12-12 11:44:51 +05:30
yuneng-jiangandGitHub cf5dab7f52 Merge pull request #17859 from BerriAI/litellm_ui_links_rearrange
[Feature] Model Hub Useful Links Rearrange
2025-12-11 22:12:55 -08:00
yuneng-jiang d1e53365a8 Change useful_links to include index for UI 2025-12-11 21:25:40 -08:00
Sameer Kankute 283b4c208e Fix code quality issue 2025-12-12 10:04:51 +05:30
Sameer Kankute 49e0f8e95f Add support for expires after param 2025-12-12 10:01:18 +05:30
yuneng-jiang 7ea407b239 Rearrange Links UI 2025-12-11 20:23:02 -08:00
Sameer KankuteandGitHub bdb8c169be Merge pull request #17818 from BerriAI/litellm_openai_package_bump
bump openai package to 2.9.0
2025-12-12 08:38:22 +05:30
ryan-crabbeandGitHub 4a8629ce8b updated docs links for mistral and anthropic (#17852) 2025-12-11 17:57:56 -08:00
yuneng-jiangandGitHub 4f79a026ad Merge pull request #17854 from BerriAI/litellm_ui_usage_select
[Feature] UI - Usage Page View Select
2025-12-11 17:57:23 -08:00
yuneng-jiang 3f1473d9a2 fixing build 2025-12-11 17:49:06 -08:00
yuneng-jiang ac52d2aeef tests 2025-12-11 17:47:11 -08:00
yuneng-jiang dfdd74f9ac Usage View Select 2025-12-11 17:37:09 -08:00
yuneng-jiangandGitHub a48f048219 Merge pull request #17848 from BerriAI/litellm_ui_usage_refactor
[Refactor] UI - Usage Page Components
2025-12-11 16:43:11 -08:00
yuneng-jiang 0635b1cbf0 rename 2025-12-11 16:33:23 -08:00
yuneng-jiang 52cb54968a Change to useAuthorized hook 2025-12-11 16:28:03 -08:00
yuneng-jiang c1c8a6937e Renaming + fixing tests 2025-12-11 16:11:09 -08:00
Krish DholakiaandGitHub 7e58931ec1 Prompt Management - new API for integrating providers (#17829)
* Prompt Management API - new API to interact with Prompt Management integrations (no PR required) (#17800)

* feat: initial commit adding prompt management api

* feat: initial commit adding prompt management api

* fix: refactoring to make sure get prompt is async

* fix: additional fixes

* fix: partially working generic api prompt management
2025-12-11 15:43:40 -08:00
yuneng-jiang 424934296f adding all files 2025-12-11 15:40:26 -08:00