Commit graph

5275 commits

Author SHA1 Message Date
Sameer Kankute
db32ac217a
Merge pull request #18944 from BerriAI/litellm_fix_bedrock_passthrough_model_id
Fix : model id encoding for bedrock passthrough
2026-01-12 18:08:53 +05:30
Sameer Kankute
27b4c68662
Merge pull request #18942 from BerriAI/litellm_add_ssl_verify_bedrock2
[Bug]: Add Custom CA certificates to boto3 clients
2026-01-12 18:06:32 +05:30
Cesar Garcia
9a8e781cb9
fix(anthropic): preserve web_fetch_tool_result in multi-turn conversations (#18142)
Fixes #18137

Similar to the fix for web_search_tool_result (#17746, #17798), this PR
preserves web_fetch_tool_result blocks in multi-turn conversations.

Changes:
- Add handling for web_fetch_tool_result in transformation.py (non-streaming)
- Add capture of web_fetch_tool_result in handler.py (streaming)
- Fix streaming tool arguments bug where empty input {} was prepended to
  actual arguments by using empty string instead of str({})
- Add unit tests for web_fetch_tool_result handling
2026-01-12 17:18:33 +05:30
Cesar Garcia
f7912990b7
fix(gemini): add presence_penalty support for Google AI Studio (#18154)
Fixes #14753

Co-authored-by: Krish Dholakia <krrishdholakia@gmail.com>
2026-01-12 17:12:19 +05:30
Cesar Garcia
573df855d3
fix(oci): handle OpenAI-style image_url object in multimodal messages (#18272)
The OCI adapter now accepts both string and object formats for image_url:
- String: "image_url": "https://example.com/image.png"
- Object: "image_url": {"url": "https://example.com/image.png"}

This fixes compatibility with OpenAI Vision API format.
2026-01-12 17:08:32 +05:30
Harshit Jain
5ce3a56ac3
add better err handling for antropic (#18955) 2026-01-12 17:03:03 +05:30
Jonathan Hoyt
1169be44b5
fix(google_genai): forward extra_headers in generateContent adapter (#18935)
When using the generateContent endpoint with non-Google providers like
github_copilot, the extra_headers from model config were not being
forwarded to the underlying litellm.completion/acompletion calls.

This caused providers requiring custom headers (e.g., Editor-Version
for GitHub Copilot authentication) to reject requests with errors like
"missing Editor-Version header for IDE auth".

Changes:
- Forward extra_headers in _prepare_completion_kwargs() handler
- Pass extra_headers explicitly to adapter in generate_content()
- Pass extra_headers explicitly to adapter in agenerate_content_stream()
- Pass extra_headers explicitly to adapter in generate_content_stream()
- Add tests for extra_headers forwarding behavior
- Update existing test to expect extra_headers in passed fields

Co-authored-by: Claude <noreply@anthropic.com>
2026-01-12 16:23:58 +05:30
Sameer Kankute
c96a7e80dd
Merge pull request #18898 from yogeshwaran10/litellm_fix_gemini_token_usage_details
fix: missing completion_tokens_details in gemini 3 flash when reasoning_effort is not used (#18896)
2026-01-12 12:33:40 +05:30
yogeshwaran10
0e960df8f4 refactor(tests): move gemini token usage tests to test_vertex_and_google_ai_studio_gemini.py 2026-01-12 11:20:13 +05:30
Sameer Kankute
dabb459d2b Fix : model id encoding for bedrock passthrough 2026-01-12 10:57:17 +05:30
Sameer Kankute
aa97a34a83 Fix tests/test_litellm/llms/bedrock/test_base_aws_llm.py 2026-01-12 09:05:28 +05:30
Sameer Kankute
a9e57cf272 [Bug]: Add Custom CA certificates to boto3 clients 2026-01-12 09:05:09 +05:30
YutaSaito
c171954629
Merge pull request #18912 from BerriAI/litellm_fix_pangea_guardrail
[fix] respect pangea guardrail default_on during initialization
2026-01-12 05:43:54 +09:00
Ishaan Jaffer
7aee1fcb81 OCR test fixes 2026-01-11 08:00:31 -08:00
Yuta Saito
cef087f88b fix: respect pangea guardrail default_on during initialization 2026-01-11 08:33:31 +09:00
Ishaan Jaffer
f1d516f0ae test fixes 2026-01-10 15:15:41 -08:00
Ishaan Jaffer
1ebe979eee test_manus_responses_api_with_file_upload 2026-01-10 15:12:00 -08:00
Ishaan Jaffer
6a9041e67d Revert "aws fix base"
This reverts commit 225f411abc.
2026-01-10 14:08:11 -08:00
Ishaan Jaffer
69aaad5e69 Revert "added extraction of top level metadata for custom lables in prometheus callbacks (#18087)"
This reverts commit 14a4a9c031.
2026-01-10 14:00:54 -08:00
Ishaan Jaffer
6b7f114847 test_lists_with_sensitive_keys_are_masked 2026-01-10 13:55:11 -08:00
Ishaan Jaffer
35c636ba97 test_health_check_not_called_when_disabled 2026-01-10 13:55:11 -08:00
Ishaan Jaffer
ff8e9aeb5c Revert "Add support for Vertex AI API keys"
This reverts commit ad501048f3.
2026-01-10 13:39:49 -08:00
Ishaan Jaff
c0cf8bc27d
[Feat] Manus FILES API - Add File upload, get, delete, list (#18904)
* add MANUS get response

* init TwoStepFileUploadRequest

* init TwoStepFileUploadConfig

* add async_create_file to handle 2 step uploads

* init ManusFilesConfig

* add add get_provider_files_config MANUS

* fix validate_environment

* test_manus_files_api_e2e_all_methods

* aws fix base

* init files API MANUS

* test_manus_responses_api_with_file_upload

* mypy lint fixes

* fix BedrockFilesConfig

* manus docs

* docs manus

* mypy lint

* add add fix resposne api utils MANUS
2026-01-10 13:27:54 -08:00
Ishaan Jaffer
3c3ed3bcfb fix resposne api utils 2026-01-10 13:25:31 -08:00
Ishaan Jaffer
e3fe02148d _mask_sequence 2026-01-10 13:20:43 -08:00
Ishaan Jaff
f19cce950c
add MANUS get response (#18900) 2026-01-10 12:21:45 -08:00
Ishaan Jaff
ab50fea663
[Fix] turn_off_message_logging Does Not Redact Request Messages in proxy_server_request Field When Stored to Database (#18897)
* update _get_proxy_server_request_for_spend_logs_payload

* test_spend_logs_redacts_request_and_response_when_turn_off_message_logging_enabled
2026-01-10 11:28:21 -08:00
yogeshwaran10
d98c71f07e Fixes #18896 : Handle missing completion_tokens_details when reasoning_effort is not used 2026-01-11 00:45:42 +05:30
Sameer Kankute
cb03e5a6dd
Merge pull request #18852 from BerriAI/litellm_add_ssl_verify_bedrock
[Bug]: Add Custom CA certificates to boto3 clients
2026-01-10 11:41:32 +05:30
Alexsander Hamir
578abd4465
Add memory leak detection tests with CI integration (#18881) 2026-01-09 17:36:10 -08:00
yuneng-jiang
dfb298792c New endpoint for router fields + react query 2026-01-09 16:49:22 -08:00
YutaSaito
07db8fe656
Merge pull request #18855 from BerriAI/litellm_fix_mcp-error-in-multiple-server
[fix] mcp error in multiple servers
2026-01-10 07:26:16 +09:00
yuneng-jiang
c29d042df4 Case insensitive email login 2026-01-09 12:51:00 -08:00
Sameer Kankute
0c7db97ad5
Merge pull request #18871 from BerriAI/litellm_fix_test_count_tokens_caching
Fix :test_count_tokens_caching
2026-01-10 01:20:55 +05:30
Harshit Jain
8a683d9a6a
Add fix for bedrock_cache, metadata and max_model_budget (#18872) 2026-01-10 01:09:00 +05:30
Sameer Kankute
777ae4f530 Fix :test_count_tokens_caching 2026-01-10 00:57:11 +05:30
Shivam Rawat
43dd0e6ef5
remove model before casting it in the transformation (#18810) 2026-01-10 00:43:38 +05:30
Cesar Garcia
c19c97591e
fix: align max_tokens with max_output_tokens for consistency (#18820)
* fix: align max_tokens with max_output_tokens for consistency

Fixed inconsistent max_tokens definitions in model_prices_and_context_window.json.
According to LiteLLM convention, max_tokens should equal max_output_tokens when available.

Models fixed:
- deepseek-chat: 131072 → 8192 (now equals max_output_tokens)
- dashscope/qwen-flash: 1000000 → 32768 (now equals max_output_tokens)
- databricks/databricks-gemma-3-12b: 128000 → 32000 (now equals max_output_tokens)

This ensures consistency across all providers where max_tokens represents
the maximum number of tokens that can be generated in the output.

* fix: align max_tokens with max_output_tokens for 244 models

- Fix 244 models where max_tokens != max_output_tokens
- Add test to validate max_tokens consistency and prevent regressions

According to model_prices_and_context_window.json spec:
- max_tokens is a LEGACY parameter
- Should always equal max_output_tokens when both are present

This ensures consistency across all model definitions.
2026-01-10 00:37:45 +05:30
Martin Gauthier
dd087c8cca
🐛 fix: propagate headers in router embedding calls (#18844)
Fix router embedding methods to properly propagate proxy model
configuration headers to LLM API calls by calling
_update_kwargs_before_fallbacks() just like completion() does.

Previously, router.embedding() and router.aembedding() manually
set num_retries and metadata but didn't call
_update_kwargs_before_fallbacks(), which meant default_litellm_params
(including headers) were not propagated correctly.

Changes:
- Replace manual kwargs setup with _update_kwargs_before_fallbacks()
  in _embedding method (litellm/router.py:3318)
- Apply Black formatting to router.py for consistency
- Add comprehensive unit tests for header propagation
- Add integration tests for various router configurations

Tests verify:
- Headers from default_litellm_params are included in embedding calls
- Metadata (model_group) is properly set
- Consistency between completion() and embedding() behavior
- Support for deployment-specific headers, fallbacks, and retries
2026-01-09 23:57:18 +05:30
Sameer Kankute
8dac83e093
Merge pull request #18859 from BerriAI/litellm_azure_image_gen_fix
Fix: response_format leaking into extra_body
2026-01-09 23:09:27 +05:30
Andrés
9768eca33e
fix(azure): add logprobs support for Azure OpenAI GPT-5.2 model (#18856)
* fix(azure): add logprobs support for Azure OpenAI GPT-5 models

Azure OpenAI GPT-5 models (including gpt-5.2) support logprobs
parameters, unlike OpenAI's GPT-5 reasoning models. This fix
overrides the parent class restriction to enable logprobs for Azure.

Changes:
- Override get_supported_openai_params() in AzureOpenAIGPT5Config
- Add "logprobs" and "top_logprobs" to supported params
- Add comprehensive tests for logprobs functionality

Testing:
- Verified with direct Azure API calls to gpt-5.2
- API version: 2025-01-01-preview
- Successfully returns logprobs data

Related: #7974, #4022

* refactor: restrict logprobs support to gpt-5.2 only

Only gpt-5.2 has been verified to support logprobs on Azure.
Other gpt-5 variants (gpt-5, gpt-5.1) have not been tested.

Changes:
- Add conditional check for is_model_gpt_5_2_model()
- Update tests to be specific to gpt-5.2
- Add negative tests for gpt-5 and gpt-5.1
- Update documentation to reflect gpt-5.2 specificity
2026-01-09 22:57:50 +05:30
Harshit Jain
819468554f
fix(security): prevent expired key plaintext leak in error response (#18860) 2026-01-09 22:27:39 +05:30
Sameer Kankute
c0b05fc47a
Merge pull request #18250 from sjmatta/claude/fix-issue-17910-QBgDq
[Fix] Nova model detection for Bedrock provider (#17910)
2026-01-09 17:30:51 +05:30
Sameer Kankute
be28fcd463
Merge pull request #18858 from raghav-stripe/raghav-add-bedrock-tokencounter
feat: add Bedrock as a backend API for token counting
2026-01-09 17:10:52 +05:30
Sameer Kankute
e7efd51bd7
Merge branch 'main' into litellm_staging_01_06_2026 2026-01-09 17:06:17 +05:30
Sameer Kankute
bb9347207b
Merge pull request #18833 from BerriAI/litellm_staging_01_08_2026
Litellm staging 01 08 2026
2026-01-09 17:04:29 +05:30
Sameer Kankute
844c766c65
Merge pull request #18763 from BerriAI/litellm_staging_01_07_2026
Staging - 01/07/2026
2026-01-09 17:01:58 +05:30
Sameer Kankute
ffa0d6706c Fix: response_format leaking into extra_body 2026-01-09 16:53:35 +05:30
Raghav Jhavar
ba78194ff1 add support for bedrock in token counting api 2026-01-09 17:08:07 +07:00
Yuta Saito
5927a557fb tests: add test 2026-01-09 17:25:21 +09:00