Commit graph

41449 commits

Author SHA1 Message Date
Harshit Jain
424a96580b
Merge pull request #22627 from BerriAI/litellm_presidio_antropic_edge_case
fix: presidio edge case with antropic handle on pii token leak
2026-03-10 21:16:56 +05:30
Harshit Jain
e1c2c36f67
Merge pull request #23259 from BerriAI/litellm_claude_missing_reqs
fix: claude code req traces on langfuse
2026-03-10 21:15:36 +05:30
Harshit Jain
fdb0a46242
Merge pull request #23209 from BerriAI/litellm_silent_metrics
feat: record silent metrics
2026-03-10 21:14:09 +05:30
Harshit Jain
a7e9bca103
Merge pull request #23214 from BerriAI/litellm_deployment_helm_chart
feat: add strategy to deployment for helmchart
2026-03-10 21:13:40 +05:30
Chesars
8c2c379cb5 fix(openai): add missing gpt-5.3 model entry
Fixes #23267 — plain `gpt-5.3` was missing from the model pricing
JSON, causing tool_choice (and other capability flags) to default
to unsupported. Copied fields from gpt-5.3-chat-latest.
2026-03-10 12:35:23 -03:00
Carlo Alberto Ferraris
323b473835
fix: add missing indexes for top CPU-consuming queries (#23147)
* fix: add missing indexes for top CPU-consuming queries

Add indexes to eliminate full table scans on two of the top 5 queries
by CPU usage:

1. LiteLLM_VerificationToken(key_alias) — for ORDER BY key_alias ASC
   queries when listing verification tokens
2. LiteLLM_SpendLogs(user, startTime) — for WHERE user = $1 AND
   startTime BETWEEN $2 AND $3 GROUP BY queries on the spend logs

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

* fix: use CREATE INDEX CONCURRENTLY to avoid table locks

Both indexes are now created with CONCURRENTLY and IF NOT EXISTS
to avoid blocking writes on large production tables.
Uses -- SkipTransactionBlock for Prisma migrate compatibility.

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

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 21:00:22 +05:30
Chesars
d232d0de6c docs(openai): document gpt-5.4 reasoning_effort + tools limitation
Add tip boxes explaining that gpt-5.4 does not support reasoning_effort
with function tools in /v1/chat/completions, and that the responses
bridge (openai/responses/gpt-5.4) should be used instead.
2026-03-10 12:04:55 -03:00
Chesars
08d81f5d7c fix(vertex): shallow copy parameters before mutating in _build_vertex_schema_for_gemini_2
Avoids silently removing $defs from the caller's dict, which could
affect logging, caching, or retry logic referencing the same object.
2026-03-10 11:29:59 -03:00
Aarish Alam
2b093aa796
Merge pull request #23196 from CAFxX/docs/claude-md-db-performance-guidelines
docs: add DB query performance guidelines to CLAUDE.md
2026-03-10 19:51:51 +05:30
Chesars
a9c3095cc5 fix(vertex): skip harmful schema transforms for Gemini 2.0+ tool parameters
Gemini 2.0+ natively accepts JSON Schema in tool parameters, including
bare {} (TYPE_UNSPECIFIED), anyOf with null, and lowercase types. The
existing _build_vertex_schema pipeline was coercing {} to {"type": "object"},
breaking JsonValue/Any field semantics (issue #22391).

Add _build_vertex_schema_for_gemini_2() that only resolves $ref (which
Gemini doesn't support in tools) and filters unsupported fields. Use it
for Gemini 2.0+ models, keeping the full transform for Gemini 1.5.
2026-03-10 11:15:27 -03:00
Chesars
a6cb510703 merge: resolve conflicts between main and litellm_oss_staging_03_04_2026
Resolved 14 file conflicts:
- image_edits.md: combined OpenRouter + Black Forest Labs providers
- utils.py: kept staging's message-level cache_control check
- networking.tsx: kept export on 4 tool interfaces
- tool_management_endpoints.py: kept ToolOutputPolicy import
- Accepted main's version for: schema.prisma, a2a_protocol, mcp_server,
  _types.py, auth_checks.py, db_spend_update_writer, endpoints.py,
  spend_tracking_utils, a2a_endpoints, model_prices backup
2026-03-10 10:45:04 -03:00
Chesars
8fac04208d docs(responses): add tool_search bridge examples for chat completions
Add examples showing tool_search with namespaces via the chat
completions bridge (openai/responses/ prefix) for both SDK and proxy.
2026-03-10 10:27:40 -03:00
Harshit Jain
17804edc78
Update litellm/utils.py
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-03-10 18:44:57 +05:30
Harshit Jain
81bd62e8b0
Update litellm/utils.py
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2026-03-10 18:39:40 +05:30
Harshit28j
558523fd75 fix: req changes by greptile 2026-03-10 18:33:17 +05:30
Harshit28j
2f5a553a7d test: assert setup_database called with correct args
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 18:31:04 +05:30
Harshit28j
8c3d6db482 fix: claude code req traces on langfuse 2026-03-10 18:21:42 +05:30
Chesars
bec12db635 docs(responses): add tool_search & namespaces section for gpt-5.4
Add documentation for OpenAI's tool_search feature (Responses API)
with SDK and Proxy examples showing namespace-based deferred tool
loading. Closes #23206.
2026-03-10 09:50:08 -03:00
Sameer Kankute
a788b21092
Merge pull request #23243 from BerriAI/litellm_bedrock-completion-tokens-details
fix(bedrock): populate completion_tokens_details in Responses API
2026-03-10 18:19:28 +05:30
Sameer Kankute
cd80213f1c
Merge pull request #23151 from BerriAI/litellm_preserve-reasoning-summary-for-responses-api
fix(openai): preserve reasoning_effort summary field for Responses API
2026-03-10 18:18:46 +05:30
Sameer Kankute
b3c4326845
Merge pull request #23131 from BerriAI/litellm_vertex_ai_extra_body_cache_fix
fix(vertex_ai): strip LiteLLM-internal keys from extra_body before merging to Gemini request
2026-03-10 18:17:29 +05:30
Harshit28j
aae2deb839 fix: remove redundant import and add test for startup failure
- Remove redundant `import sys` (already imported at module level)
- Add test_startup_fails_when_db_setup_fails verifying sys.exit(1)
  when PrismaManager.setup_database returns False

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 18:15:11 +05:30
Harshit28j
4714128da5 fix: fail proxy startup if prisma migrate fails
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-03-10 18:05:13 +05:30
Sameer Kankute
9bc7357e7c
Merge pull request #23222 from BerriAI/litellm_oss_staging_02_18_2026
Litellm oss staging 02 18 2026
2026-03-10 17:46:06 +05:30
Sameer Kankute
b211b67cea
Merge pull request #23164 from BerriAI/litellm_oss_staging_03_09_2026
oss staging 03/09/2026
2026-03-10 17:45:17 +05:30
Sameer Kankute
d0d1291c15
Merge pull request #22628 from BerriAI/litellm_oss_staging_03_02_2026
Litellm oss staging 03 02 2026
2026-03-10 17:40:31 +05:30
Sameer Kankute
9bee76c30d
Merge pull request #23253 from BerriAI/main
merge main
2026-03-10 17:25:01 +05:30
Sameer Kankute
72fc2f77cf
Merge pull request #23252 from BerriAI/main
merge main
2026-03-10 17:24:19 +05:30
Harshit Jain
9f15a9915e
Merge branch 'main' into litellm_langfuse_key_leakage 2026-03-10 17:21:15 +05:30
Sameer Kankute
3f17a63b81
Merge branch 'main' into litellm_oss_staging_03_02_2026 2026-03-10 17:19:37 +05:30
Harshit28j
20bf3aa807 fix: pop sensitive keys from langfuse 2026-03-10 17:18:11 +05:30
Harshit28j
631aefea18 fix: req changes on feedback from greptile 2026-03-10 16:46:18 +05:30
Harshit28j
212059cd11 fix: presidio improvements 2026-03-10 16:33:41 +05:30
Harshit28j
12de8a724f fix: clean approach instead of UUID 2026-03-10 15:51:11 +05:30
Harshit28j
14ecc79760 fix: req changes greptile hallucinates 2026-03-10 15:51:11 +05:30
Harshit28j
a28fbba3b1 fix: req changes to improve score 2026-03-10 15:51:11 +05:30
Harshit28j
1bfd88a33c fix: req changes 2026-03-10 15:51:10 +05:30
Harshit28j
1ba42d1d99 fix: address req changes 2026-03-10 15:51:10 +05:30
Harshit28j
861db111a0 fix: presidio edge case with antropic handle on pii token leak 2026-03-10 15:51:10 +05:30
Sameer Kankute
94b002066e
Merge pull request #23244 from BerriAI/litellm_skills_api_folder_name_match
fix(skills): match zip folder name to skill name in SKILL.md for Anthropic API
2026-03-10 14:11:49 +05:30
Sameer Kankute
88c4079b16 fix(skills): match zip folder name to skill name in SKILL.md for Anthropic API
Made-with: Cursor
2026-03-10 14:11:11 +05:30
Sameer Kankute
0122abfa2b fix(bedrock): populate completion_tokens_details in converse _transform_usage
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-03-10 13:17:28 +05:30
Harshit28j
afb117f5d3 fix: req changes from greptile 2026-03-10 13:03:29 +05:30
Harshit28j
b731e432f8 feat: record silent metrics 2026-03-10 12:54:32 +05:30
Sameer Kankute
3e1f343d1a
Merge pull request #23242 from BerriAI/litellm_fix_redaction_and_charity_engine_provider
fix(tests): update cache hit redaction assertion to expect choices fo…
2026-03-10 12:27:59 +05:30
yuneng-jiang
d39a3a90b4
Merge pull request #23241 from BerriAI/litellm_/elastic-gagarin
[Feature] UI - Virtual Keys: Add refetch button, keep stale data during refetch
2026-03-09 23:52:11 -07:00
yuneng-jiang
129ed1014b [Fix] UI - Virtual Keys: Reset refetch button on error so user can retry
When a fetch fails, the button now exits the loading state instead of
staying stuck on "Fetching" indefinitely.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 23:46:45 -07:00
Sameer Kankute
f33f446476
Merge pull request #23240 from BerriAI/litellm_bedrock-nova-output-config-spend-tracking
fix(bedrock): strip output_config from Converse requests; fix spend tracking redaction test
2026-03-10 12:15:06 +05:30
Sameer Kankute
30fde1de7f fix(tests): update cache hit redaction assertion to expect choices format
Made-with: Cursor
2026-03-10 12:14:24 +05:30
yuneng-jiang
9ee489863d [Feature] UI - Virtual Keys: Add refetch button and keep stale data during refetch
Show a Fetch/Fetching button next to "Showing X of Y results" that acts as
both a manual refetch trigger and a loading indicator. The "Loading keys..."
message now only appears on initial load; subsequent refetches keep the table
visible with stale data (via React Query's keepPreviousData).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 23:30:55 -07:00