LiteLLM
BerriAI · 程式設計 · 其他
LiteLLM 是一套開源的 AI 閘道與 Python 函式庫,用單一 OpenAI 格式介面呼叫超過 100 種 LLM,並內建路由、花費追蹤與防護機制。

關於 LiteLLM
What Is LiteLLM
LiteLLM 是 BerriAI 推出的工具,讓開發者用單一介面呼叫 OpenAI、Anthropic、Gemini、Bedrock、Azure、Ollama 等數十家供應商的模型。你不必為每一家學一套 SDK、一套驗證方式和一種回應格式,只要寫一次呼叫,想換後端時改掉模型名稱就好。
它解決的是被單一供應商綁死的問題。把系統綁在單一平台上的團隊,往往在換模型時才發現,請求組裝、錯誤處理與串流邏輯得在整份程式碼裡重寫一遍。LiteLLM 在你的程式碼底下放一層轉譯,商業邏輯維持不變,底層模型則靠一份設定檔切換。
兩種用法幾乎涵蓋所有需求。Python SDK 以套件形式嵌進現有應用;閘道(代理伺服器)則以自架服務運作,替整個團隊集中管理虛擬金鑰、預算與日誌。方便的代價是閘道多了一份要維運的基礎設施,而開源版預期你自行架設與升級。
Getting Started
- 用
uv add litellm或pip install litellm安裝套件,接著把各供應商的 API 金鑰設成環境變數。 - 走 SDK 路線時,匯入
completion,用openai/gpt-4o或anthropic/claude-sonnet-4這類模型名稱呼叫,並傳入訊息列表。 - 走閘道路線時,執行
litellm --model gpt-4o或部署 Docker 映像,再把任何 OpenAI 用戶端指向本機的 base URL。 - 想在多個部署之間做重試與備援時,加上 Router 設定;若同時跑多個閘道執行個體,記得接上 Postgres 與 Redis。
- 透過管理後台或 callback 追蹤用量,並隨流量成長,依金鑰、使用者或團隊設定預算。
產品資訊
快速了解 LiteLLM 的定價、支援平台與效能。
適合對象
這項工具最適合的使用者、任務與情境。
使用者
- 後端工程師:當應用得從同一段程式碼呼叫多家模型供應商時特別有用,因為換模型變成改設定,而不是重寫程式。
- 平台與 ML 團隊:適合多個內部團隊共用模型存取權的情況,把金鑰、預算與用量報表集中在一處。
- 做實驗的產品經理:想在相同提示上比較不同模型的輸出時很方便,因為呼叫方式不變,只有模型名稱不同。
任務
- 統一模型存取:透過單一 OpenAI 格式端點,把請求送往 OpenAI、Anthropic、Bedrock 或本機的 Ollama 伺服器。
- 成本控管:依金鑰或專案設定預算與速率上限,並在後台看著花費累積。
- 容錯與負載平衡:把流量分散到同一模型的多個部署,並在某家供應商出錯時自動備援。
- 可觀測性:用一行 callback 把日誌與詞元用量送往 Langfuse、MLflow 或 Helicone 等工具。
情境
- 一開始只用一家供應商,現在想加入更便宜的模型,又不想動到商業邏輯的新創團隊。
- 自架閘道,讓模型流量與金鑰都留在自家基礎設施內的企業。
- 用一支腳本對五個不同模型測試同一段提示的原型開發時段。
主要功能
橫跨 100 多家供應商的統一 API
單一介面涵蓋 OpenAI、Anthropic、Gemini、Bedrock、Azure、Vertex AI、Ollama、vLLM 等眾多服務。所有回應都以 OpenAI 的 chat completions 格式回傳,因此讀取 choices[0].message.content 的程式碼在換供應商後照樣能跑。
可直接替換的 OpenAI 相容性
已經使用 OpenAI SDK 的專案,只要改掉 base URL 與金鑰,就能把用戶端指向 LiteLLM 閘道。請求端程式碼完全不動,這讓它成為替上線中的應用加入多模型支援的低風險做法。
LLM 代理伺服器與閘道
自架閘道是團隊的中央控制點,負責管理虛擬金鑰、依金鑰/使用者/團隊/組織記錄花費、套用 RPM 與 TPM 上限,並附帶一套應付日常運作的管理後台。
具重試與備援的 Router
Router 模組協調同一模型的多個部署,會重試失敗的呼叫、在某家供應商掛掉時切到健康的部署,並在後端之間平衡負載,讓某個緩慢端點不至於拖垮整個應用。
花費追蹤與預算
LiteLLM 計算每次呼叫的成本,並記在發出該呼叫的金鑰或專案上。團隊可以設定每月預算與速率上限,之後直接檢視花費,不必自己打造一套計量系統。
可觀測性與防護機制
一行 callback 就能把日誌、詞元用量與追蹤送往 Langfuse、MLflow、Helicone 等工具。防護機制讓你過濾或阻擋不安全的輸入與輸出,錯誤轉換則把各家供應商特有的例外收斂成熟悉的 OpenAI 型別。
優缺點
優點
- 單一 OpenAI 格式介面省下為每家模型供應商學習不同 SDK 的功夫。
- 換模型在設定層完成,降低換供應商時弄壞正式環境程式碼的風險。
- 開源核心以 MIT 授權免費提供,也能完全自架。
- Router 的重試與備援在某家供應商中斷時提升可用性。
- 花費追蹤與預算讓團隊看見原本往往無從掌握的成本。
缺點
- 閘道是多一個要部署、監控與升級的服務,對小團隊而言增加了維運負擔。
- 要多個執行個體同時運作就得有 Postgres 與 Redis,認真的部署因此背負實質的基礎設施需求。
- SSO、SCIM、稽核日誌與離線網路部署等功能,都放在付費的 Enterprise 方案裡。
- 新供應商的特殊之處有時比官方 SDK 晚一步跟上,因此少用的端點偶爾得額外設定。
常見問題
LiteLLM 讓應用透過單一 OpenAI 格式介面呼叫多家不同的 LLM 供應商。開發者用它避免每次換模型就重寫程式,也用它把金鑰、預算與日誌集中到一個自架閘道後面。
相關內容
探索與 LiteLLM 相關的工具、技能與文章。
LiteLLM 替代方案
Base Code
Base44 (Wix) · 程式設計 · 生產力Base Code 是 Base44 推出的共享雲端開發環境。團隊在對話中描述對既有 GitHub 儲存庫的修改,看著預覽確認結果,再以 Pull Request 交回工程團隊。
Google EmbeddingGemma 2
Google DeepMind · 寫作 · 圖片 · 程式設計Google EmbeddingGemma 2 是 7.4 億參數的開源模型,能把文字、程式碼、圖片、音訊與影片畫面轉成同一個 768 維空間裡的向量,在手機與筆電上就能執行。
GitGlow
GitGlow · 程式設計 · 生產力GitGlow 是桌面版 Git 用戶端,把你自己的程式碼與 AI 代理程式的變更集中在同一份審查裡,讓你在交付前看清楚機器上究竟要送出什麼。
