从 one-api 到 9Router:模型路由网关的技术演进与国产化突围 从 one-api 到 9Router模型路由网关的技术演进与国产化突围【免费下载链接】9routerUnlimited FREE AI coding. Connect Claude Code, Codex, Cursor, Cline, Copilot, Antigravity to FREE Claude/GPT/Gemini via 40 providers. Auto-fallback, RTK -40% tokens, never hit limits.项目地址: https://gitcode.com/GitHub_Trending/9r/9routerAI 编码工具的爆发把模型网关从一个运维概念变成了每个开发者桌面上的必需品。Claude Code、Codex、Cursor、Cline、Copilot 各自绑定不同厂商的订阅与 API模型生态碎片化到让人手忙脚乱订阅额度每月清零、限流随时打断编码、不同工具只认自己的请求格式。one-api 曾用统一 OpenAI 接口解决了多模型一个入口的第一层问题而 9Router 站在这条演进线上把网关从转发器升级成了调度器 成本优化器 格式翻译器的复合体。本文结合 9Router 仓库源码拆解模型网关三代形态的差异以及 9Router 如何在连接、路由、配额、格式四个层面完成突围。第一代网关one-api 时代的单机分发one-api 解决的问题本质上是密钥治理与协议归一。在它之前每个模型一个 SDK、一个 base_url、一把 API Key业务代码被厂商绑死one-api 的做法是提供一个 OpenAI 兼容的/v1/chat/completions出口把渠道channel注册在后台由网关按权重或优先级把请求分发给上游。它把多供应商抽象成了一个地址 一个密钥从此客户端不再需要感知背后是谁在提供服务。但第一代网关的调度粒度是粗的渠道权重是静态配置供应商挂了就整体摘除模型选择靠人工维护列表费率与配额基本不在路由决策之内。它解决的是接入问题而不是花得值不值、挂不挂得掉的问题。当每个月的账单和限流开始侵蚀开发体验时第二代网关登场了。第二代成本感知与可用性路由的兴起第二代网关的典型代表是 OpenRouter 与 one-api 生态的后续分支。它们引入了价格表、质量等级、延迟统计、可用性探测等信号让路由决策从按权重分发变成按成本与质量排序。OpenRouter 按模型厂商报价做价格路由用户可以为最便宜或质量优先设定策略New API 系则强化了额度计费、并发限制与供应商健康检查。这一代的核心进步是网关开始拥有对上游的感知能力——知道谁便宜、谁快、谁在被限流并把这些信息用于请求分发。但感知仍然是被动消费的价格数据靠人工维护可用性靠探测用户依然要自己决定买哪家、配多少预算。9Router 站上了哪一代的肩膀9Router 的定位恰好落在第二代网关的能力缺口上它不再只路由付费 API Key而是把订阅制账号Claude Code、Codex、GitHub Copilot、Cursor、Antigravity也纳入调度对象用 OAuth 会话而非密钥作为凭证并在此基础上叠加配额感知、账号级回退和 token 压缩。README 中的架构图清楚展示了它的三级调度订阅 → 廉价 → 免费。连接层从 API Key 到 OAuth 订阅会话传统网关只认 API Key9Router 则通过 OAuth 直接对接各家订阅平台把每月白付的订阅额度变成可被调度的资源。凭证刷新被自动化open-sse/services/tokenRefresh.js提供按供应商分派的刷新函数Claude、Google、Codex、GitHub、Copilot 各自独立实现OAuth 令牌在过期前由 oauthCredentialManager.js 统一管理。对用户而言效果是登录一次额度持续可用订阅不再因为手动续期而闲置。路由层三级回退与账号冷却核心路由逻辑在 combo.js 的handleComboChat模型组合按策略fallback 或 round-robin逐层尝试一个模型失败就换下一个直到全部耗尽才返回 503。值得注意的细节是它对瞬态错误的处理——503/502/504 会先等待冷却再切换避免上游短暂过载时被误判为永久不可用而跳过而判定是否回退的规则由 accountFallback.js 承载基于 HTTP 状态码与错误文本的规则表、429 触发的指数退避1s → 2s → 4s上限 4 分钟以及4xx 客户端错误不回退账号的防御逻辑——因为请求本身的问题不该让一个健康的账号被冷却出轮换池。配额感知把额度变成路由输入第二代网关把价格当路由依据9Router 则把订阅配额窗口也纳入进来。usage/claude.js 会解析 Anthropic 配额接口返回的 five_hour 与 seven_day 窗口、各自的使用率与重置时间甚至细到模型级seven_day_sonnet、seven_day_opususage/antigravity-weekly.js 则处理周配额汇总。配合仪表盘上的重置倒计时用户能精确知道额度还剩多少、何时刷新从而把免费/廉价层的使用时机对准订阅额度的空窗期——这正是订阅 → 廉价 → 免费三级回退能成立的前提。格式翻译与 RTK网关不只是转发9Router 的另一层进化是协议翻译与 token 优化。客户端无论以 OpenAI、Claude、Gemini、Cursor 还是 Kiro 的格式发来请求translator/formats.js 中登记的 14 种格式会由 translator/index.js 统一翻译后送抵上游原生接口这让任何支持自定义端点的 CLI 工具都能接入任意供应商。更关键的是内置的 RTK token 优化器open-sse/rtk/index.js它在请求进入格式翻译之前对tool_result内容做无损压缩。git diff、git status、grep、find、ls、tree等高频工具输出由 autodetect.js 通过正则嗅探自动识别只读前 1KB 窗口即可判定再交给对应过滤器压缩——git diff 保留 hunk 上下文、grep 每文件最多 10 条、ls 折叠 node_modules 等噪声目录。压缩失败或变大则原样保留绝不破坏请求。据 README 的数据这能为每次请求节省 20-40% 的输入 token相当于把有限的订阅额度与免费额度同时放大。部署形态从单体服务器到本地优先one-api 时代的网关默认部署在服务器上集中供给9Router 则提供npm install -g 9router一条命令拉起本地服务见 cli/package.json 的 bin 配置默认监听 localhost:20128同时也支持 VPS、Docker 与 Cloudflare Workers。本地优先的意义不仅是隐私与延迟更在于它把网关变成了开发工具链的一部分配置存在本地、请求不出本机、免费层直连运行成本几乎为零。国产化突围国产模型成为成本结构的地基9Router 的国产化价值体现在它把国产模型放进了成本结构的关键位置。廉价层的主力是智谱 GLM$0.6/1M tokens、MiniMax$0.2/1M5 小时滚动重置与月之暗面 Kimi$9/月固定 10M tokens免费层中Kiro 的月度免费额度覆盖 Claude 4.5 GLM-5 MiniMax 的组合OpenCode Free 免认证直连Google Vertex 新账号则提供 $300 信用额度。而 DeepSeek、Qwen、硅基流动SiliconFlow等国产 API 也作为 Key 类供应商直接注册在列。这套组合的实际效果是国产模型以最便宜甚至免费的身份成为回退链的兜底让订阅额度只服务于高质量请求而把长尾流量卸载给低成本国产模型。对开发者而言月成本可以压到订阅费以内甚至归零对生态而言GLM、MiniMax、DeepSeek、Qwen 这些国产底座通过一个本地网关被无缝接入全球主流编码工具绕开了工具不认国产 API的适配鸿沟——BaseExecutor 甚至支持自定义openai-compatible-*与anthropic-compatible-*端点任何自建或国产的兼容服务都能挂进路由池。结语从 one-api 的统一入口到第二代网关的价格与质量感知再到 9Router 的订阅额度调度 账号级回退 token 优化 协议翻译模型网关的进化主线始终是同一件事把碎片化的模型市场收敛成开发者无感的后端资源池。9Router 的特殊之处在于它把路由决策的输入从渠道权重扩展到了配额窗口、账号冷却、错误语义与 token 成本这些真正决定开发体验的变量并用国产模型的低价位重构了成本结构。当免费 回退 压缩三件套同时生效时网关就不再是基础设施而是开发者日常效率的一部分。【免费下载链接】9routerUnlimited FREE AI coding. Connect Claude Code, Codex, Cursor, Cline, Copilot, Antigravity to FREE Claude/GPT/Gemini via 40 providers. Auto-fallback, RTK -40% tokens, never hit limits.项目地址: https://gitcode.com/GitHub_Trending/9r/9router创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考