路由架构(回退 / 重试)
高层架构
请求流程
-
用户发送请求:流程始于用户向 LiteLLM 路由器(Router)端点发送请求。LiteLLM 路由器支持所有统一端点(
.completion、.embeddings等)。 -
function_with_fallbacks:初始请求被发送至
function_with_fallbacks函数。该函数将初始请求包装在 try-except 块中,以处理任何异常——并在需要时执行回退。随后,该请求被发送至function_with_retries函数。 -
function_with_retries:
function_with_retries函数将请求包装在 try-except 块中,并将初始请求传递给底层的 litellm 统一函数(litellm.completion、litellm.embeddings等)以处理 LLM API 调用。function_with_retries负责处理所有异常,并在模型组中进行必要的重试(例如,如果请求失败,它将在该模型组内的可用模型上进行重试)。 -
litellm.completion:
litellm.completion函数是处理 LLM API 调用的基础函数。它由function_with_retries调用,用于向 LLM API 发起实际请求。
图例
model_group(模型组):一组共享相同 model_name、属于同一 model_group 且可以进行负载均衡的 LLM API 部署。