* feat(utils.py): support global flag for 'check_provider_endpoints'
enables setting this for `/models` on proxy
* feat(utils.py): add caching to 'get_valid_models'
Prevents checking endpoint repeatedly
* fix(utils.py): ensure mutations don't impact cached results
* test(test_utils.py): add unit test to confirm cache invalidation logic
* feat(utils.py): get_valid_models - support passing litellm params dynamically
Allows for checking endpoints based on received credentials
* test: update test
* feat(model_checks.py): pass router credentials to get_valid_models - ensures it checks correct credentials
* refactor(utils.py): refactor for simpler functions
* fix: fix linting errors
* fix(utils.py): fix test
* fix(utils.py): set valid providers to custom_llm_provider, if given
* test: update test
* fix: fix ruff check error
* feat(llm_passthrough_endpoints.py): support mistral passthrough
Closes https://github.com/BerriAI/litellm/issues/9051
* feat(llm_passthrough_endpoints.py): initial commit for adding vllm passthrough route
* feat(vllm/common_utils.py): add new vllm model info route
make it possible to use vllm passthrough route via factory function
* fix(llm_passthrough_endpoints.py): add all methods to vllm passthrough route
* fix: fix linting error
* fix: fix linting error
* fix: fix ruff check
* fix(proxy/_types.py): add new passthrough routes
* docs(config_settings.md): add mistral env vars to docs
* fix(azure/common_utils.py): check for azure tenant id, client id, client secret in env var
Fixes https://github.com/BerriAI/litellm/issues/9598#issuecomment-2801966027
* fix(azure/gpt_transformation.py): fix passing response_format to azure when api year = 2025
Fixes https://github.com/BerriAI/litellm/issues/9703
* test: monkeypatch azure api version in test
* test: update testing
* test: fix test
* test: update test
* docs(config_settings.md): document env vars
* build(model_prices_and_context_window.json): add gpt-4.1 pricing
* build(model_prices_and_context_window.json): add gpt-4.1-mini and gpt-4.1-nano model support
* fix typo on UI
* fix for edit user tab
* fix for user spend
* add /team/permissions_list to management routes
* fix auth check for team member permissions
* fix team endpoints test
* fix(model_info_view.tsx): cleanup text
* fix(key_management_endpoints.py): fix filtering litellm-dashboard keys for internal users
* fix(proxy_track_cost_callback.py): prevent flooding spend logs with admin endpoint errors
* test: add unit testing for logic
* test(test_auth_exception_handler.py): add more unit testing
* fix(router.py): correctly handle retrieving model info on get_model_group_info
fixes issue where model hub was showing None prices
* fix: fix linting errors
* add categories for spend tracking improvements
* xai reasoning usage
* docs tag management
* docs tag based routing
* [Beta] Routing based
* docs tag based routing
* docs tag routing
* docs enterprise web search
* only load member permissions for non-admins
* run member permission checks on update + regenerate endpoints
* run check for /key/generate
* working test_default_member_permissions
* passing test with permissions on update delete endpoints
* test_create_permissions
* _team_key_generation_check
* fix TeamBase
* fix team endpoints
* fix api docs check
* fix(litellm_proxy_extras): add baselining db script
Fixes https://github.com/BerriAI/litellm/issues/9885
* fix(prisma_client.py): fix ruff errors
* ci(config.yml): add publish_proxy_extras step
* fix(config.yml): compare contents between versions to check for changes
* fix(config.yml): fix check
* fix: install toml
* fix: update check
* fix: ensure versions in sync
* fix: fix version compare
* fix: correct the cost for 'gemini/gemini-2.5-pro-preview-03-25' (#9896)
* fix: Typo in the cost 'gemini/gemini-2.5-pro-preview-03-25', closes#9854
* chore: update in backup file as well
* Litellm add managed files db (#9930)
* fix(openai.py): ensure openai file object shows up on logs
* fix(managed_files.py): return unified file id as b64 str
allows retrieve file id to work as expected
* fix(managed_files.py): apply decoded file id transformation
* fix: add unit test for file id + decode logic
* fix: initial commit for litellm_proxy support with CRUD Endpoints
* fix(managed_files.py): support retrieve file operation
* fix(managed_files.py): support for DELETE endpoint for files
* fix(managed_files.py): retrieve file content support
supports retrieve file content api from openai
* fix: fix linting error
* test: update tests
* fix: fix linting error
* feat(managed_files.py): support reading / writing files in DB
* feat(managed_files.py): support deleting file from DB on delete
* test: update testing
* fix(spend_tracking_utils.py): ensure each file create request is logged correctly
* fix(managed_files.py): fix storing / returning managed file object from cache
* fix(files/main.py): pass litellm params to azure route
* test: fix test
* build: add new prisma migration
* build: bump requirements
* test: add more testing
* refactor: cleanup post merge w/ main
* fix: fix code qa errors
* [DB / Infra] Add new column team_member_permissions (#9941)
* add team_member_permissions to team table
* add migration.sql file
* fix poetry lock
* fix prisma migrations
* fix poetry lock
* fix migration
* ui new build
* fix(factory.py): correct indentation for message index increment in ollama, This fixes bug #9822 (#9943)
* fix(factory.py): correct indentation for message index increment in ollama_pt function
* test: add unit tests for ollama_pt function handling various message types
* ci: update test
* fix: fix check
* ci: see what dir looks like
* ci: more checks
* ci: fix filepath
* ci: cleanup
* ci: fix ci
---------
Co-authored-by: Nilanjan De <nilanjan.de@gmail.com>
Co-authored-by: Ishaan Jaff <ishaanjaffer0324@gmail.com>
Co-authored-by: Dan Shaw <dan@danieljshaw.com>
* fix(factory.py): correct indentation for message index increment in ollama_pt function
* test: add unit tests for ollama_pt function handling various message types
* fix(openai.py): ensure openai file object shows up on logs
* fix(managed_files.py): return unified file id as b64 str
allows retrieve file id to work as expected
* fix(managed_files.py): apply decoded file id transformation
* fix: add unit test for file id + decode logic
* fix: initial commit for litellm_proxy support with CRUD Endpoints
* fix(managed_files.py): support retrieve file operation
* fix(managed_files.py): support for DELETE endpoint for files
* fix(managed_files.py): retrieve file content support
supports retrieve file content api from openai
* fix: fix linting error
* test: update tests
* fix: fix linting error
* feat(managed_files.py): support reading / writing files in DB
* feat(managed_files.py): support deleting file from DB on delete
* test: update testing
* fix(spend_tracking_utils.py): ensure each file create request is logged correctly
* fix(managed_files.py): fix storing / returning managed file object from cache
* fix(files/main.py): pass litellm params to azure route
* test: fix test
* build: add new prisma migration
* build: bump requirements
* test: add more testing
* refactor: cleanup post merge w/ main
* fix: fix code qa errors
* fix(openai.py): ensure openai file object shows up on logs
* fix(managed_files.py): return unified file id as b64 str
allows retrieve file id to work as expected
* fix(managed_files.py): apply decoded file id transformation
* fix: add unit test for file id + decode logic
* fix: initial commit for litellm_proxy support with CRUD Endpoints
* fix(managed_files.py): support retrieve file operation
* fix(managed_files.py): support for DELETE endpoint for files
* fix(managed_files.py): retrieve file content support
supports retrieve file content api from openai
* fix: fix linting error
* test: update tests
* fix: fix linting error
* fix(files/main.py): pass litellm params to azure route
* test: fix test