Commit graph

31338 commits

Author SHA1 Message Date
Harshit Jain
d0939075bc
fix: guardrails issues streaming-response regex (#19901) 2026-01-27 17:36:18 -08:00
michelligabriele
8c4ccdc313
test(proxy): add regression tests for vertex passthrough model names with slashes (#19855)
Added test cases for custom model names containing slashes in Vertex AI
passthrough URLs (e.g., gcp/google/gemini-2.5-flash).

Test cases:
- gcp/google/gemini-2.5-flash
- gcp/google/gemini-3-flash-preview
- custom/model
2026-01-27 17:34:40 -08:00
yuneng-jiang
936a4fc884
Merge pull request #19905 from BerriAI/litellm_ci_ui_fix
[Infra] CI/CD - Fixing UI Tests
2026-01-27 17:21:39 -08:00
yuneng-jiang
01e22fd5ab Fixing UI tests 2026-01-27 17:19:02 -08:00
yuneng-jiang
7109aafe4c
Merge pull request #19903 from BerriAI/litellm_ui_model_table_adjustable_col
[Feature] Add sortBy and sortOrder params for /v2/model/info
2026-01-27 17:16:22 -08:00
yuneng-jiang
a7ead71499 ruff check 2026-01-27 17:00:14 -08:00
yuneng-jiang
1581bcf985 add sortBy and sortOrder params for /v2/model/info 2026-01-27 16:54:52 -08:00
Xianzong Xie
f9eea06a37 Add tests for native_background_mode feature
Added 8 new unit tests for the native_background_mode feature:
- test_polling_disabled_when_model_in_native_background_mode
- test_polling_disabled_for_native_background_mode_with_provider_list
- test_polling_enabled_when_model_not_in_native_background_mode
- test_polling_enabled_when_native_background_mode_is_none
- test_polling_enabled_when_native_background_mode_is_empty_list
- test_native_background_mode_exact_match_required
- test_native_background_mode_with_provider_prefix_in_request
- test_native_background_mode_with_router_lookup

Committed-By-Agent: cursor
2026-01-27 16:48:22 -08:00
Ishaan Jaff
51339f5ef1
[Feat] RAG API - Add s3_vectors as provider on /vector_store/search API + UI for creating + PDF support for /rag/ingest (#19895)
* init S3VectorsRAGIngestion as a supported ingestion provider for RAG API

* test: TestRAGS3Vectors

* init S3VectorsVectorStoreOptions

* init s3 vectors

* code clean up + QA

* fix: get_credentials

* S3VectorsRAGIngestion

* TestRAGS3Vectors

* docs: AWS S3 Vectors

* add asyncio QA checks

* fix: S3_VECTORS_DEFAULT_DIMENSION

* init ui for bedrock s3 vectors

* fix add /search support for s3_vectors

* init atransform_search_vector_store_request

* feat: S3VectorsVectorStoreConfig

* TestS3VectorsVectorStoreConfig

* atransform_search_vector_store_request

* fix: S3VectorsVectorStoreConfig

* add validation for bucket name etd

* fix UI validation for s3 vector store

* init extract_text_from_pdf

* add pypdf

* fix code QA checks

* fix navbar

* init s3_vector.png

* fix QA code
2026-01-27 16:30:59 -08:00
Xianzong Xie
0b8c10c488 Add native_background_mode to override polling_via_cache for specific models
This follow-up to PR #16862 allows users to specify models that should use
the native provider's background mode instead of polling via cache.

Config example:
  litellm_settings:
    responses:
      background_mode:
        polling_via_cache: ["openai"]
        native_background_mode: ["o4-mini-deep-research"]
        ttl: 3600

When a model is in native_background_mode list, should_use_polling_for_request
returns False, allowing the request to fall through to native provider handling.

Committed-By-Agent: cursor
2026-01-27 15:54:46 -08:00
Ishaan Jaff
fe444f3ed5
[Feat] RAG API - Add support for using s3 Vectors as Vector Store Provider for /rag/ingest (#19888)
* init S3VectorsRAGIngestion as a supported ingestion provider for RAG API

* test: TestRAGS3Vectors

* init S3VectorsVectorStoreOptions

* init s3 vectors

* code clean up + QA

* fix: get_credentials

* S3VectorsRAGIngestion

* TestRAGS3Vectors

* docs: AWS S3 Vectors

* add asyncio QA checks

* fix: S3_VECTORS_DEFAULT_DIMENSION
2026-01-27 14:45:26 -08:00
yuneng-jiang
93d6aae4a3 mypy linting 2026-01-27 14:06:54 -08:00
yuneng-jiang
1411a227aa bulk update keys endpoint 2026-01-27 13:58:32 -08:00
michelligabriele
7d5439adda
fix(bedrock): support tool search header translation for Sonnet 4.5 (#19871)
Extend advanced-tool-use header translation to include Claude Sonnet 4.5
in addition to Opus 4.5 on Bedrock Invoke API.

When Claude Code sends the advanced-tool-use-2025-11-20 header, it now
gets correctly translated to Bedrock-specific headers for both:
- Claude Opus 4.5
- Claude Sonnet 4.5

Headers translated:
- tool-search-tool-2025-10-19
- tool-examples-2025-10-29

Fixes defer_loading validation error on Bedrock with Sonnet 4.5.

Ref: https://platform.claude.com/docs/en/agents-and-tools/tool-use/tool-search-tool
2026-01-27 12:17:09 -08:00
Milan
3f99a91a47 initialize tiktoken environment at import time to support offline usage 2026-01-27 22:05:04 +02:00
yuneng-jiang
45954155d7
Merge pull request #19799 from BerriAI/litellm_sso_email_casing
[Fix] SSO Email Case Sensitivity
2026-01-27 09:52:03 -08:00
yuneng-jiang
50612715a5
Merge pull request #19814 from BerriAI/litellm_team_member_add_fix
[Fix] /team/member_add User Email and ID Verifications
2026-01-27 09:49:01 -08:00
michelligabriele
388b4c90b6
fix(proxy): handle agent parameter in /interactions endpoint (#19866) 2026-01-27 09:34:58 -08:00
michelligabriele
fc7a9b4cb0
fix(enterprise): correct error message for DISABLE_ADMIN_ENDPOINTS (#19861)
The error message for DISABLE_ADMIN_ENDPOINTS incorrectly said
"DISABLING LLM API ENDPOINTS is an Enterprise feature" instead of
"DISABLING ADMIN ENDPOINTS is an Enterprise feature".

This was a copy-paste bug from the is_llm_api_route_disabled() function.

Added regression tests to verify both error messages are correct.
2026-01-27 09:34:30 -08:00
Harshit Jain
0f0b71e6d9
feat: add feature to make silent calls (#19544)
* feat: add feature to make silent calls

* add test or silent feat

* add docs for silent feat

* fix lint issues and  UI logs

* add docs of ab testing and deep copy
2026-01-27 09:16:53 -08:00
Sameer Kankute
5c1588e3b7
Merge pull request #19841 from BerriAI/litellm_bedrock_tool_search_header
Translate advanced-tool-use to Bedrock-specific headers for Claude Opus 4.5
2026-01-27 17:48:51 +05:30
Sameer Kankute
81020d05d2
Merge pull request #19844 from BerriAI/litellm_sarvam_doc
[Docs]Add sarvam usage documentation
2026-01-27 17:47:59 +05:30
Sameer Kankute
c8a93c7d81
Merge pull request #19845 from BerriAI/litellm_gemini-robotics-er-1.5-preview2
Add  Gemini Robotics-ER 1.5 preview support
2026-01-27 17:47:44 +05:30
Sameer Kankute
8565a9f5a2
Merge pull request #19847 from BerriAI/litellm_image_streaming_download
Fix: Stream the download in chunks for image handling
2026-01-27 17:47:35 +05:30
Sameer Kankute
29fc4f8f61
Merge pull request #19850 from BerriAI/litellm_grok_reasonnig_support
Add grok reasoning content
2026-01-27 17:46:07 +05:30
Sameer Kankute
c834d7d1fe
Merge branch 'main' into litellm_oss_staging_01_27_2026 2026-01-27 17:11:15 +05:30
Sameer Kankute
ea0a264a3c
Merge pull request #19753 from BerriAI/litellm_oss_staging_01_26_2026
fix(proxy): support slashes in google generateContent model names (#1…
2026-01-27 17:09:12 +05:30
Sameer Kankute
0214cb04cd
Merge branch 'main' into litellm_oss_staging_01_26_2026 2026-01-27 17:00:58 +05:30
Sameer Kankute
adf6d7e1db
Merge pull request #19692 from BerriAI/litellm_oss_staging_01_24_2026
Litellm oss staging 01 24 2026
2026-01-27 16:59:28 +05:30
Sameer Kankute
9a2750f8ec
Merge pull request #19617 from BerriAI/litellm_oss_staging_01_23_2026
Litellm oss staging 01 23 2026
2026-01-27 16:55:32 +05:30
Sameer Kankute
f30742fe6e Fix mypy and code quality issues 2026-01-27 16:49:39 +05:30
Sameer Kankute
154ad179af Revert poetry lock 2026-01-27 16:39:56 +05:30
Sameer Kankute
e695cb5367 Add grok reasoning content 2026-01-27 16:34:57 +05:30
Sameer Kankute
bd95712a22
Merge pull request #19832 from BerriAI/litellm_fix_a2a_package
Fix: A2A Python SDK URL
2026-01-27 15:16:52 +05:30
Sameer Kankute
988dd2a911 Fix: Stream the download in chunks 2026-01-27 14:35:54 +05:30
Sameer Kankute
e273c85848 Add gemini-robotics-er-1.5-preview model documentation 2026-01-27 13:58:13 +05:30
Sameer Kankute
cf012a2f65 Add gemini-robotics-er-1.5-preview model in model map 2026-01-27 13:58:03 +05:30
Sameer Kankute
faf9c9ba76 Add sarvam doc 2026-01-27 13:11:29 +05:30
Sameer Kankute
13313ac2be
Merge pull request #19232 from natimofeev/fix-gigachat-function-output-format
Fix: ensure function content is valid JSON for GigaChat
2026-01-27 13:02:38 +05:30
Sameer Kankute
f98eba24d4
Merge pull request #19040 from Point72/ephrimstanley/batch-list
Fix /batches to return encoded ids (from managed objects table)
2026-01-27 13:02:05 +05:30
Sameer Kankute
9883c2fd64 Fix: timeout exception raised eror 2026-01-27 12:32:37 +05:30
Harshit Jain
fd2f148161
fix: resolve 'does not exist' migration errors as applied in setup_database (#19281) 2026-01-26 22:11:36 -08:00
Harshit Jain
a5bc98a18a
fix(prometheus): safely handle None metadata in logging to prevent At… (#19691)
* fix(prometheus): safely handle None metadata in logging to prevent AttributeError

* fix: lint issues
2026-01-26 22:10:54 -08:00
Harshit Jain
885a02e6c8
fix: token calculations and refactor (#19696) 2026-01-26 22:08:17 -08:00
Sameer Kankute
3f32562587 Translate advanced-tool-use to Bedrock-specific headers for Claude Opus 4.5 2026-01-27 11:20:16 +05:30
Sameer Kankute
1bf33c4e41 Fix:Support both JSON array format and comma-separated values from user headers 2026-01-27 11:19:31 +05:30
Cesar Garcia
e4a557d95f
fix(xai): correct cached token cost calculation for xAI models (#19772)
* fix(azure): use generic cost calculator for audio token pricing

Azure audio models were charging audio output tokens at the text token
rate instead of the correct audio token rate. This resulted in costs
being ~6.65x lower than expected.

The fix replaces Azure's custom cost calculation logic with the generic
cost calculator that properly handles text, audio, cached, reasoning,
and image tokens.

Fixes #19764

* fix(xai): correct cached token cost calculation for xAI models

- Fix double-counting issue where xAI reports text_tokens = prompt_tokens
  (including cached), causing tokens to be charged twice
- Add cache_read_input_token_cost to xAI grok-3 and grok-3-mini model variants
- Detection: when text_tokens + cached_tokens > prompt_tokens, recalculate
  text_tokens = prompt_tokens - cached_tokens

xAI pricing (25% of input for cached):
- grok-3 variants: $0.75/M cached (input $3/M)
- grok-3-mini variants: $0.075/M cached (input $0.30/M)
2026-01-26 21:00:35 -08:00
Cesar Garcia
16f456ad82
fix(azure): use generic cost calculator for audio token pricing (#19771)
Azure audio models were charging audio output tokens at the text token
rate instead of the correct audio token rate. This resulted in costs
being ~6.65x lower than expected.

The fix replaces Azure's custom cost calculation logic with the generic
cost calculator that properly handles text, audio, cached, reasoning,
and image tokens.

Fixes #19764
2026-01-26 21:00:03 -08:00
Cesar Garcia
b1968a8e33
fix(responses): update local_vars with detected provider (#19782) (#19798)
When using the responses API with provider-specific params (aws_*, vertex_*)
without explicitly passing custom_llm_provider, the code crashed with:
AttributeError: 'NoneType' object has no attribute 'startswith'

Root cause: local_vars was captured via locals() before get_llm_provider()
detected the provider from the model string (e.g., "bedrock/..."), so
custom_llm_provider remained None when processing provider-specific params.

Fix: Update local_vars["custom_llm_provider"] after get_llm_provider() call
so the detected provider is available for param processing.

Affected provider-specific params:
- aws_* (aws_region_name, aws_access_key_id, etc.) for Bedrock/SageMaker
- vertex_* (vertex_project, vertex_location, etc.) for Vertex AI
2026-01-26 20:47:35 -08:00
Cesar Garcia
0d45b01069
fix(models): set gpt-5.2-codex mode to responses for Azure and OpenRouter (#19770)
Fixes #19754

The gpt-5.2-codex model only supports the responses API, not chat completions.
Updated azure/gpt-5.2-codex and openrouter/openai/gpt-5.2-codex entries to use
mode: "responses" and supported_endpoints: ["/v1/responses"].
2026-01-26 20:36:10 -08:00