BerriAI/litellm · error · HTTPException
Redis cache not configured.
Error message
Redis cache not configured.
What it means
Polling guard on response deletion: the response_id identifies a polling response, but the proxy has no redis_usage_cache configured. Deleting a polled async response requires removing its cached state, so the operation is refused with a 500 configuration error.
Source
Thrown at litellm/proxy/response_api_endpoints/endpoints.py:820
llm_router,
proxy_config,
proxy_logging_obj,
redis_usage_cache,
select_data_generator,
user_api_base,
user_max_tokens,
user_model,
user_request_timeout,
user_temperature,
version,
)
from litellm.proxy.response_polling.polling_handler import ResponsePollingHandler
# Check if this is a polling ID
if ResponsePollingHandler.is_polling_id(response_id):
# Handle polling response deletion
if not redis_usage_cache:
raise HTTPException(status_code=500, detail="Redis cache not configured.")
polling_handler: Final = ResponsePollingHandler(redis_cache=redis_usage_cache)
# Get state to verify access
state: Final = await polling_handler.get_state(response_id)
if not state:
raise HTTPException(status_code=404, detail=f"Polling response {response_id} not found")
# Delete from cache
success: Final = await polling_handler.delete_polling(response_id)
if success:
return DeleteResponseResult(id=response_id, object="response", deleted=True)
else:
raise HTTPException(status_code=500, detail="Failed to delete polling response")
# Normal provider response flowView on GitHub (pinned to 77b7c6c40c)
Solutions
- Configure Redis in the proxy config; this endpoint requires the Redis cache backend.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at litellm/proxy/response_api_endpoints/endpoints.py:820 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of BerriAI/litellm@77b7c6c40c (2026-08-18).
Data as JSON: /api/errors/c10b65db9aa82861.
Report an issue: GitHub.