Commit Graph

22117 Commits

Author SHA1 Message Date
Martin Liu d4eec9558b Fix proxy_cli.py: avoid overriding DATABASE_URL when it’s already provided. (#11076) 2025-05-22 22:40:21 -07:00
Krish Dholakia 64f325b92e adds tzdata (#10796) (#11052)
With tzdata installed, the environment variable `TZ` will be respected by Python's datetime module. This means that users can specify the timezone they want LiteLLM to use.

Co-authored-by: Simon Stone <sipreuss@gmail.com>
2025-05-22 22:36:19 -07:00
Ishaan Jaff 329e69f610 Update feature_request.yml (#11078) 2025-05-22 21:42:12 -07:00
Ishaan Jaff ae33113908 Update feature_request.yml 2025-05-22 21:39:13 -07:00
Ishaan Jaff a7a5b22393 [Feat] Add Azure AD certificate-based authentication (#11069)
* feat: add cert based auth for Azure get_azure_ad_token_provider

* test: tests azure cert auth

* fix update poetry

* fix: fix linting
2025-05-22 18:05:28 -07:00
Ishaan Jaff c8a0088970 [Fix] Reliability Fix - Removing code that was creating threads on errors (#11066)
* fix: only init langfuse if active

* fix: only init langfuse if active

* fix: add initialized_langfuse_clients count

* fix: add MAX_LANGFUSE_INITIALIZED_CLIENTS

* fix: use safe init langfuse

* test: init langfuse clients

* test: test_langfuse_not_initialized_returns_none_early

* docs MAX_LANGFUSE_INITIALIZED_CLIENTS

* fix: use correct langfuse callback

* fix: code qa
2025-05-22 18:04:15 -07:00
Ishaan Jaff 5c90e51ad4 (build) fix context window for claude 4 model family 2025-05-22 17:55:29 -07:00
Krish Dholakia 70f32154c5 Litellm managed file updates combined (#11040)
* Add LiteLLM Managed file support for `retrieve`, `list` and `cancel` finetuning jobs (#11033)

* feat: initial commit adding managed file support to fine tuning endpoints

* feat(fine_tuning/endpoints.py): working call to openai finetuning route

Uses litellm managed files for finetuning api support

* feat(fine-tuning/main.py): refactor to use LiteLLMFineTuningJob pydantic object

includes 'hidden_params'

* fix: initial commit adding unified finetuning id support

return a unified finetuning id we can use to understand which deployment to route the ft request to

* test: fix test

* feat(managed_files.py): return unified finetuning job id on create finetuning job

enables retrieve, delete to work with litellm managed files

* feat(managed_files.py): support managed files for cancel ft job endpoint

* feat(managed_files.py): support managed files for cancel ft job endpoint

* feat(fine_tuning_endpoints/endpoints.py): add managed files support to list finetuning jobs

* feat(finetuning_endpoints/main): add managed files support for retrieving ft job

Makes it easier to control permissions for ft endpoint

* LiteLLM Managed Files - Enforce validation check if user can access finetuning job (#11034)

* feat: initial commit adding managed file support to fine tuning endpoints

* feat(fine_tuning/endpoints.py): working call to openai finetuning route

Uses litellm managed files for finetuning api support

* feat(fine-tuning/main.py): refactor to use LiteLLMFineTuningJob pydantic object

includes 'hidden_params'

* fix: initial commit adding unified finetuning id support

return a unified finetuning id we can use to understand which deployment to route the ft request to

* test: fix test

* feat(managed_files.py): return unified finetuning job id on create finetuning job

enables retrieve, delete to work with litellm managed files

* feat(managed_files.py): support managed files for cancel ft job endpoint

* feat(managed_files.py): support managed files for cancel ft job endpoint

* feat(fine_tuning_endpoints/endpoints.py): add managed files support to list finetuning jobs

* feat(finetuning_endpoints/main): add managed files support for retrieving ft job

Makes it easier to control permissions for ft endpoint

* feat(managed_files.py): store create fine-tune / batch response object in db

storing this allows us to filter files returned on list based on what user created

* feat(managed_files.py): Ensures users can't retrieve / modify each others jobs

* fix: fix check

* fix: fix ruff check errors

* test: update to handle testing

* fix: suppress linting warning - openai 'seed' is none on azure

* test: update tests

* test: update test
2025-05-22 17:20:41 -07:00
Krrish Dholakia 469d395177 test: update groq test - change on their end v1.70.4-nightly 2025-05-22 15:02:01 -07:00
Krrish Dholakia 889f0093e0 fix: fix checking optional params from logging object for function call 2025-05-22 14:46:42 -07:00
Ishaan Jaff 754a94db97 Revert "Revert "Support passing prompt_label to langfuse (#11018)""
This reverts commit 0be7e7d088.
2025-05-22 14:14:39 -07:00
Ishaan Jaff 0be7e7d088 Revert "Support passing prompt_label to langfuse (#11018)"
This reverts commit 2b50b43ae2.
2025-05-22 14:11:19 -07:00
Ishaan Jaff 89daa1dbad docs add claude-4 models 2025-05-22 13:41:09 -07:00
Ishaan Jaff 197c608078 [Feat] Add claude-4 model family (#11060)
* add new claude-sonnet-4-2025051

* feat: add bedrock claude-4 models

* add bedrock claude-4 models

* add vertx_ai/claude-sonnet-4

* fix provider=bedrock_converse

* feat: ensure thinking is supported for claude-4 model family
v1.70.2.dev5
2025-05-22 13:33:54 -07:00
Ishaan Jaff 2c90ca0189 docs fix example 2025-05-22 09:33:22 -07:00
Ishaan Jaff d95c3a16f3 docs fix ad hoc recognizer 2025-05-22 08:55:07 -07:00
Ishaan Jaff d595c4ef2d bump: version 1.70.3 → 1.70.4 2025-05-22 07:32:35 -07:00
tanjiro 1c652b67b6 Model filter on logs (#11048)
* add model filter

* remove calling all models
2025-05-22 07:31:43 -07:00
Ishaan Jaff dd4a65b83a Feat: add MCP to Responses API and bump openai python sdk (#11029)
* feat: add MCP to responses API

* feat: bump openai version to 1.75.0

* docs MCP + responses API

* fixes: type checking

* fixes: type checking

* build: use latest openai 1.81.0

* fix: linting error

* fix: linting error

* fix: test

* fix: linting errors

* fix: test

* fix: test

* fix: linting

* Revert "fix: linting"

This reverts commit ebb19ff8cb1f8fcc3e224390e351676daccb33de.

* fix: linting
2025-05-22 07:24:10 -07:00
tanjiro bfb04d3e75 added cloding tags for </TabGroup> </Col> </Grid> + indentation changes (#11046) 2025-05-22 07:23:26 -07:00
Krish Dholakia 2b50b43ae2 Support passing prompt_label to langfuse (#11018)
* fix: add prompt label support to prompt management hook

* feat: support 'prompt_label' parameter for langfuse prompt management

Closes https://github.com/BerriAI/litellm/discussions/9003#discussioncomment-13221555

* fix(litellm_logging.py): deep copy optional params to avoid mutation while logging

* fix(log-consistent-optional-param-values-across-providers): ensures params can be used for finetuning from providers

* fix: fix linting error

* test: update test

* test: update langfuse tests

* fix(litellm_logging.py): avoid deepcopying optional params

might contain thread object
2025-05-21 22:27:36 -07:00
Krrish Dholakia cd496fee2e fix: fix linting error 2025-05-21 22:04:41 -07:00
jmorenoc-o 1cd2595006 Fixes the InvitationLink Prisma find_many query (#11031)
Related: https://github.com/BerriAI/litellm/commit/3b6c6d05dd8f8bcd83f776cdc1c8fc64d3d85d13#r157675103

We should use "order", according to the prisma python docs https://prisma-client-py.readthedocs.io/en/stable/reference/limitations/#order-argument 

Also we are using "order" in other files of the project: 
https://github.com/search?q=repo%3ABerriAI%2Flitellm%20order%3D%7B&type=code
2025-05-21 21:42:57 -07:00
Krish Dholakia 58f958f30a Litellm dev 05 21 2025 p2 (#11039)
* feat: initial commit adding managed file support to fine tuning endpoints

* feat(fine_tuning/endpoints.py): working call to openai finetuning route

Uses litellm managed files for finetuning api support

* feat(fine-tuning/main.py): refactor to use LiteLLMFineTuningJob pydantic object

includes 'hidden_params'

* fix: initial commit adding unified finetuning id support

return a unified finetuning id we can use to understand which deployment to route the ft request to

* test: fix test

* feat(managed_files.py): return unified finetuning job id on create finetuning job

enables retrieve, delete to work with litellm managed files

* test: update test

* fix: fix linting error

* fix: fix ruff linting error

* test: fix check
2025-05-21 21:40:53 -07:00
Krrish Dholakia 546a508c8c test: mark flaky test 2025-05-21 21:36:46 -07:00
bepotp e487f1e17d feat: add Databricks Llama 4 Maverick model cost (#11008)
Co-authored-by: Tommy PLANEL <tommy.planel2@ubisoft.com>
2025-05-21 20:59:18 -07:00
Jay Gowdy 85d577c8e6 Fix: Handle dict objects in Anthropic streaming response (#11032)
* fix: handle dict objects in Anthropic streaming response

Fix issue where dictionary objects in Anthropic streaming responses
were not properly converted to SSE format strings before being yielded,
causing AttributeError: 'dict' object has no attribute 'encode'

* fix: refactor Anthropic streaming response handling

- Added STREAM_SSE_DATA_PREFIX constant in constants.py
- Created return_anthropic_chunk helper function for better maintainability
- Using safe_dumps from safe_json_dumps.py for improved JSON serialization
- Added unit test for dictionary object handling in streaming response

* fix: correct patch path in anthropic_endpoints test
2025-05-21 20:58:11 -07:00
tanjiro 0cde73ffb7 Spend rounded to 4 for Organizations and Users page (#11023)
* spend rounded to 4

* fixed for organization and users table
2025-05-21 20:41:54 -07:00
Jugal D. Bhatt 03cda24681 Verbose error on admin add (#10978) 2025-05-21 19:30:18 -07:00
Tyler Wagner b6508731dc fix(ui): call tool when no arguments needed (#11012)
Co-authored-by: wagnerjt <wagnerjt@github.com>
2025-05-21 14:06:22 -07:00
fzowl 73727abd84 Updating the available VoyageAI models in the docs (#11003)
* Refresh VoyageAI models and prices and context

* Refresh VoyageAI models and prices and context

* Refresh VoyageAI models and prices and context

* Updating the available VoyageAI models in the docs

* Updating the available VoyageAI models in the docs
2025-05-21 14:04:43 -07:00
Ishaan Jaff e5d278c454 [Feat] Add Image Edits Support to LiteLLM (#11020)
* refactor: use 1 file for image methods

* refactor: use 1 file for image methods

* feat: add stubs for image edits

* fix: types for image edits

* feat: add async image edits

* feat: add base config for image edits

* feat: add basic structure for image edits

* feat: add ImageEditRequestUtils

* feat: complete instrumentation of image edits

* tes: test_openai_image_edit_litellm_sdk

* tets: test_openai_image_edit_litellm_sdk

* feat: get_provider_image_edit_config

* feat: add OpenAIImageEditConfig

* feat: working image edits

* fixes: working image edits

* fix: code qa

* fix: using image edits

* fix: linting errors
2025-05-21 14:03:09 -07:00
Ishaan Jaff 089e13b452 feat: add xai/grok-3 pricing (#11028) 2025-05-21 14:00:55 -07:00
tanjiro 9b0e1bb16c put organization and team buttons at the top (#10948) 2025-05-21 12:59:14 -07:00
Krrish Dholakia e156636b8e fix(streaming_handler.py): fix check when response id already set 2025-05-21 12:30:28 -07:00
Krrish Dholakia 647c473971 fix: fix linting error 2025-05-21 12:22:40 -07:00
tanjiro de5ec3fd9a spend rounded to 4 (#11013) 2025-05-21 09:55:44 -07:00
Matthias Dittrich 3322b282f8 Ollama wildcard support (#10982)
* Add Ollama wildcard support

* Add Ollama-chatas well.

* Fix missing methods.

* Improve logs a bit.

* Add tests

* Add tests
2025-05-21 08:47:01 -07:00
Krrish Dholakia 2ced944bbe fix(internal_user_endpoints.py): fix check 2025-05-21 08:37:31 -07:00
Søren Mathiasen aa11ea3a9f support vertex_ai global endpoints for chat (#10658) 2025-05-21 07:58:36 -07:00
daarko10 00a789440d Improve response_id propagation logic and add tests for valid/empty ID handling in streaming. (#11006) 2025-05-21 07:27:17 -07:00
Krrish Dholakia 95fd281a7d bump: version 1.70.2 → 1.70.3 2025-05-20 23:10:44 -07:00
Krish Dholakia 4bd64c872a fix(internal_user_endpoints.py): allow resetting spend/max budget on … (#10993)
* fix(internal_user_endpoints.py): allow resetting spend/max budget on user update

Fixes https://github.com/BerriAI/litellm/issues/10495

* fix(internal_user_endpoints.py): correctly return set spend for user on /user/new

* fix(auth_checks.py): check redis for key object before checking in-memory

allows for quicker updates

* feat(internal_user_endpoints.py): update cache object when user is updated + check redis on user values being updated

* fix(auth_checks.py): use redis cache when user updated

* fix: set default value of 'expires' to None
2025-05-20 23:08:26 -07:00
Ishaan Jaff bf97d994b5 fix: default role for JWT authentication (#10995)
* fix: get_user_object

* test: test_default_internal_user_params_with_get_user_object

* Update litellm/proxy/auth/auth_checks.py

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-05-20 22:58:41 -07:00
Ishaan Jaff 14321a2708 [Feat] Prometheus - Track route on proxy_* metrics (#10992)
* fix: trace route on prometheus metrics

* fix: show route on prometheus metrics for total fails

* test: trace route on metrics

* fix: tests for route in prom metrics

* test: fix test metrics

* test: fix test_proxy_failure_metrics
2025-05-20 22:55:55 -07:00
Krish Dholakia aeb9ea0a7f Litellm add new gemini models (#10998)
* build(model_prices_and_context_window.json): add new gemini image gen model

* build(model_prices_and_context_window.json): add more gemini models
2025-05-20 22:54:15 -07:00
Krish Dholakia f0c8254665 Add new gemini preview models + Fix cohere v2 embedding 'embedding_types' param mapping (#10991)
* build(model_prices_and_context_window.json): add new gemini preview models

Fixes https://github.com/BerriAI/litellm/issues/10985

* fix(cohere/embed): Fix encoding format <-> embedding types param mapping

Fixes https://github.com/BerriAI/litellm/issues/10939

* fix(aim.py): fix syntax error
2025-05-20 22:39:31 -07:00
Jugal D. Bhatt 195aec5551 added support to credential delete to support slashes in the curl (#10987)
* added support to credential delete to support slashes in the curl

* add support for get and update too
2025-05-20 19:08:48 -07:00
Ishaan Jaff 3a6802fef1 [Feat] - Add Support for Showing Passthrough endpoint Error Logs on LiteLLM UI (#10990)
* fix: add error logging for passthrough endpoints

* feat: add error logging for passthrough endpoints

* fix: post_call_failure_hook track errors on pt

* fix: use constant for MAXIMUM_TRACEBACK_LINES_TO_LOG

* docs MAXIMUM_TRACEBACK_LINES_TO_LOG

* test: ensure failure callback triggered

* fix: move _init_kwargs_for_pass_through_endpoint
2025-05-20 18:29:39 -07:00
slytechnical 98e9db340c [Feature] Add supports_computer_use to the model list (#10881)
* Add support for supports_computer_use in model info

* Corrected list of supports_computer_use models

* Further fix computer use compatible claude models, fix existing test that predated supports_computer_use in the model list

* Move computer use test case into existing test_utils file

* Moved tests in to test_utils.py
2025-05-20 17:07:43 -07:00