theopenco/llmgateway
Route, manage, and analyze your LLM requests across multiple providers with a unified API interface.
LLM Gateway – 是什麼
LLM Gateway 是一個開源的 API 網關,位於您的應用程式與多個大型語言模型(LLM)供應商(OpenAI、Anthropic、Google Vertex AI 等)之間。它提供單一的 OpenAI 相容端點,讓您能將不同供應商的金鑰集中儲存於一處,並記錄使用資料,以便查看已消耗的 token 數量以及每次呼叫的成本。
核心功能(如 README 所述)
- 統一 API – 呼叫遵循 OpenAI 的
/v1/chat/completions格式,因此您無需變更客戶端程式碼即可切換供應商。 - 多供應商路由 – 可為每個請求設定要呼叫的後端模型;網關會將請求轉發至相應的供應商。
- 金鑰管理 – 將所有供應商的 API 金鑰集中管理,並透過啟動時設定的密碼保護。
- 使用分析 – 服務會記錄請求次數、token 使用量、回應延遲與成本,協助您監控並優化支出。
- 效能監控 – 從同一儀表板比較不同模型/供應商之間的延遲與價格。
- 自架或 SaaS – 可使用 llmgateway.io 上的托管服務,或自行部署整個系統。
如何執行
托管選項
- 在 llmgateway.io 上註冊。
- 取得 API 金鑰,並開始向
https://api.llmgateway.io/v1/...發送請求。
自架(Docker 為首)
- 產生兩個密碼:
export LLM_GATEWAY_SECRET=$(openssl rand -base64 32 | tr -d '\n') export GATEWAY_API_KEY_HASH_SECRET=$(openssl rand -base64 32 | tr -d '\n') - 執行提供的腳本以建立 PostgreSQL 與 Redis 卷並啟動統一容器,或手動使用命名卷啟動容器(完整
docker run命令請參見 README)。 - 容器公開多個埠(3002–3007,4001–4002)供 UI、API 及內部服務使用。
- 啟動後,您可像呼叫 OpenAI API 一樣呼叫網關,例如:
curl -X POST https://api.llmgateway.io/v1/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $LLM_GATEWAY_API_KEY" \ -d '{"model":"gpt-4o","messages":[{"role":"user","content":"Hello, how are you?"}]}'
開發工作流程
- 相依性管理 – 使用
pnpm。執行pnpm i && pnpm run setup安裝套件、啟動 Docker 服務、同步資料庫模式並填入資料。 - 開發伺服器 –
pnpm dev以監聽模式啟動所有應用(前端儀表板、API、網關等)。 - 生產建構 –
pnpm build建立用於部署的優化套件。 - 單體倉儲結構 – 倉儲為單體倉儲,包含多個 Next.js 應用(
ui、playground、code、airside、docs)與共用套件(db、models、shared)。實際路由邏輯位於apps/gateway(Hono 後端)。
授權
- 開源核心 – AGPL-v3(參見
LICENSE)。 - 企業擴充功能 –
ee/目錄包含高階計費、無限資料保留、多組織管理等商業功能,採用獨立企業授權。詳情請聯絡contact@llmgateway.io。
誰會使用它?
- 需要在不重寫客戶端程式碼的情況下切換或整合多個 LLM 供應商的團隊。
- 希望在單一地點審計 token 使用量與成本的組織。
- 偏好自架以符合資料隱私或合規要求的開發者。
總結
LLM Gateway 是一個實用、可投入生產的中介軟體,抽象了 LLM API 之間的差異,加入分析功能,並提供 SaaS 與自架兩種部署路徑。它以 TypeScript 單體倉儲構建,支援 Docker,並在 UI、API 與網關元件之間保持清晰分離。
相關
- 專案
- 專案
- 專案
- 專案
- 專案