路由器架构(回退/重试)
高层架构
请求流程
用户发送请求:流程始于用户向 LiteLLM 路由器端点发送请求。所有统一端点(如
.completion
、.embeddings
等)均受 LiteLLM 路由器支持。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
的 LLM API 部署,它们属于同一个 model_group
,并可以在其间进行负载均衡。