OmniRoute 是一個本地執行的 AI API 閘道器,把不同模型供應商、訂閱賬號和免費額度放到統一介面後面。Codex、Claude Code、Cursor、Cline、OpenCode 等客戶端只需連線一個 OpenAI 相容地址,再由 OmniRoute 根據可用額度、成本、延遲和健康狀態選擇模型。
它適合同時使用多家模型服務、經常遇到限流,或者希望統一檢視呼叫量的開發者。需要注意的是,閘道器不會憑空產生免費額度:賬號註冊、API 價格、速率限制和可接受使用方式仍由各上游供應商決定。
快速答案
全域性安裝並啟動:
|
|
預設地址:
|
|
進入 Dashboard 的 Providers 頁面連線至少一個模型供應商,再到 Endpoints 頁面複製本地 API Key。AI 客戶端使用:
|
|
驗證模型列表:
|
|
如果返回已連線的模型,說明閘道器基本可用。正式接入編碼 Agent 前,再分別測試普通對話、流式輸出、工具呼叫和長上下文,避免只憑模型列表判斷相容性。
OmniRoute 如何工作
客戶端不再直接連線每家模型 API,而是把請求傳送到本地 OmniRoute。閘道器讀取模型名和路由規則,選擇當前可用的 Provider,再把響應轉換為客戶端能夠理解的協議。
|
|
這種架構帶來三個直接效果:
- 客戶端只維護一個 Base URL 和訪問金鑰;
- 某個 Provider 限流或故障時,可以切換到候選模型;
- 呼叫量、成本、延遲和錯誤集中到同一控制面觀察。
代價是 OmniRoute 成為請求路徑中的關鍵元件。它停機、配置錯誤或資料目錄損壞時,所有經它轉發的客戶端都會受影響,因此生產環境需要持久化、備份、訪問控制和明確的繞行方案。
環境要求與安裝
官方當前要求 Node.js 22 或 24 LTS,並推薦 Node.js 24 LTS。先檢查版本:
|
|
使用 npm 安裝:
|
|
第一次執行可以進入引導流程:
|
|
啟動閘道器與 Dashboard:
|
|
互動式終端聊天:
|
|
遇到 Provider、埠或原生依賴問題時執行診斷:
|
|
如果本機沒有適配的 better-sqlite3 預編譯檔案,專案會嘗試使用其他 SQLite 實現。安裝異常時應先看完整日誌,不要直接關閉所有安裝指令碼或用管理員許可權反覆重灌。
使用 Docker 執行
官方提供多架構 Docker 映象:
|
|
檢查狀態和日誌:
|
|
omniroute-data 儲存配置、資料庫和執行狀態,升級或重建容器時不要隨意刪除。生產環境還應把 latest 換成經過驗證的明確版本標籤,並在升級前備份卷。
上面的 -p 20128:20128 可能把埠釋出到宿主機所有網路介面。只在本機使用時,可以限制到環回地址:
|
|
需要遠端訪問時,應使用 HTTPS、強認證、IP 限制或私有網路,不要把 Dashboard 和 API 裸露到網際網路。
連線模型供應商
啟動後開啟:
|
|
進入 Providers 頁面,根據實際擁有的賬號或 API Key 新增 Provider。建議按以下順序操作:
- 先連線一個低風險測試賬號;
- 確認模型目錄和單次對話可用;
- 設定預算或額度限制;
- 再增加第二個 Provider 驗證回退;
- 最後才接入日常編碼客戶端。
不要在截圖、日誌或問題反饋中暴露 OAuth Token、API Key 或 Dashboard 訪問金鑰。倉庫說明憑據會在本地加密儲存,但本機被攻破、主金鑰洩露或惡意擴充套件讀取程序時,仍可能造成風險。
使用 auto 自動路由
最簡單的配置是把客戶端模型設為:
|
|
OmniRoute 還提供面向不同目標的自動模型名:
| 模型名 | 路由側重點 |
|---|---|
auto |
平衡選擇,並傾向最近成功路徑 |
auto/coding |
優先程式碼生成質量 |
auto/fast |
優先低延遲 |
auto/cheap |
優先較低呼叫成本 |
auto/offline |
優先剩餘額度或限流空間 |
auto/smart |
質量優先,並保留少量探索流量 |
自動路由不保證不同模型的行為完全一致。工具呼叫格式、上下文視窗、推理能力和輸出風格可能變化。關鍵任務應固定模型或限定候選集合,避免在一次長任務中無提示地切換到能力明顯不同的模型。
自定義回退鏈與路由策略
OmniRoute 把一組模型回退目標稱為 combo。可以按優先順序、權重、成本、剩餘額度、延遲或最近成功狀態選擇目標。
常見策略包括:
priority:按固定順序使用,失敗後轉下一個;round-robin:在目標間輪詢;cost-optimized:傾向價格更低的可用模型;headroom:傾向剩餘額度更多的連線;context-optimized:按當前上下文大小選擇模型;lkgp:保持在最近已驗證成功的路徑。
配置回退鏈時,不要只比較模型名稱。還要統一考慮輸入輸出價格、上下文限制、工具呼叫、圖片能力、資料區域和供應商條款。對必須保持模型一致的會話,應啟用合適的粘性策略或直接固定 Provider。
接入 OpenAI 相容客戶端
能自定義 OpenAI Base URL 的工具通常可以使用:
|
|
推薦透過請求頭傳遞訪問金鑰:
|
|
無法新增自定義 Header 的客戶端,可以使用帶 Token 的相容別名,但 URL 會包含金鑰,更容易進入瀏覽器歷史、代理日誌或截圖。只有確實無法使用 Header 認證時才使用該方式,並定期輪換金鑰。
驗證聊天介面時,可以傳送一個最小請求:
|
|
Windows PowerShell 中 curl 的別名和引號行為可能不同,建議使用 curl.exe 或按當前 PowerShell 版本構造請求。
MCP 接入與許可權風險
OmniRoute 不僅能轉發模型請求,還提供 MCP,讓 Agent 管理 Provider、路由、combo、快取、壓縮和其他閘道器功能。
stdio 模式:
|
|
HTTP MCP 地址:
|
|
Claude Code 示例:
|
|
MCP 許可權比普通模型呼叫更敏感,因為 Agent 可能修改路由或連線配置。接入前應使用最小 scope、獨立訪問 Token 和審計日誌;刪除 Provider、輪換金鑰或調整團隊配額等操作應保留人工確認。
Token 壓縮應該怎麼評估
倉庫提供多級壓縮和 RTK、Caveman 等處理管線,官方展示的節省比例範圍很大。實際效果取決於工具輸出、重複內容、上下文結構和壓縮檔位,不能把 README 中的比例直接當作每個專案的保證。
建議用固定任務做 A/B 測試:
- 儲存原始 Prompt、工具輸出和最終結果;
- 關閉壓縮執行一次;
- 使用標準或 RTK 配置再執行一次;
- 比較輸入 Token、延遲、成本和答案正確性;
- 對程式碼修改執行同一套測試或驗證命令。
壓縮可能刪除被判定為低相關的資訊。安全審計、長日誌診斷和精確程式碼評審不應只看 Token 節省,還要檢查遺漏率並保留檢視原始輸出的路徑。
免費額度與供應商條款
OmniRoute 彙總多家供應商公開的免費層、試用額度和限流資訊。數字會隨供應商政策、地區、賬號型別和時間變化,因此文章不固定引用某個“每月免費 Token 總數”。應以 Dashboard 當前目錄和上游官方價格頁為準。
還要區分三類資源:
- 長期免費層;
- 註冊後一次性試用額度;
- 需要付費或訂閱才能解鎖的額外額度。
使用訂閱賬號、非標準 OAuth 流程或多個賬號聚合前,必須核對供應商服務條款。技術上能夠接入不代表供應商允許把個人訂閱共享給團隊、自動化呼叫或規避額度限制。
遠端部署注意事項
把 OmniRoute 部署到 VPS 後,所有客戶端 Prompt、程式碼上下文和模型響應都會經過該主機。至少需要:
- 使用 HTTPS,避免明文傳輸 Token 和 Prompt;
- 限制 Dashboard、API 與 MCP 的訪問來源;
- 為不同使用者或客戶端簽發不同 scope 的 Key;
- 備份資料目錄,同時加密備份;
- 設定日誌保留週期,避免長期儲存敏感程式碼;
- 監控呼叫成本、失敗率、延遲和異常登入。
不要把本地示例中的 http://localhost:20128 簡單替換成公網 IP 就投入使用。推薦先透過 Tailscale、WireGuard 或 SSH Tunnel 驗證,再決定是否配置反向代理和公開域名。
常見問題
Dashboard 打不開
執行診斷並檢查埠:
|
|
確認程序仍在執行,20128 沒有被其他應用佔用。Docker 使用者檢視容器日誌和埠對映。
/v1/models 返回 401
確認請求使用的是 Dashboard → Endpoints 生成的本地 Key,幷包含:
|
|
不要誤把上游 Provider Key 當作 OmniRoute Endpoint Key。
auto 選到了不合適的模型
先固定一個已驗證模型確認客戶端相容,再調整 combo 候選、策略、預算和上下文要求。關鍵工作流可以使用 auto/coding,但仍應限制不滿足工具呼叫或上下文要求的模型。
路由回退後回答風格突然變化
不同模型的系統指令遵循能力和工具格式存在差異。啟用會話粘性、縮小候選模型差距,並在切換時保留必要的任務狀態。對需要確定性的任務直接固定模型。
OmniRoute 能降低所有 AI 成本嗎?
不能保證。它可以依據定價和額度路由,並減少部分重複上下文,但閘道器本身無法改變上游計費規則。融合、流水線或多模型評審還可能增加總呼叫量。
OmniRoute 適合哪些場景
OmniRoute 適合同時維護多家模型賬號、需要統一 OpenAI 相容入口、希望在限流時自動回退,或想集中觀察成本和健康狀態的個人與團隊。對只使用一個穩定 Provider 的簡單專案,引入完整閘道器可能增加維護複雜度。
在團隊生產環境採用前,建議先完成四項驗證:客戶端協議相容、Provider 條款、金鑰與許可權隔離、閘道器故障時的降級路徑。
總結
OmniRoute 用本地 http://localhost:20128/v1 把多個模型供應商接到統一 API 後面,透過 auto 和 combo 實現成本、速度、額度與健康狀態驅動的路由。npm 安裝適合本機體驗,Docker 適合持久執行;遠端部署時必須補齊 HTTPS、訪問控制、備份和審計。免費額度和壓縮比例都是動態指標,應結合上游條款和自己的基準測試評估。
官方網站:omniroute.online