核心用法
Sage Router 是一个运行于 :8790 的 HTTP 服务,为 AI 代理提供统一端点的智能路由。它支持 OpenAI、Anthropic 和 OpenAI Responses 三种 API 格式,任何兼容工具(Cursor、Aider、Claude Code、Zed 等)只需将 API base URL 指向 http://localhost:8790 即可使用。
关键特性:
- 自动意图分类:基于最新用户消息的关键词匹配检测意图,结合提示长度估计复杂度
- 动态提供商选择:从全局可达的 (provider, model) 对中评分排序,优先选择 API 类型匹配、延迟最低的候选
- 多凭证故障转移:单个提供商可配置多组 API key 或 OAuth 订阅路径,支持 failover/round-robin/lru/random 策略,自动在 401/403/429/5xx 错误时切换
- 多模态智能路由:深度扫描 payload 检测图像/音频/视频/文档输入,严格按模型声明能力匹配,支持能力学习机制提升路由准确性
- 本地优先模式:
local-first配置可拒绝集中式互联网 API,仅允许本地/LAN/Tailnet 端点和去中心化提供商
运营商管理:
/health端点展示提供商状态、模型列表、路由调试信息/setup/credentials系列端点支持凭据的增删改查和策略配置- 模型能力学习数据持久化至本地 JSON 或共享 Supabase 数据库
显著优点
1. 统一抽象层:单一端点屏蔽多家提供商差异,降低客户端集成复杂度
2. 高可用性设计:多凭证池 + 顺序故障转移机制,有效应对 rate limit、quota 和 transient errors
3. 自适应优化:基于实际请求延迟的持续学习,路由质量随使用提升
4. 安全可控:local-first 模式支持离线/隐私优先场景;凭据支持环境变量注入,避免硬编码
5. 生态兼容:原生支持主流开发工具链,自动处理 Codex /goal 指令和内部上下文块
潜在缺点与局限性
1. 无流式切换:一旦开始向客户端返回 SSE 响应,中途失败无法重试,只能降级到下一提供商
2. 意图检测简单:基于关键词匹配,对复杂语义理解有限
3. 配置复杂度:多提供商、多凭证、多种策略的组合需要较深的配置知识
4. Docker 体积:镜像捆绑 Node + Python + Dario,资源占用较高
5. 学习数据依赖:模型能力学习需要累积观测数据,冷启动阶段路由可能不够精准
适合人群
- 需要统一管理多个 AI 提供商密钥的团队/个人开发者
- 追求高可用、自动故障转移的生产环境部署者
- 重视数据隐私、希望本地优先运行的用户
- 使用 Cursor、Aider、Claude Code 等工具的深度 AI 用户
常规风险
1. 凭据泄露:多凭证集中管理增加了单点风险,需严格保护配置文件和日志
2. 供应商锁定转移:虽然抽象了多家提供商,但深度依赖特定功能(如 Codex)仍可能形成隐性依赖
3. 延迟累积:多层代理(Dario、分类器 sidecar)可能增加端到端延迟
4. 配置漂移:openclaw.json 和路由配置分离管理,可能导致不一致