跳至主要内容

模型访问方式

概念

在 LiteLLM 中,接入的每个模型都是一个“模型部署”(model deployment)。

这些模型部署通过 config.yaml 中的 “model_name” 字段被分配到一个“模型组”(model group)。

示例

model_list:
- model_name: my-custom-model
litellm_params:
model: openai/gpt-4o
api_key: os.environ/OPENAI_API_KEY

在此处,我们为 gpt-4o 模型接入了一个模型部署,并将其分配给模型组 my-custom-model

客户端请求

以下是客户端请求的样子

curl --location 'https://:4000/chat/completions' \
-H 'Authorization: Bearer <your-api-key>' \
-H 'Content-Type: application/json' \
-d '{"model": "my-custom-model", "messages": [{"role": "user", "content": "Hello, how are you?"}]}'

访问控制

当你授予某个密钥/用户/团队权限时,实际上是授予了他们对某个“模型组”的访问权限。

示例

curl --location 'https://:4000/key/generate' \
--header 'Authorization: Bearer <your-master-key>' \
--header 'Content-Type: application/json' \
--data-raw '{"models": ["my-custom-model"]}'

负载均衡

你可以将多个模型部署添加到同一个“模型组”中。LiteLLM 将自动在组内的模型部署之间进行请求负载均衡。

示例

model_list:
- model_name: my-custom-model
litellm_params:
model: openai/gpt-4o
api_key: os.environ/OPENAI_API_KEY
- model_name: my-custom-model
litellm_params:
model: azure/gpt-4o
api_key: os.environ/AZURE_API_KEY
api_base: os.environ/AZURE_API_BASE
api_version: os.environ/AZURE_API_VERSION

通过这种方式,你可以最大限度地利用多个模型部署的速率限制。

回退机制 (Fallbacks)

你可以在不同的模型组之间进行回退(fallback)。如果“模型组”中的所有“模型部署”都已宕机(例如抛出 429 错误),这将非常有用。

示例

model_list:
- model_name: my-custom-model
litellm_params:
model: openai/gpt-4o-mini
api_key: os.environ/OPENAI_API_KEY
- model_name: my-other-model
litellm_params:
model: openai/gpt-4o
api_key: os.environ/OPENAI_API_KEY

litellm_settings:
fallbacks: [{"my-custom-model": ["my-other-model"]}]

回退按顺序执行,因此列表中的第一个模型组将首先被尝试。如果失败,则会尝试下一个模型组。

进阶:模型访问组

对于进阶使用场景,请使用 模型访问组 来动态组合多个模型,并在无需重启代理的情况下管理访问权限。

🚅
LiteLLM 企业版
SSO/SAML、审计日志、支出跟踪、多团队管理和护栏 —— 专为生产环境构建。
了解更多 →