litellm/tests/test_litellm/proxy
Krish Dholakia c42740a4b9
Simplify experimental multi-instance rate limiter - more accurate (#11424)
* refactor: comment out circuit breaker

causes incorrect rate limiting in high traffic

* fix(base_routing_strategy.py): don't reset value if redis val is lower than current in-memory value

Fixes issue where redis might be trailing in-memory value

* fix(parallel_request_limiter_v2.py): if in-memory higher than redis, don't reset value; add previous slot keys to redis increment to correctly 'get' them

* fix(parallel_request_limiter_v3.py): v3 implementation of parallel request limiter

does not use background redis syncing - increments redis in call

 simplify rate limiting logic, to improve accuracy

* fix: fix ruff errors

* fix(parallel_request_limiter_v3.py): don't decrement limit on post call success - causes double decrements

* fix(parallel_request_limiter_v3.py): working accurate multi-instance logic

ensured just 100 requests allowed on 100 users, 10 ramp up, 100 rpm limit key, 2 instances

* fix(parallel_request_limiter_v3.py): working accurate rate limiting with time window resets

allows rate limiting to work across multiple windows

* test: add unit tests for v3 rate limiter

* fix(parallel_request_limiter_v3.py): return window value into in-memory cache

allows in-memory cache checks to be used correctly

* refactor(parallel_request_limiter_v3.py): refactor rate limiting to work for multiple window/counter key pairs

enables using for user/team/model rate limiting

* feat(parallel_request_limiter_v3.py): working rate limiting, across key/user/team/end-user

* fix(parallel_request_limiter_v3.py): add model specific rate limiting

* fix(parallel_request_limiter_v3.py): ignore if no rate limits set

skip unecessary rate limit checks - if no limits set

* fix(parallel_request_limiter_v3.py): initial commit bringing token rate limits back

* fix(parallel_request_limiter_v3.py): increment by value in list + update assertions to handle tokens + max parallel requests

* test(parallel_request_limiter_v3.py): more testing

* fix(parallel_request_limiter.py): working in-memory cache limiter

* fix(redis_cache.py): ignore linting error - use safe hasattr

* fix(parallel_request_limiter_v3.py): fix linting error

* refactor: remove redundant parallel_Request_limiter_v2.py

old / inaccurate implementation

* test: update tests

* style: cleanup

* test: update test

* docs(config_settings.md): document new env var

* test(test_base_routing_strategy.py): update test
2025-06-07 11:10:55 -07:00
..
anthropic_endpoints
auth [Feat] Enforce Vector Store Access Controls on LiteLLM Auth (#11281) 2025-05-30 22:20:11 -07:00
client
common_utils [Bug Fix] Create/Update team member api 500 errror (#10479) 2025-06-03 15:57:33 -07:00
db build(VLLM-Passthrough-with-loadbalancing-support-(enables-using-model-list-for-VLLM-/classify-endpoint)): Closes #11205 2025-05-31 09:00:04 -07:00
experimental/mcp_server
guardrails build(VLLM-Passthrough-with-loadbalancing-support-(enables-using-model-list-for-VLLM-/classify-endpoint)): Closes #11205 2025-05-31 09:00:04 -07:00
health_endpoints
hooks Simplify experimental multi-instance rate limiter - more accurate (#11424) 2025-06-07 11:10:55 -07:00
image_endpoints Feat: add add azure endpoint for image endpoints (#11482) 2025-06-06 10:38:37 -07:00
management_endpoints UI / SSO - Update proxy admin id role in DB + Handle SSO redirects with custom root path (#11384) 2025-06-03 21:16:55 -07:00
middleware
openai_files_endpoint
pass_through_endpoints Fix: Respect user_header_name property for budget selection and user identification (#11419) 2025-06-06 14:21:02 -07:00
spend_tracking
test_configs
types_utils
ui_crud_endpoints Refactor settings response models in proxy_setting_endpoints.py 2025-06-04 15:08:05 -06:00
test_caching_routes.py
test_common_request_processing.py [Feat] DD Trace - Add instrumentation for streaming chunks (#11338) 2025-06-02 16:48:39 -07:00
test_custom_proxy.py Custom Root Path Improvements: don't require reserving /litellm route (#11460) 2025-06-05 16:36:47 -07:00
test_litellm_pre_call_utils.py
test_proxy_cli.py Revert "Enhance proxy CLI with Rich formatting and improved user experience (#11420)" 2025-06-06 17:55:45 -07:00
test_proxy_server.py
test_proxy_types.py Litellm dev 06 06 2025 p1 (#11496) 2025-06-07 09:12:16 -07:00
test_proxy_utils.py UI / SSO - Update proxy admin id role in DB + Handle SSO redirects with custom root path (#11384) 2025-06-03 21:16:55 -07:00
test_route_llm_request.py
test_spend_log_cleanup.py [Feat] Make batch size for maximum retention in spend logs a controllable parameter (#11459) 2025-06-05 17:11:51 -07:00
test_team_member_update.py