Commit graph

27672 commits

Author SHA1 Message Date
Sameer Kankute
883cfaeeaf Add tests 2025-11-25 13:32:13 +05:30
Sameer Kankute
f52f05748d Update docs related to vertex ai image gen 2025-11-25 13:31:50 +05:30
Sameer Kankute
29ab291cf5 Add vertex ai image support 2025-11-25 13:31:16 +05:30
Dmitriy Alergant
90850bf6d5
fix: add nodejs and npm to runtime dependencies for prisma generate (#16903)
Fixes cross-platform Docker build issue where `prisma generate` fails
when building for amd64 platform from macOS. The Prisma CLI requires
Node.js and npm to be available in the runtime environment.

The Python prisma package (v0.11.0) uses nodeenv to bootstrap Node.js
if not found. However, the downloaded npm v10 fails with a
"sizeCalculation" error in minimal Chainguard environments during
cross-platform builds. Providing system nodejs/npm resolves this.

Changes:
- Added nodejs and npm to runtime dependencies (Dockerfile:51)
- This enables prisma generate to run successfully during the build

Error without fix:
npm error cannot set sizeCalculation without setting maxSize or maxEntrySize
subprocess.CalledProcessError: Command '[...nodeenv/bin/npm', 'install',
'prisma@5.4.2']' returned non-zero exit status 1.

Testing:
docker buildx build --platform linux/amd64 -t litellm:test .

