mirror of
https://github.com/BerriAI/litellm.git
synced 2026-09-08 22:21:35 +00:00
fix(router): skip Claude Code session binding without pre-routing strategies
This commit is contained in:
parent
01b20b78c0
commit
0f6d983c70
2 changed files with 22 additions and 0 deletions
|
|
@ -12636,6 +12636,8 @@ class Router:
|
|||
registered_model_name: str,
|
||||
request_kwargs: Mapping[str, object],
|
||||
) -> str:
|
||||
if not any((self.auto_routers, self.complexity_routers, self.adaptive_routers, self.quality_routers)):
|
||||
return registered_model_name
|
||||
cache_key: Final = self._claude_code_session_router_cache_key(request_kwargs)
|
||||
if cache_key is None or not isinstance(request_kwargs, dict):
|
||||
return registered_model_name
|
||||
|
|
|
|||
|
|
@ -8499,6 +8499,26 @@ class TestClaudeCodeSubagentSessionRouterBinding:
|
|||
assert response is None
|
||||
redis_cache.async_delete_cache.assert_awaited_once()
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_no_pre_routing_strategies_means_no_session_cache_traffic(self):
|
||||
from litellm.caching.caching import RedisCache
|
||||
|
||||
router = self._router()
|
||||
router.complexity_routers = {}
|
||||
redis_cache = MagicMock(spec=RedisCache)
|
||||
redis_cache.async_get_cache = AsyncMock(return_value=None)
|
||||
redis_cache.async_set_cache = AsyncMock()
|
||||
redis_cache.async_delete_cache = AsyncMock()
|
||||
router._update_redis_cache(cache=redis_cache)
|
||||
|
||||
for request_kwargs in (self._request_kwargs(), self._request_kwargs(agent_id="agent-1234")):
|
||||
response = await router.async_pre_routing_hook(model="expensive-model", request_kwargs=request_kwargs)
|
||||
assert response is None
|
||||
|
||||
redis_cache.async_get_cache.assert_not_awaited()
|
||||
redis_cache.async_set_cache.assert_not_awaited()
|
||||
redis_cache.async_delete_cache.assert_not_awaited()
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_session_bindings_do_not_evict_router_rate_limit_state(self):
|
||||
router = self._router()
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue