大模型用得越多,越容易陷入一種混亂狀態(tài)。
- 這個(gè)項(xiàng)目用 OpenAI
- 那個(gè)服務(wù)接 Dashscope(Qwen)
- 測(cè)試環(huán)境還跑著本地 vLLM 或 Ollama
- 電腦里配置著一堆 API Key
剛開始問(wèn)題不大,大家還能靠“記得住”來(lái)維持。
但只要項(xiàng)目一多、人數(shù)一多,麻煩立刻顯現(xiàn)出來(lái):
費(fèi)用開始失控、模型切換成本極高、權(quán)限越來(lái)越亂、出了問(wèn)題也很難排查。
于是,越來(lái)越多團(tuán)隊(duì)開始引入一個(gè)概念:
大模型網(wǎng)關(guān)(LLM Gateway)。
在目前的開源方案里,LiteLLM 是非常實(shí)用、也非常容易真正落地的一種。
我們按下面這條路線,一步步把它跑起來(lái):
為什么要用 → Docker Compose 部署 → 模型與 Key 管理 → 權(quán)限與預(yù)算 → 實(shí)際調(diào)用 → 真實(shí)使用場(chǎng)景
一、LiteLLM 是什么?它解決的不是“能不能用”,而是“怎么管”
先說(shuō)清楚一件事:
LiteLLM 本身不是模型。
它更像是一個(gè)統(tǒng)一的大模型代理層,或者你也可以理解為:
所有大模型的 統(tǒng)一入口 + 管理中樞
對(duì)外,它暴露的是 OpenAI 兼容 API;
對(duì)內(nèi),它可以接入各種不同來(lái)源的大模型,包括:
- OpenAI / Azure OpenAI
- Anthropic / Gemini / Dashscope
- HuggingFace
- 本地 vLLM、Ollama
- 甚至多家模型同時(shí)存在
最終的效果是:
應(yīng)用側(cè)只需要認(rèn)一個(gè)地址、一個(gè) Virtual Key。
至于后面到底用的是哪家模型、怎么調(diào)度、怎么限額,全部交給 LiteLLM 處理。
二、Docker Compose 部署(生產(chǎn)環(huán)境強(qiáng)烈推薦)
如果只是本地玩一玩,直接起一個(gè) Docker 容器也可以。
但只要你是長(zhǎng)期使用或多人使用,Docker Compose 是最穩(wěn)妥的方式。
它有幾個(gè)明顯好處:
- 部署結(jié)構(gòu)清晰
- 配置可復(fù)現(xiàn)
- 后期升級(jí)、遷移成本低
1?? 準(zhǔn)備目錄結(jié)構(gòu)
litellm/
├── docker-compose.yml
└── .env
保持簡(jiǎn)潔,后面所有東西都圍繞這兩個(gè)文件來(lái)。
2?? 編寫 docker-compose.yml
services:
litellm:
build:
context: .
args:
target: runtime
image: docker.litellm.ai/berriai/litellm:main-stable
#########################################
# Uncomment these lines to start proxy with a config.yaml file #
# volumes:
# - ./config.yaml:/app/config.yaml
# command:
# - "--config=/app/config.yaml"
##############################################
ports:
- "4000:4000"
environment:
DATABASE_URL: "postgresql://llmproxy:dbpassword9090@db:5432/litellm"
STORE_MODEL_IN_DB: "True"
env_file:
- .env
depends_on:
- db
healthcheck:
test:
- CMD-SHELL
- python3 -c "import urllib.request; urllib.request.urlopen('http://localhost:4000/health/liveliness')"
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
db:
image: postgres:16
restart: always
container_name: litellm_db
environment:
POSTGRES_DB: litellm
POSTGRES_USER: llmproxy
POSTGRES_PASSWORD: dbpassword9090
ports:
- "5432:5432"
volumes:
- /home/data/litellm/postgres/data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -d litellm -U llmproxy"]
interval: 1s
timeout: 5s
retries: 10
提醒一句:
記得把 db 的 volumes 路徑改成您自己機(jī)器上的真實(shí)路徑。
3?? 環(huán)境變量 .env
LITELLM_MASTER_KEY=sk-1234
STORE_MODEL_IN_DB=True
這里的 LITELLM_MASTER_KEY,就是后面登錄后臺(tái)用的密碼。
4?? 啟動(dòng)服務(wù)
docker compose -p litellm up -d
5?? 訪問(wèn)管理界面
瀏覽器打開:
http://localhost:4000

- 用戶名:
admin - 密碼:
.env里配置的LITELLM_MASTER_KEY
三、如何管理模型?從 Virtual Key 開始
LiteLLM 的核心設(shè)計(jì)之一,就是用 Virtual Key 來(lái)統(tǒng)一管理、隔離使用者和模型資源。
1?? 添加模型(以 Ollama 為例)
在 Models + Endpoints 頁(yè)面中,選擇 Add Model。

2?? 創(chuàng)建 Virtual Key
- Key 的擁有者可以是你自己、某個(gè)服務(wù)賬號(hào),或者具體成員
- 可以綁定一個(gè)或多個(gè)模型
- 可以設(shè)置預(yù)算、速率限制
注意:生成的 Key 只顯示一次,一定要保存好。

3?? 在線驗(yàn)證是否可用
- 粘貼剛創(chuàng)建的 Virtual Key
- 選擇允許使用的模型
- 直接測(cè)試請(qǐng)求

四、權(quán)限管理(多人協(xié)作非常重要)
當(dāng)開始多人使用時(shí),這一部分非常關(guān)鍵。
創(chuàng)建團(tuán)隊(duì)(Team)
用于統(tǒng)一管理成員和資源。

邀請(qǐng)內(nèi)部用戶(Internal User)

訪問(wèn)組(Access Groups)
通過(guò)訪問(wèn)組來(lái)控制:
誰(shuí)能用哪些模型、哪些 Key。

預(yù)算管理(Budgets)
如果你接的是收費(fèi)模型,這一步非常有用。

五、可觀測(cè)性:終于知道錢花哪了
請(qǐng)求消耗統(tǒng)計(jì)

請(qǐng)求日志

六、應(yīng)用如何調(diào)用?幾乎不用改代碼
Python 示例
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(
name="ollama",
model="qwen3:8b",
base_url="http://192.168.31.242:4000",
api_key="sk-Rj-rnKC9lgaohyI7bxKVkg"
)
response = llm.invoke("你是誰(shuí)?")
print(response)
核心只有三點(diǎn):
- 地址指向 LiteLLM
- Key 使用你創(chuàng)建的 Virtual Key
- 模型名來(lái)自你在后臺(tái)定義的模型

七、真實(shí)使用場(chǎng)景
場(chǎng)景一:公司級(jí) AI 中臺(tái)
- 前端、后端、腳本工具
- 全部只接一個(gè) Gateway
- 模型升級(jí)對(duì)業(yè)務(wù)透明
場(chǎng)景二:多項(xiàng)目成本可控
- 每個(gè)項(xiàng)目一個(gè) Key
- 超額直接拒絕
- 成本一眼就能看清
場(chǎng)景三:模型策略隨時(shí)調(diào)整
今天 GPT-4
明天 Gemini
后天本地模型
只改配置,不動(dòng)業(yè)務(wù)代碼。
寫在最后
很多人剛接觸大模型時(shí),最關(guān)心的是效果;
真正用久了才發(fā)現(xiàn),最難的是管理、成本和穩(wěn)定性。
LiteLLM 并不會(huì)讓模型變聰明,
但它能讓你:
- 用得更穩(wěn)
- 管得更清楚
- 換得更從容
如果你已經(jīng)不滿足“能跑就行”,
那這個(gè)網(wǎng)關(guān),確實(shí)值得你認(rèn)真搭一套。