Co-authored-by: Claude <noreply@anthropic.com>
2025-11-22 19:27:06 -08:00
Ishaan Jaffer
73d3d151ab fix 1.80.5 2025-11-22 19:24:46 -08:00
yuneng-jiang
02873cf992
Minor cosmetic changes for buttons, add notification for delete team (#16984) 2025-11-22 19:24:25 -08:00
YutaSaito
06f2ecef42
feat: tool permission argument check (#16982) 2025-11-22 19:21:25 -08:00
yuneng-jiang
16a5178527
Ensure unique keys in navbar menu items (#16987) 2025-11-22 19:20:01 -08:00
Ishaan Jaff
f3cd0b0bc4
docs - ai gateway prompt management (#16990)
* docs prompt management

* docs

* add prompt mgmt imgs

* docs fix

* docs prompt management

* docs fix

* docs prompt versions

* docs fix
2025-11-22 18:49:29 -08:00
Ishaan Jaffer
1c864dc0de docs 1.80.5 2025-11-22 17:54:50 -08:00
Ishaan Jaffer
7e338f1beb docs sso roles 2025-11-22 17:36:44 -08:00
Ishaan Jaffer
2ebfc92dca docs fix 2025-11-22 17:34:45 -08:00
Ishaan Jaffer
036b2848e3 docs 2025-11-22 17:33:57 -08:00
Ishaan Jaffer
f1e4242cbf docs fix 2025-11-22 17:33:57 -08:00
Alexsander Hamir
815136fbef
perf release notes (#16978) 2025-11-22 17:23:31 -08:00
Ishaan Jaffer
023eefb6d5 docs fix 2025-11-22 16:54:30 -08:00
Krrish Dholakia
cc5ecfd479 test: fix tests 2025-11-22 16:50:50 -08:00
Ishaan Jaffer
93c2103097 fix docs 2025-11-22 16:16:56 -08:00
Ishaan Jaffer
7cbb159997 v1.80.0-stable 2025-11-22 16:09:52 -08:00
Krrish Dholakia
d0cb2db0c6 docs(ai_hub.md): document mcp servers on ai hub 2025-11-22 16:07:38 -08:00
yuneng-jiang
5da77ac40a
[Fix] Revert UI - Organization Usage (#16980)
* Revert "[Feature] UI - Organization Usage in Usage Tab (#16614)"

This reverts commit 4de182c98f.

* Networking Changes
2025-11-22 16:02:12 -08:00
Krish Dholakia
de897ce389
fix(vertex_ai/image_generation_handler.py): fix default sample count to be 1 - same as openai (#16403)
reduce cost for default flow
2025-11-22 15:54:23 -08:00
Krrish Dholakia
478f9b0072 fix: fix ruff checks 2025-11-22 15:51:41 -08:00
yuneng-jiang
c6e0a0209f
Docs for Model Compare UI (#16979) 2025-11-22 15:48:42 -08:00
Krish Dholakia
270d23939e
(fix) litellm_logging.py: fix mcp tool call response logging + (fix) responses_bridge: remove unmapped param error mid-stream - allows gpt-5 web search to work via responses api in .completion() (#16946)
* fix: fix getting mcp servers

* fix(litellm_logging.py): handle list objects for final response in standard logging payload

Fixes issue where mcp tool call response wouldn't show up

* fix(litellm_responses_transformation/): remove invalid item error for unmapped objects - breaks stream and there's no real value to this as outside of a few of them, not all can be mapped to chat completions

resolves error for web search calls via chat completions to responses api
2025-11-22 15:48:32 -08:00
Krish Dholakia
c966c122ad
feat: Add Presidio PII masking tutorial (#16969)
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
2025-11-22 15:45:43 -08:00
Krish Dholakia
b9f2cc1c98
Model Armor - Logging guardrail response on llm responses (#16977)
* Litellm dev 11 22 2025 p1 (#16975)

* fix(model_armor.py): return response after applying changes

* fix: initial commit adding guardrail span logging to otel on post-call runs

sends it as a separate span right now, need to include in the same llm request/response span

* fix(opentelemetry.py): include guardrail in received request log + set input/ouput fields on parent otel span instead of nesting it

allows request/response to be seen easily on observability tools

* fix(model_armor.py): working model armor logging on post call events

* fix: fix exception message

* fix(opentelemetry.py): add backwards compatibility for litellm_request

allow users building on the spec change to use previous spec
2025-11-22 15:44:28 -08:00
Krish Dholakia
e11d34eb69
Permission Management - disable global guardrails by key/team (#16983)
* feat(teams.py): param for disabling guardrails by team

allows use-case where you don't run global guardrails for team - only run team-specific guardrails

* feat(custom_guardrail.py): add support for disabling global guardrails

only run guardrails requested for in the request/key/team

* feat: support adding disable_global_guardrails to metadata if present in key/team metadata

* feat(create_key_button.tsx): new disable global guardrails field

* feat(key_edit_view.tsx): support disabling global guardrails on key edit

* feat(teams.tsx): add disable global guardrails on create team on UI

* feat(team_info.tsx): allow disabling global guardrails on team update
2025-11-22 15:43:50 -08:00
yuneng-jiang
f7f4320e12
Revert to console outputs to reduce noise (#16981) 2025-11-22 15:26:45 -08:00
Ishaan Jaffer
7cf1d306f2 fix ui unit tests fuck this test why is it so flaky 2025-11-22 14:55:29 -08:00
Ishaan Jaffer
919465280d fix ui build 2025-11-22 14:48:15 -08:00
Ishaan Jaffer
e8ba4e3fa4 fix ui unit tests 2025-11-22 14:32:10 -08:00
Ishaan Jaffer
1fc3baf864 e2e ui testing fixes 2025-11-22 14:30:00 -08:00
yuneng-jiang
825f61b452
Remove expired proxy admin keys from cache (#16894) 2025-11-22 14:23:28 -08:00
yuneng-jiang
22fd323d6b
Calling team/permissions_list and team/permissions_update now returns 404 with non-existent team (#16835) 2025-11-22 14:21:58 -08:00
Ishaan Jaffer
4fb9e33a95 fixes 2025-11-22 14:11:13 -08:00
Ishaan Jaffer
c6b8f19adc ui unit tests fix 2025-11-22 14:05:59 -08:00
Ishaan Jaffer
b43b68a072 docs fix 2025-11-22 14:02:14 -08:00
Alexsander Hamir
b02baf53a9
Fix: prevent memory blowout in LoggingWorker (#16559)
* fix: prevent memory blowout in LoggingWorker

Tasks were being executed sequentially with each task awaited before
processing the next one. When the queue had 10k+ tasks, only one could
execute at a time. Since the request rate exceeded execution speed,
objects accumulated in memory (50k+), holding references to heavy
objects and causing memory blowout.

The new implementation uses a semaphore to allow up to 1000 concurrent
tasks while properly tracking and cleaning up each task, significantly
improving throughput and preventing queue buildup.

* fix: require semaphor before removing task from queue

* fix: make worker concurrency configurable

* fix: clean comments

* fix: clarify new env purpose

* fix: add missing lib

* make constants configurable instead of hardcoded

* add more aggressive cleaning when queue is full

* add helpers function for the aggressive cleaning functionality

* use envs instead of static constants

* import and document constants

* add unit test for new functionality

* fix default value on config_settings

* fix: remove unused variables and imports to resolve linter errors

- Remove unused time_since_last_clear variable in logging_worker.py
  The variable was calculated but never used in _handle_queue_full()
  method, causing F841 linter error.

- Remove unused TYPE_CHECKING import in mcp_server/server.py
  The import was not used anywhere in the file, causing F401 linter error.

These changes improve code cleanliness and ensure the codebase passes
all linter checks without affecting functionality.

* add missing log expected by test_queue_full_handling

* fix: clean config_setting.md file

* fix: handle logging errors gracefully during shutdown in _flush_on_exit

During process shutdown, logging handlers may be closed while _flush_on_exit
tries to flush queued logging coroutines. This causes 'ValueError: I/O
operation on closed file' errors when coroutines attempt to log.

Changes:
- Add _safe_log helper method that wraps logging calls and suppresses
  errors when logging handlers are closed (ValueError, OSError, AttributeError)
- Replace all verbose_logger calls in _flush_on_exit with _safe_log
- Remove logging from exception handler in coroutine execution loop
  to prevent cascading errors during shutdown

This ensures graceful shutdown even when logging handlers are closed,
which is common during process termination.
2025-11-22 13:58:29 -08:00
Ishaan Jaffer
31620481de ui unit test fix 2025-11-22 13:53:10 -08:00
Ishaan Jaffer
a06e7edd85 docs 1.80.5 2025-11-22 13:52:26 -08:00
Ishaan Jaffer
dd325191e7 ui testing fixes 2025-11-22 13:44:58 -08:00
Ishaan Jaffer
c7fefcc717 bump v 2025-11-22 13:37:44 -08:00
Ishaan Jaffer
37460b6aee bump: version 1.80.4 → 1.80.5 2025-11-22 13:37:12 -08:00
Ishaan Jaffer
5f78ea757c async_health_check arize fix 2025-11-22 12:27:49 -08:00
Ishaan Jaffer
2f0ec47426 GHSA-5j98-mcp5-4vw2 fix 2025-11-22 12:12:28 -08:00
Krish Dholakia
ac3aa74c22
(feat) Anthropic - support Structured Outputs output_format for Claude 4.5 sonnet and Opus 4.1 + Arize Phoenix - root span logging (#16949)
* feat(anthropic/chat/transformations): for claude-4-5-sonnet and opus-4-1 support passing structured output to anthropic api

* docs: document new feature

* fix: fix output format

* fix: cleanup

* fix(transformation.py): conditionally pass in json tool call

* fix: support ARIZE_SPACE_ID instead of ARIZE_SPACE_KEY

* docs(arize_integration.md): cleanup arize docs

* feat(callback_info_helpers.tsx): allow setting arize space id via ui

* fix: fix linting error

* fix(opentelemetry.py): working arize phoenix root span tracing
2025-11-22 12:08:26 -08:00
Ishaan Jaffer
dc08e2d057 fix pkg lock 2025-11-22 11:52:57 -08:00
Ishaan Jaffer
d92c5bb0d7 fix pkg lock 2025-11-22 11:51:15 -08:00
Ishaan Jaffer
3ba3faefb8 fix sec scan 2025-11-22 11:50:32 -08:00