Commit Graph
4907 Commits
Author SHA1 Message Date
YutaSaitoandGitHub 2bbfa498e2 Revert "ensure datadog llm obs ignores dd base url override" 2025-12-20 08:56:49 +09:00
Yuta Saito 72f424c719 ensure datadog llm obs ignores dd base url override 2025-12-20 07:44:40 +09:00
yuneng-jiangandGitHub 026c2ad693 Merge pull request #18167 from BerriAI/litellm_vector_store_config
[Feature] Auto Resolve Vector Store Embedding Model Config
2025-12-19 11:39:17 -08:00
yuneng-jiangandGitHub b1b488982d Merge pull request #18168 from BerriAI/litellm_cloudzero_delete
[Feature] Delete Cloudzero Settings Route
2025-12-19 11:38:10 -08:00
Sameer KankuteandGitHub 3761f38e43 Merge pull request #18254 from BerriAI/litellm_add_stability_model_edit_1
Add support for stability model and bedrock stability model
2025-12-20 00:23:15 +05:30
Sameer KankuteandGitHub f05e600969 Merge pull request #18236 from BerriAI/litellm_add_background_responses_cost_tracking
Add cost tracking for responses api in background mode
2025-12-20 00:14:09 +05:30
Sameer KankuteandGitHub d29f4cab59 Merge pull request #17971 from BerriAI/litellm_ocr_deepseek
Add support for ocr for vertex ai deepseek model
2025-12-20 00:13:57 +05:30
Sameer Kankute 3d56d3d49b vertex ai deepseek doesn't support pdf urls, so skip them 2025-12-19 23:53:17 +05:30
Sameer Kankute b0a219b718 fix lint error 2025-12-19 23:45:37 +05:30
Sameer Kankute 8efd4653ce Fix litellm_mapped_tests_llms 2025-12-19 23:44:14 +05:30
Alexsander HamirandGitHub 24edbccf5c [Fix] Security - Remove example API keys with high entropy (#18255) 2025-12-19 10:09:50 -08:00
Sameer KankuteandGitHub 06d08b52d9 Merge pull request #18237 from BerriAI/litellm_gemini_response_format_fix
Fix: properties: should be non-empty for OBJECT type
2025-12-19 23:34:05 +05:30
Sameer Kankute b849f51e58 Add support for stability model in image edit 2025-12-19 23:03:17 +05:30
yuneng-jiangandGitHub e1d25670cd Merge pull request #18214 from BerriAI/litellm_key_management_fix
[Fix] Key Delete and Regenerate Permissions Fix
2025-12-19 08:48:21 -08:00
Ishaan JaffandGitHub deb8d16967 [Feat] Add new Rag Search API / Query API with rerankers (#18217)
* init RAGQueryRequest

* init RAGQuery

* fix query

* fix _execute_query_pipeline

* TestRAGOpenAI
2025-12-19 19:05:07 +05:30
Ishaan Jaffer b0db9d6bb7 code qa check 2025-12-19 19:00:44 +05:30
Ishaan JaffandGitHub 09b5ee9428 [Feat] Unified Skills API - works across Anthropic, Vertex, Azure, Bedrock (#18232)
* init LiteLLM_SkillsTable

* init LiteLLMSkillsTransformationHandler

* init LiteLLMSkillsTransformationHandler

* init skills

* init SkillsInjectionHook

* init litellm skills handler

* _fetch_skill_from_db

* LiteLLMSkillsTransformationHandler

* add _prisma_skill_to_litellm

* use SkillPromptInjectionHandler

* refactor skills handler

* add slack GIF

* test_skill_code_execution_via_deployment_hook

* init readme

* test_get_skill_sdk

* test skills in DB

* fix code qa

* init with containers param

* SkillsInjectionHook

* fix type

* convert_skill_to_anthropic_tool, get_litellm_code_execution_tool_anthropic

* fix messages skills handler

* test_slack_gif_skill_creates_gif

* init SkillsInjectionHook

* clean async_pre_call_hook

* fixes

* working unified skills API! yeet

* fix mypy linting

* LiteLLM_SkillsTable

* llm-sandbox==0.3.31

* fix
2025-12-19 18:55:59 +05:30
Sameer Kankute a0538e3d54 Fix: properties: should be non-empty for OBJECT type 2025-12-19 14:28:40 +05:30
YutaSaitoandGitHub 3c380086b6 Merge pull request #18234 from BerriAI/litellm_fix_not_working_failure_logging
fix: not working log_failure_event in langfuse
2025-12-19 17:32:05 +09:00
Sameer KankuteandGitHub 84e4fc3fab Merge pull request #18226 from Chesars/fix/responses-api-tool-calls-transformation
fix(responses-api): fix tool calls transformation in completion bridge
2025-12-19 13:41:55 +05:30
Sameer Kankute 7d0f41f437 Add cost tracking for responses api in background mode 2025-12-19 13:35:48 +05:30
Yuta Saito 20bbfdd7cb fix: not working log_failure_event in langfuse 2025-12-19 16:54:57 +09:00
Sameer KankuteandGitHub d1d008fb7e Merge pull request #18194 from BerriAI/litellm_fix_cli_bugs
Fix: Claude code responses api bridge errors
2025-12-19 08:38:55 +05:30
Sameer KankuteandGitHub 1fd4f1ba52 Merge pull request #18109 from BerriAI/litellm_fix_custom_gaurdrail_fix
Fix guardrails for passthrough endpoint
2025-12-19 08:36:58 +05:30
Chesars bd36b1261f test: add tests for tool calls transformation fixes
- test_tool_message_output_is_string_not_list: verifies function_call_output.output is a string
- test_multiple_tool_calls_in_single_choice: verifies multiple tool calls are grouped in one choice
2025-12-18 22:01:29 -03:00
yuneng-jiang 085d07db46 Fixing tests 2025-12-18 16:12:06 -08:00
Alexsander HamirandGitHub 0c48826cdc Revert "[Fix] CI/CD - local_testing & mapped tests (#18222)" (#18223)
This reverts commit dc7f500c47.
2025-12-18 14:46:09 -08:00
Alexsander HamirandGitHub dc7f500c47 [Fix] CI/CD - local_testing & mapped tests (#18222) 2025-12-18 14:34:48 -08:00
yuneng-jiang 41732696c6 replicate delete checks for regenerate 2025-12-18 13:25:11 -08:00
Alexsander HamirandGitHub 5230e97448 [Fix] CI/CD - Add missing documentation for ENVs & Clean Functionality (#18211) 2025-12-18 13:16:15 -08:00
yuneng-jiang 0a1fb204cd Tests for /key/delete 2025-12-18 11:40:41 -08:00
Alexsander HamirandGitHub 2e7b554747 3[Fix] CI/CD - logging_testing (#18204)
* fix: enforce team member budget check in common_checks

- Add missing team member budget validation in common_checks() function
  - Checks team membership budget when team key is used
  - Raises BudgetExceededError when team member spend exceeds max_budget_in_team
  - Follows same pattern as other budget checks (team, user, end_user)
  - Uses cached get_team_membership() for performance

- Fix AttributeError in lowest_tpm_rpm.py
  - Add null check for model_info before accessing .get() method
  - Prevents 'NoneType' object has no attribute 'get' error

- Add unit tests for team member budget enforcement
  - Test budget exceeded scenario
  - Test within budget scenario
  - Test edge cases (no budget, no membership, personal keys)
  - Tests run without requiring proxy server

Fixes failing test: test_users_in_team_budget

* fix: mock get_async_httpx_client in test_langsmith_key_based_logging

- Mock get_async_httpx_client to return a mock AsyncHTTPHandler instance
- Fixes test failure where mock_post was never called
- LangsmithLogger creates its own httpx client instance via get_async_httpx_client,
  so we need to mock the factory function rather than the class method
- Use MagicMock for response.raise_for_status (sync method) instead of AsyncMock

* fix: resolve linting errors (PLR0915, F401)

- Remove unused imports (datetime, ServiceLoggerPayload) from arize_phoenix.py
- Extract health ping setup logic from RedisCache.__init__ to reduce statement count
- Extract team member budget check from common_checks to reduce statement count

* fix: resolve type errors in ChatCompletionToolCallChunk construction

- Cast type field to Literal['function'] to satisfy TypedDict requirements
- Ensure arguments field is explicitly str type to match TypedDict signature
- Fixes pyright errors for incompatible types in transformation.py
2025-12-18 10:52:24 -08:00
Ishaan JaffandGitHub 5ea0854eda [Feat] Guardrails Load Balancing - Allow Platform admins to load balance between guardrails (#18181)
* add _aguardrail_helper for LB

* add _aguardrail_helper on router.py

* test_proxy_logging_pre_call_hook_load_balancing

* add _execute_guardrail_with_load_balancing

* add LB TEsting

* docs guard lb

* fix linting

* fix lint
2025-12-19 00:08:03 +05:30
Alexsander HamirandGitHub f353bb6dba [Fix] CI/CD - litellm_mapped_tests_llms | litellm_mapped_tests_core | caching_unit_tests (#18197) 2025-12-18 08:49:23 -08:00
Alexsander HamirandGitHub 28821427ce [Fix] CI/CD #1 - mypy | check_code_and_doc_quality | guardrails_testing (#18195) 2025-12-18 06:31:01 -08:00
c94f61b1da Feature/lakera monitor mode (#18084)
* Add monitor mode support to Lakera guardrail

- Add on_flagged parameter to LakeraV2GuardrailConfigModel (default: 'block')
- Support 'monitor' mode that logs violations without blocking requests
- Support 'block' mode (default) that raises HTTPException on violations
- Update async_pre_call_hook and async_moderation_hook to check on_flagged
- Update guardrail initializer to pass on_flagged from config
- Add documentation with monitor mode examples

This allows users to tune Lakera security policies by monitoring violations
without blocking legitimate requests, similar to Pillar's on_flagged_action.

* Add tests for Lakera guardrail monitor mode

- Test monitor mode allows flagged content through (pre_call hook)
- Test block mode raises HTTPException for violations (pre_call hook)
- Test monitor mode works with during_call (moderation_hook)

These tests verify the on_flagged parameter functionality for both
monitor and block modes across different guardrail hooks.

---------

Co-authored-by: Steve <steve.giguere@lakera.ai>
2025-12-18 19:57:43 +05:30
Sameer Kankute dafd123756 Fix : tool calling with response api bridge 2025-12-18 19:54:15 +05:30
Krish DholakiaandGitHub 365762596b Guardrails - LiteLLM Content Filter - add support for running content filters on images (#18044)
* feat(litellm_content_filter.py): add support for content filtering categories

make it easy for proxy admin to prevent messages about violence, self harm or illegal weapons going through litellm

* feat: initial commit adding bias detection

allows admin to block inappropriate content about sexual orientation, etc.

* refactor: simplify content_filter.py

use a more exhaustive set of keywords, instead of guessing at potential phrases user can use

* feat(content_filter.py): add new denied topics for in-built content filter guardrails

allow user to automatically block content relating to certain categories from being sent to the LLML

* refactor(content-filter): document new params to litellm content filter

* feat(ui/): litellm content filter - select content categories on ui

* docs: update documentation

* docs(litellm_content_filter.md): document new content filters

* feat: initial commit adding support for inappropriate images via litellm content filter

* feat(content_filter.py): support blocking images containing blocked content

prevent images which contain disallowed content from being sent to the llm api

* docs(litellm_content_filter.md): document new image capabilities of litellm_content_filter

* fix: fix expected error code
2025-12-18 16:46:14 +05:30
YutaSaitoandGitHub 630f3d828e Merge pull request #18161 from BerriAI/litellm_fix_mcp_list_tool_not_working_without_db
Litellm fix mcp list tool not working without db
2025-12-18 18:27:19 +09:00
Ishaan JaffandGitHub 274d996a87 [Feat] New Search API Provider - LinkUp Search (#18174)
* add linkup search provider

* add Linkup Search docs

* add get_provider_search_config

* get_provider_search_config

* add linkup/search provider

* fix mypy linting
2025-12-18 14:27:36 +05:30
Ishaan JaffandGitHub 17403967ab [Bug fix] Vertex Multimodal embeddings - Support text + base64 image combinations (#18172)
* TestVertexMultimodalEmbedding

* fix _try_merge_text_with_media

* ruff fix
2025-12-18 13:22:43 +05:30
yuneng-jiang b0d371d864 delete route for cloudzero 2025-12-17 22:12:31 -08:00
yuneng-jiang 8ea7688d35 Adding tests 2025-12-17 21:59:28 -08:00
Lucas SugiandGitHub 9f88d61d10 fix: Change extra_headers to additional_headers (#17950) 2025-12-18 08:57:20 +05:30
yuneng-jiangandGitHub 7b2f33b9b4 Merge pull request #17559 from BerriAI/litellm_new_user_collision_handling
[Fix] New user route user_id collision handling
2025-12-17 19:19:41 -08:00
yuneng-jiangandGitHub 1db7492639 Merge pull request #18159 from BerriAI/litellm_login_500_fix
[Fix] Login Page Failed To Parse JSON Error
2025-12-17 19:19:27 -08:00
yuneng-jiangandGitHub 866d1eded5 Merge pull request #17995 from BerriAI/litellm_email_budget_alerts_2
[Feature] Email Budget Alerts
2025-12-17 19:16:17 -08:00
Yuta Saito 847bbd4fda fix: prefer _get_key_object_permission for key lookups and remove redundant checks 2025-12-18 09:50:56 +09:00
yuneng-jiang dd182a2ed0 Adding tests 2025-12-17 16:28:15 -08:00
yuneng-jiang f4017a1986 Tests 2025-12-17 16:07:01 -08:00