系統概觀
OpenModex 位於您的應用程式和 AI 模型供應商之間。每個請求在到達最佳供應商之前,都會經過一系列智慧中介層處理。請求流程
1
身分驗證
驗證您的 API 金鑰,並映射到您的帳戶、團隊和速率限制。
2
速率限制
根據您的方案速率限制(按金鑰、按分鐘)檢查請求。使用 Redis 有序集合進行精確的滑動視窗控制。
3
快取檢查
如果啟用了提示快取,OpenModex 會檢查是否有完全匹配的快取回應。快取命中時立即回傳,零供應商成本。
4
路由決策
路由引擎根據您的策略(成本、延遲或品質)、當前供應商健康狀態和容錯備援設定,選擇最佳供應商。
5
供應商請求
請求被轉譯為目標供應商的格式並轉發。OpenModex 支援即時 SSE 串流透傳。
6
回應 + 中繼資料
供應商回應被標準化為 OpenAI 格式,附加 OpenModex 中繼資料(路由資訊、成本、延遲),然後回傳給您的應用程式。
核心元件
API 閘道器
- OpenAI 相容 REST API — 可直接替換 OpenAI 的 API
- SSE 串流 — 即時逐 token 傳遞
- 冪等性 — 使用
Idempotency-Key標頭安全地重試(24 小時 TTL)
路由引擎
路由引擎維護供應商健康狀態和效能的即時視圖:斷路器
自動監控供應商健康狀態:- 關閉 — 請求正常路由
- 半開 — 連續失敗後,流量被節流
- 開啟 — 供應商暫時從路由池中移除
- 恢復 — 定期健康探測恢復供應商
供應商轉接器
每個 AI 供應商都封裝在標準化的轉接器中,處理:- 請求格式轉譯(OpenAI 格式 → 供應商原生格式)
- 回應標準化(供應商原生 → OpenAI 格式)
- 錯誤映射為一致的錯誤碼
- 串流協定轉譯
快取層
- 精確匹配快取 — 對(模型 + 訊息 + 參數)進行雜湊
- 可設定 TTL — 每個請求 60 秒至 24 小時
- Redis 驅動 — 亞毫秒級快取查詢
- 成本節省 — 快取回應以約 50% 的輸入費率計費,零輸出成本
計費管線
- 每個請求都會向 Kafka 發送計費事件
- 事件被非同步消費並持久化
- 帳戶餘額透過 Redis Lua 腳本進行原子更新
- 分析資料刷新到 Apache Doris 以供儀表板和報告使用
基礎架構
安全性
- API 金鑰在靜態狀態下進行雜湊處理;僅儲存前綴用於查詢
- BYOK 供應商金鑰使用 AWS KMS 信封加密進行加密
- 速率限制使用原子 Redis 操作以防止競爭條件
- 所有流量使用 TLS 1.3 加密
- 密碼使用 Argon2id 進行雜湊處理