跳至主要內容

模型存取運作方式

概念

在 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 'http://localhost: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?"}]}'

存取控制

當您將存取權授予金鑰/使用者/團隊時,您其實是在授予他們對「model group」的存取權。

範例:

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

負載平衡

您可以將多個模型部署加入單一「model group」。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

如此一來,您可以在多個模型部署之間最大化您的速率限制。

備援

您可以在不同 model group 之間進行備援。如果一個「model group」中的所有「model deployments」都無法使用(例如回傳 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"]}]

備援會依序進行,因此清單中的第一個 model group 會先被嘗試。如果失敗,就會嘗試下一個 model group。

進階:Model Access Groups

針對進階使用情境,請使用 Model Access Groups 動態分組多個模型,並在不重新啟動 proxy 的情況下管理存取權。

🚅
LiteLLM Enterprise
為正式環境打造的 SSO/SAML、稽核記錄、支出追蹤、多團隊管理與防護欄。
深入瞭解 →