Zilmac 博客
← 返回技術實踐

OmniRoute 是什麼?一個 API 調用 290+ AI 模型完整教學(2026)

API 與 Agent ·約 14 分鐘閱讀

自託管 AI 網關儀表板與多模型 API 路由拓撲,示意 OmniRoute 統一調用 290 家供應商

你在 Claude Code、Cursor 或自建 Agent 裡改一個 base_url,就能在同一條 OpenAI 相容 API 上切換 Claude、GPT、Gemini、DeepSeek、Kimi 等數百個模型——這不是 OpenRouter 的專屬能力。OmniRoute 是 2026 年 GitHub 上成長最快的開源 AI 閘道之一:MIT 授權、自託管,官方目錄宣稱接入 290+ 供應商、500+ 模型(其中 90+ 帶免費額度)。本文從「它是什麼」講到第一次成功呼叫,再到 Claude Code 接入與生產安全清單。

290+
可設定的 AI 供應商目錄
500+
聊天 / 嵌入 / 圖像等模型
:20128
預設 Dashboard 與 API 連接埠

OmniRoute 是什麼?解決什麼問題

簡單說:OmniRoute 是你自己機器上跑的 LLM 反向代理。它對上游暴露統一的 /v1/chat/completions(以及 Anthropic /v1/messages、Gemini /v1beta/models 等相容介面),對下游連接你設定的各廠商 API Key、OAuth 訂閱或免費池。

典型使用場景

  • 多 Key 回退:Claude 訂閱額度用盡後自動切 API Key 或更便宜模型
  • 統一 Agent 入口:Claude Code、Cursor、Cline 共用同一閘道與稽核日誌
  • 資料不出內網:請求路徑只經過你自己的容器,無第三方代理
  • 預算與配額:詳見 Auto Combo 預算路由教學
開發者筆電上的 API 請求日誌與多模型路由設定介面
自託管閘道的核心價值:在本地看清每一次請求被路由到哪個供應商

和 OpenRouter、LiteLLM 怎麼選

維度OmniRouteOpenRouterLiteLLM Proxy
部署自託管雲端 SaaS自託管(Python)
計費各廠商原價 + 你的基礎設施預充值 token + ~5.5% 充值費各廠商原價 + 自建成本
目錄290+ 供應商 / 500+ 模型300+ 託管模型取決於你的設定
適合誰本地閘道、多訂閱混用、預算控制快速試模型、不想維運閘道已有 Python 棧、要極簡代理

若你主要關心各模型 token 單價對比,可先讀 OpenRouter 價格對比文;若已決定自託管並要控制 Agent 單次請求成本,再讀 Auto Combo 預算路由。

安裝與啟動(Docker / npm)

Docker(建議)

docker run -d --name omniroute \
  -p 20128:20128 \
  -v omniroute-data:/data \
  diegosouzapw/omniroute

開啟 http://localhost:20128 → /dashboard。

npm(本機快速試用)

npm install -g omniroute
omniroute

雲端 Mac 提示

把 OmniRoute 跑在 Zilmac 雲端 Mac 上,可獲得固定 IP 與 SSH 存取——LLM 閘道可與同機或另一台主機上的 xcodebuild 搭配使用。

Dashboard 四步驟

  1. 建立 API Key——所有客戶端使用 Authorization: Bearer <key>。
  2. 連接供應商——OAuth、貼上 API Key,或啟用免費 no-auth 池(僅試用)。
  3. 指向客戶端——設為 http://<host>:20128/v1。
  4. 監控用量——未帶 Key 的管理路由應回傳 401。

列出全部模型:GET /v1/models

export OMNI_KEY="your-omniroute-api-key"
curl -s http://localhost:20128/v1/models \
  -H "Authorization: Bearer $OMNI_KEY" | jq '.data | length'

第一次 API 呼叫(curl / Python / Node)

建議使用 provider/model 格式的模型 ID。省略前綴時可能自動補全;不匹配則回傳 400。

curl

curl -s http://localhost:20128/v1/chat/completions \
  -H "Authorization: Bearer $OMNI_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"anthropic/claude-sonnet-4-6","messages":[{"role":"user","content":"Explain OmniRoute in one sentence"}],"max_tokens":256}'

Python

from openai import OpenAI
client = OpenAI(api_key="your-key", base_url="http://localhost:20128/v1")
print(client.chat.completions.create(
    model="openai/gpt-5.4",
    messages=[{"role": "user", "content": "Hello"}],
).choices[0].message.content)

串流輸出

curl -N http://localhost:20128/v1/chat/completions \
  -H "Authorization: Bearer $OMNI_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"deepseek/deepseek-chat","messages":[{"role":"user","content":"Count to 5"}],"stream":true}'

Anthropic Messages

原生 Anthropic 客戶端可使用 POST /v1/messages。完整端點列表:API Reference。

auto/* 意圖別名與回退

像 auto/best-coding 這類別名會在配額內選擇健康模型——換供應商時無需改客戶端。生產環境請搭配 預算路由,避免意外回退到免費層。

curl -s http://localhost:20128/v1/chat/completions \
  -H "Authorization: Bearer $OMNI_KEY" -H "Content-Type: application/json" \
  -d '{"model":"auto/best-coding","messages":[{"role":"user","content":"quicksort"}]}'

Claude Code、Cursor 與 Copilot

客戶端設定說明
Claude CodeANTHROPIC_BASE_URL=http://host:20128OAuth 或 API 路由
Cursor覆寫 OpenAI Base URL → /v1以 OmniRoute Key 作為 API Key
Cline / ContinueOpenAI 相容供應商可試 auto/best-coding

生產部署與安全清單

  • 升級至最新版本(v3.8.50+);移除預設密碼;
  • 切勿在無 TLS 的情況下將連接埠 20128 暴露到公網;
  • 為每位成員簽發獨立 API Key,設定 token 限額與 IP 允許清單;
  • 免費池僅作回退;定期備份 /data 磁碟區。

常見問題

回傳 400 model not found?

檢查 provider/model 拼寫與 Dashboard 中的供應商連線。可試 auto/best-free 驗證鏈路。

本機用 Ollama?

可以——POST /v1/api/chat 將本地模型納入同一路由表。

能和 OpenRouter 一起用嗎?

可以——OmniRoute 可把 OpenRouter 當作下游供應商,實現混合架構。

閘道管模型,雲端 Mac 管建置

OmniRoute 負責選 LLM;iOS/macOS 流水線仍需要 Xcode。Zilmac 雲端 Mac 可與 Agent 工作流搭配,處理簽章、公證與 TestFlight。

查看雲端 Mac 方案

限時特惠

Zilmac

雲端 Mac、遠端開發與 Mac VPS,為 iOS 與跨平台團隊補齊 Apple 工具鏈。

返回首頁
限時優惠 點擊查看套餐