LiteLLM¶
LiteLLM 使用 OpenAI 格式呼叫所有 LLM API(例如 Bedrock、Huggingface、VertexAI、TogetherAI、Azure、OpenAI、Groq 等)
LiteLLM 管理
- 將輸入翻譯成提供商的
completion、embedding和image_generation端點 - 一致的輸出,文字響應始終可在
['choices'][0]['message']['content']中找到 - 跨多個部署(例如 Azure/OpenAI)的重試/回退邏輯 - Router
- 為每個專案、API 金鑰、模型設定預算和速率限制 LiteLLM Proxy Server (LLM Gateway)
LiteLLM 還支援 VLLM 上的所有模型。
先決條件¶
設定 vLLM 和 litellm 環境
部署¶
聊天補全¶
-
啟動支援聊天完成模型的 vLLM 伺服器,例如
-
使用 litellm 呼叫它
程式碼
import litellm
messages = [{"content": "Hello, how are you?", "role": "user"}]
# hosted_vllm is prefix key word and necessary
response = litellm.completion(
model="hosted_vllm/qwen/Qwen1.5-0.5B-Chat", # pass the vllm model name
messages=messages,
api_base="http://{your-vllm-server-host}:{your-vllm-server-port}/v1",
temperature=0.2,
max_tokens=80,
)
print(response)
嵌入¶
-
使用支援的嵌入模型啟動 vLLM 伺服器,例如
-
使用 litellm 呼叫它
from litellm import embedding
import os
os.environ["HOSTED_VLLM_API_BASE"] = "http://{your-vllm-server-host}:{your-vllm-server-port}/v1"
# hosted_vllm is prefix key word and necessary
# pass the vllm model name
embedding = embedding(model="hosted_vllm/BAAI/bge-base-en-v1.5", input=["Hello world"])
print(embedding)
有關詳細資訊,請參閱教程 LiteLLM 中使用 vLLM。