Commit graph

36717 commits

Author SHA1 Message Date
Vasilisa Parshikova
8eb81b5202
(sap) fix after bot review 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
19fe0cf0b4
(sap) fix models 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
13d9cf5303
(sap) fix formating 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
a099c2856d
(sap) add literals to models, add negative tests, fix test for tool transformation 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
341b559652
(sap) run black formater 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
f2dd120128
(sap) mock commit 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
1132a7904a
(sap) fix after bot review 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
6123651b30
(sap) fix after bot review 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
315f1755e8
(sap) fix after bot review 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
9bdf6e087f
(sap) fix after bot review 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
1bd5b6339f
(sap) fix after bot review 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
3a9610fcf8
(sap) fix after bot review 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
4630ef90c5
(sap) fix after bot review 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
bde544cad7
(sap) fix after bot review 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
dc8e9d6438
(sap) fix after bot review 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
8f7018d83d
(sap) fix after bot review 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
889861f388
(sap) fix after bot review 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
338379bf40
(sap) fix after bot review 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
834ed13534
(sap) Align embedding request transformation with current API 2026-04-08 08:57:53 +05:30
Vasilisa Parshikova
210ca20e6b
(sap) linter fix 2026-04-08 08:57:50 +05:30
Vasilisa Parshikova
41d5072b5f
(sap) update docs, solve merge conflict in transformation.py 2026-04-08 08:57:31 +05:30
Vasilisa Parshikova
fe390e0b3c
(sap) update tests 2026-04-08 08:57:17 +05:30
Lin Xu
00adbca6c7
test(): add safeguard tests 2026-04-08 08:57:17 +05:30
Vasilisa Parshikova
78eb67a9d8
(sap) rename file 2026-04-08 08:57:17 +05:30
Vasilisa Parshikova
2ea74ecd9f
(sap) code refactoring 2026-04-08 08:57:13 +05:30
Vasilisa Parshikova
91c447164d
(sap) add support of multiple modules config 2026-04-08 08:56:38 +05:30
Vasilisa Parshikova
f7cfda452d
(sap) add tests and docs for new SAP modules 2026-04-08 08:56:38 +05:30
Vasilisa Parshikova
f6e331a436
(sap) add filtering, masking, translation SAP GEN AI Hub modules 2026-04-08 08:56:33 +05:30
Alperen Kömürcü
d0bb619365
sap - fix models 2026-04-08 08:56:05 +05:30
Alperen Kömürcü
5211e7a121
sap - add additional parameters for grounding
- additional parameter for grounding added for the sap provider
2026-04-08 08:55:50 +05:30
milan-berri
c6c8087488
fix(anthropic): pass logging_obj to client.post for litellm_overhead_time_ms (#24071)
When LITELLM_DETAILED_TIMING=true, litellm_overhead_time_ms was null for
Anthropic because the handler did not pass logging_obj to client.post(),
so track_llm_api_timing could not set llm_api_duration_ms. Pass
logging_obj=logging_obj at all four post() call sites (make_call,
make_sync_call, acompletion, completion). Add test to ensure make_call
passes logging_obj to client.post.

Made-with: Cursor
2026-04-08 08:55:34 +05:30
Krrish Dholakia
30dfff03af
Litellm dev 04 02 2026 p1 (#25052)
* fix: replace hardcoded url

* fix: Anthropic web search cost not tracked for Chat Completions

The ModelResponse branch in response_object_includes_web_search_call()
only checked url_citation annotations and prompt_tokens_details, missing
Anthropic's server_tool_use.web_search_requests field. This caused
_handle_web_search_cost() to never fire for Anthropic Claude models.

Also routes vertex_ai/claude-* models to the Anthropic cost calculator
instead of the Gemini one, since Claude on Vertex uses the same
server_tool_use billing structure as the direct Anthropic API.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 08:55:34 +05:30
mubashir1osmani
19a6e60041
add us gov models (#24660)
* add us gov models

* added max tokens
2026-04-08 08:55:29 +05:30
Josh
0033ac0b75
fix: 429s from batch creation being converted to 500 (#24703) 2026-04-08 08:53:42 +05:30
Josh
0f48f793ff
Feat - Add organization into the metrics metadata for org_id & org_alias (#24440)
* Add org_id and org_alias label names to Prometheus metric definitions

* Add user_api_key_org_alias to StandardLoggingUserAPIKeyMetadata

* Populate user_api_key_org_alias in pre-call metadata

* Pass org_id and org_alias into per-request Prometheus metric labels

* Add test for org labels on per-request Prometheus metrics

* chore: resolve test mockdata

* Address review: populate org_alias from DB view, add feature flag, use .get() for org metadata

* Add org labels to failure path and verify flag behavior in test

* Fix test: build flag-off enum_values without org fields

* Gate org labels behind feature flag in get_labels() instead of static metric lists

* Scope org label injection to metrics that carry team context, remove orphaned budget label defs, add test teardown

* Use explicit metric allowlist for org label injection instead of team heuristic

* Fix duplicate org label guard, move _org_label_metrics to class constant

* Reset custom_prometheus_metadata_labels after duplicate label assertion

* fix: emit org labels by default, remove flag, fix missing org_alias in all metadata paths

* fix: emit org labels by default, no opt-in flag required

* fix: write org_alias to metadata unconditionally in proxy_server.py
2026-04-08 08:53:41 +05:30
Josh
0873145727
feat(logging): add component and logger fields to JSON logs for 3rd p… (#24447)
* feat(logging): add component and logger fields to JSON logs for 3rd party filtering

* Let user-supplied extra fields win over auto-generated component/logger, tighten test assertions
2026-04-08 08:53:41 +05:30
michelligabriele
dbbc57ec63
fix(vertex_ai): support pluggable (executable) credential_source for WIF auth (#24700)
The WIF credential dispatch in load_auth() only handled identity_pool and
aws credential types. When credential_source.executable was present (used
for Azure Managed Identity via Workload Identity Federation), it fell
through to identity_pool.Credentials which rejected it with MalformedError.

Add dispatch to google.auth.pluggable.Credentials for executable-type
credential sources, following the same pattern as the existing identity_pool
and aws helpers.

Fixes authentication for Azure Container Apps → GCP Vertex AI via WIF
with executable credential sources.
2026-04-08 08:53:41 +05:30
shin-berri
62757ff48f
Merge pull request #25316 from BerriAI/litellm_yj_apr7
[Infra] Bump version 1.83.4 → 1.83.5
2026-04-07 18:53:11 -07:00
Yuneng Jiang
bd327dbe54
bump: version 1.83.4 → 1.83.5 2026-04-07 18:37:29 -07:00
yuneng-jiang
5f49f29f4e
Merge pull request #25048 from joereyna/fix/dockerfile-node-gyp-path
Fix node-gyp symlink path after npm upgrade in Dockerfile
2026-04-07 17:14:04 -07:00
joereyna
41407d0287
Fix node-gyp symlink path after npm upgrade in Dockerfile 2026-04-07 17:01:55 -07:00
yuneng-jiang
08f34aa3cc
Merge pull request #25313 from BerriAI/litellm_align_v2_key_info_with_v1
Some checks failed
CodeQL / Analyze (actions) (push) Waiting to run
CodeQL / Analyze (javascript-typescript) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
CodSpeed Benchmarks / benchmarks (push) Waiting to run
Helm unit test / unit-test (push) Waiting to run
Read Version from pyproject.toml / read-version (push) Waiting to run
Scorecard supply-chain security / Scorecard analysis (push) Waiting to run
Unit Tests: Proxy DB Operations / proxy-db (auth-checks, tests/proxy_unit_tests/test_auth_checks.py tests/proxy_unit_tests/test_user_api_key_auth.py, 20, 8) (push) Waiting to run
Unit Tests: Proxy DB Operations / proxy-db (key-generation, tests/proxy_unit_tests/test_key_generate_prisma.py, 30, 0) (push) Waiting to run
Unit Tests: Proxy DB Operations / proxy-db (remaining, tests/proxy_unit_tests --ignore=tests/proxy_unit_tests/test_key_generate_prisma.py --ignore=tests/proxy_unit_tests/test_auth_checks.py --ignore=tests/proxy_unit_tests/test_user_api_key_auth.py, 20, 8) (push) Waiting to run
Unit Tests: Security / security (push) Waiting to run
GitHub Actions Security Analysis / zizmor (push) Waiting to run
Unit Tests: Caching (Redis) / caching-redis (push) Has been cancelled
[Refactor] Align /v2/key/info response handling with v1
2026-04-07 15:54:12 -07:00
yuneng-jiang
096893ea97
Merge pull request #25273 from BerriAI/litellm_pin_cosign_pub_to_commit
[Infra] Pin cosign.pub verification to initial commit hash
2026-04-07 15:40:46 -07:00
Yuneng Jiang
021429b797
[Refactor] Align /v2/key/info response handling with v1
The /v2/key/info endpoint was missing response filtering that
the v1 /key/info endpoint already had. This aligns the two
endpoints so v2 applies the same per-key permission checks and
strips internal fields from the response. Also fixes the
key_aliases query path to resolve aliases before querying.
2026-04-07 15:21:42 -07:00
milan-berri
bf8b615b64
fix(auth): support selective jwt override oauth2 routing (#25252)
Allow JWT tokens matching routing_overrides to use OAuth2 introspection without enabling global OAuth2 while keeping OAuth2 routing limited to LLM/info routes. Add regression coverage for management-route boundary and tighten opaque-token assertions; update docs to reflect selective-mode route scope.

Made-with: Cursor
2026-04-07 13:52:47 -07:00
yuneng-jiang
f3bc20056d
Merge pull request #25307 from BerriAI/litellm_/fix_npmrc_dockerfile
[Fix] Dockerfile.non_root: handle missing .npmrc gracefully
2026-04-07 13:01:30 -07:00
Yuneng Jiang
537727f0da
[Fix] Dockerfile.non_root: handle missing .npmrc gracefully
The .npmrc file (ignore-scripts=true, min-release-age=3d) is temporarily
removed during the Docker build since lifecycle scripts are needed by
npm ci. However, the unconditional `mv` fails when the build context
doesn't include .npmrc (e.g. when LiteLLM is vendored in a subdirectory).

Make all .npmrc mv operations conditional. This is safe because npm ci
already installs from package-lock.json with pinned versions and
integrity hashes.
2026-04-07 12:44:04 -07:00
yuneng-jiang
23e1a7d7c2
Merge pull request #25126 from BerriAI/litellm_ui_e2e_psql_pr
[Test] UI - E2E: Add Playwright tests with local PostgreSQL
2026-04-07 11:59:11 -07:00
Yuneng Jiang
184050e2a1
Merge remote main into litellm_ui_e2e_psql_pr 2026-04-07 10:27:12 -07:00
Yuneng Jiang
ce75fde727
Merge remote main into litellm_pin_cosign_pub_to_commit 2026-04-07 10:27:00 -07:00