核心用法
Sage Router 是一个运行在本地的 HTTP 代理服务器(:8790),为多种 AI 模型提供商提供统一的接入层。用户将客户端(如 Cursor、Aider、Claude Code、Zed、Continue)指向 http://localhost:8790,即可通过单一端点自动路由到 OpenAI、Anthropic、Ollama、Gemini 等后端。
关键配置:通过环境变量 SAGE_ROUTER_HOME 指定代码库路径,可选配置禁用特定提供商/模型、Ollama 超时与自动拉取策略,以及 OpenClaw 网关令牌。提供商配置存储于 openclaw.json,支持环境变量替换与多种安装场景(本地、Docker、Umbrel)。
API 端点:
POST /v1/chat/completions— OpenAI 兼容,自动路由POST /v1/responses— OpenAI Responses API 兼容,支持 Codex 自定义流量POST /v1/messages— Anthropic Messages API 兼容,内部转译为 OpenAI 格式GET /health— 提供商状态、模型列表、路由调试信息
路由策略:基于意图检测(关键词匹配)和复杂度估计(词数)对候选模型评分,综合 API 类型、模型名称暗示、延迟统计进行排序。支持 local-first 严格模式(拒绝中心化 API,仅允许本地/LAN/Tailnet 端点及去中心化提供商如 Darkbloom)。失败后顺序尝试下一候选,不支持中途切换或流式交接。付费计划可通过 sage-router/fusion 启用高级 Fusion 路由。
路由配置:支持 router-profiles.json 定义命名配置,如 fast、balanced、best、local-first、frontier、coding-max 等,可精细控制思考深度、质量要求、工具支持、提供商/模型白名单与黑名单。
显著优点
1. 提供商无关的抽象层:单一端点屏蔽后端差异,客户端无需感知模型分布与 API 格式差异,显著降低多密钥、多端点管理的认知负担。
2. 本地优先架构:local-first 模式满足隐私敏感场景,支持纯离线运行(Ollama + 本地分类器),避免数据外泄至中心化云 API。
3. 智能意图路由:基于任务类型(代码、分析、通用、实时)自动匹配最优模型类别,无需用户手动选择模型。
4. 经验性延迟优化:持久化记录各提供商/模型的实际延迟,动态优化路由决策,兼顾探索与利用。
5. 丰富的生态兼容:原生支持 OpenAI、Anthropic 双生态工具链,Dario 代理提供 Anthropic 协议的本地透明转换,Ollama 自动发现与 :cloud 模型过滤。
6. 灵活的配置分层:环境变量、配置文件、请求级 profile 参数三层覆盖,适配从个人开发到生产部署的多样需求。
潜在缺点与局限性
1. 无中途故障转移:一旦请求发送至某提供商,失败后才尝试下一候选,无法在流式响应中断时无缝切换,对长生成任务存在可用性风险。
2. 意图检测过于简单:关键词匹配与词数估算无法捕捉复杂语义,可能误判任务类型导致次优路由(如将深度数学推理误判为通用对话)。
3. 分类器依赖外部服务:可选的 llama.cpp 分类器需额外部署 sidecar,增加了架构复杂度与资源占用。
4. Anthropic 兼容的隐藏依赖:Anthropic 协议实际由 Dario 代理转换,需确保 Dario 服务可用,否则路由将失败。
5. 配置分散:openclaw.json、环境变量、router-profiles.json 多处配置,新手易产生配置碎片化困惑。
6. Fusion 功能闭源门槛:高级 Fusion 路由需付费计划,核心路由逻辑开源但最佳体验受商业限制。
适合人群
- 隐私优先开发者:希望在本地完全掌控模型调用,避免敏感代码/数据流经第三方 API。
- 多模型策略用户:频繁切换 OpenAI、Anthropic、Ollama 等后端,厌倦维护多组 API 密钥和端点配置。
- Agent 与工具链构建者:需要统一接口为下游应用(如自主 Agent、IDE 插件)提供模型接入层。
- 自托管爱好者:使用 Umbrel、Docker 或 systemd 部署个人 AI 基础设施的技术用户。
常规风险
- 单点故障:Sage Router 本身成为流量瓶颈,若服务崩溃或配置错误,所有下游 AI 调用中断。
- 凭证泄露:
openclaw.json与SAGE_ROUTER_HOME环境变量需妥善保护,多提供商密钥集中存储增加泄露影响面。 - 延迟累积:意图分类、评分计算、失败重试均增加请求前延迟,对
<100ms要求的实时场景可能不适用。 - 供应商锁定(隐性):深度依赖
openclaw配置格式与 Sage Router 特定扩展(如sage-router/fusion),迁移至其他路由方案需配置重写。 - Dario 代理的信任假设:Anthropic 流量经 Dario 转换,需审计其协议转换行为,存在中间人攻击或数据留存的潜在风险(尽管运行于本地)。