接入的模型和供应商多了,日常维护常常要在几个地方来回查:哪个账号还有额度,某个模型走了哪些路由,新模型应该用哪个接口。出门没带电脑时,临时处理配置也不方便。

OctaFuse Gateway 2.12.0 让这些操作更直接:在后台区分账号、查询额度、查找路由,在客户端读取模型支持的调用入口,也能用手机或平板处理常见的管理任务。

01|供应商管理优化:账号分类、额度查询

同一平台接了多个账号,配置路由或排查日志时,就需要分清具体用的是哪一个。现在可以把平台和用途分开标明:比如图中的两个 ZenMux 账号分别叫 Production 和 Testing,后续在路由、调试台和日志里,都能同时看到平台和账号别名。

在供应商(Providers)页面新增或编辑账号时,选择供应商类型、填写别名即可。别名只需在同一类型内保持唯一,不同平台可以使用相同别名。想再添加一个账号,也可以从目录再次导入该平台;系统会新建账号,重名时自动追加序号。

只改类型或别名时,不用重新填写 API Key。编辑窗口默认隐藏密钥,需要时再查看或复制。

供应商账号编辑窗口设置 ZenMux 类型与别名,下方卡片显示同一平台的两个不同别名账号

同一 ZenMux 平台下,两个账号分别用 Production 和 Testing 区分用途。图片中的别名是替换后的示例,接口地址已遮蔽,API Key 保持隐藏。

不用逐个平台查余额

请求突然失败,想先确认是不是余额或套餐额度用完了,可以直接点击供应商卡片上的“额度(Quota)”。对于支持查询的平台,只要选对供应商类型、配置好有效密钥,就能在当前页面查看结果。

按量付费账号可以查看余额,套餐账号则可能显示 5 小时、周或月等周期的用量和重置时间,具体取决于平台提供的数据。查询结果实时从上游获取,只用于展示,不会保存到 Gateway 数据库。

供应商卡片上的 Quota 查询入口,以及不同供应商返回的余额和周期配额示例

从供应商卡片进入额度查询,查看余额或周期用量。图中展示了不同账号的三种查询结果,账号别名已遮蔽。

首批支持 DeepSeek、Moonshot AI、SiliconFlow(含国际版)、OpenRouter、Novita AI、DeepInfra、阶跃星辰、Vercel AI Gateway、OpenCode Go、MiniMax Token Plan,以及智谱和 Z.AI 的 GLM Coding Plan。

02|路由配置工作台升级

某个模型需要换上游,或某个平台出现异常时,通常要先找到相关路由。路由多了,逐个翻找既费时,也容易漏掉。

现在可以直接搜索模型、上游模型名或供应商;想集中查看同一平台的路由,再用供应商类型筛选缩小范围。批量浏览时切到“精简”,核对配置时切到“详细”,展示密度会保存在当前浏览器。

路由页面展示搜索框、供应商类型筛选菜单和详细展示模式

图中已筛选大语言模型(LLM),展开的“供应商类型”菜单仍选中 All;右侧可搜索路由、切换展示密度。

启用粘性路由后,如果想知道绑定集中在哪个上游账号,现在可以直接看路由卡片:路由组标签显示绑定总数,每条路由显示自己的有效绑定数量,悬停还能查看组内占比。

停用一条路由后,如果仍有未过期的绑定,页面也会提醒。这里统计的是有效绑定关系,不是实时在线人数、并发数或请求量。

路由组显示粘性绑定总数,两个上游目标分别显示各自的有效绑定数量

图中粘性有效期为 1 小时,可从路由组和各目标卡片查看绑定情况;供应商账号别名已遮蔽。

03|模型接口增强:明确入口协议与端点

如果你在给门户、SDK 或客户端接入模型,只拿到模型 ID 还不够:文本请求走 Chat Completions 还是 Responses?音频模型支持语音识别还是语音合成?这些信息如果写死在客户端里,每次新增模型或调整路由,都要再维护一遍。

2.10.0 已经能通过 GET /v1/models 查询文本入口。2.12.0 进一步补上图片生成、图片编辑、语音转写和语音合成,并让公开目录 GET /catalog/models 返回相同结构的 inbound。接入方可以读取其中的协议(protocol)和操作类型(operation),动态选择自己支持的调用端点。

例如,查询到一个语音合成模型时,/v1/models 会返回这样的入口信息(省略其他字段):

{
  "id": "example-tts",
  "model_info": {
    "inbound": [
      { "protocol": "openai", "operation": "audio.speech" }
    ]
  }
}

客户端识别出 openai 协议下的 audio.speech,就知道应调用 POST /v1/audio/speech;门户也能据此显示“语音合成”标签,不必根据模型名称猜用途。

这些入口来自当前可见路由组中的活跃路由。客户端仍需实现对应协议,并自行选择使用哪个入口;返回顺序不表示推荐优先级。

接入图片或音频能力时,查询 /v1/models 要带上类型参数:kind=image 获取图片模型,kind=audio 获取语音转写和语音合成模型,kind=all 获取全部类型。不传时仍只返回文本模型。

客户端刷新模型列表也不再消耗用户或 API Key 的 RPM。即使已经触发限流或用尽额度,只要 API Key 有效,仍能读取列表,保留模型选择和能力展示。

04|支持响应式界面

出门没带电脑,临时需要查额度、改路由,以前即使用手机或平板打开后台,也可能因为界面不适配而难以操作。2.12.0 改善了窄屏布局,现在用手机或平板就能查看运行状态、处理常见配置,必要时还能进入调试台或模拟器验证请求。

小屏幕上,导航收进侧边菜单,次要筛选按需展开,为当前操作留出更多空间。

手机端管理后台的仪表盘、供应商导入、模型列表、调试台与模拟器界面

手机端的五个常用界面。图中账号、域名、密钥片段和运营数据已遮蔽。

05|其他更新

场景 本次变化
流式调试 修复调试台(Playground)和模拟器(Simulator)接收流式内容时整页跟着滚动的问题,现在只滚动结果区域。
长流式请求 模型开始输出后,如果中途需要继续推理或检索,两次上游数据之间的默认等待从 30 秒延长至 90 秒,减少短暂停顿导致的中断。
模型信息 读取模型价格时,model_info.pricing_profile 直接返回对象或 null,无需再次解析 JSON;vendor 为空时统一返回 other。
配置显示 修复供应商 Gemini 端点示例中的占位符显示问题。
新增模型预设 MiMo 系列新增 mimo-v2.6-pro、mimo-v2.6-flash、mimo-v2.6-pro-ultraspeed;另新增 gpt-6-sol、gpt-6-luna、claude-opus-5-5、grok-4.7。

需要使用这些新模型时,从目录导入并配置路由即可,预设已包含 USD / CNY 价格。导入不会覆盖已有的同 ID 模型。

升级到 2.12.0

升级前先备份数据库,执行本版新增的迁移 0029_provider_kind,再将 Proxy 和 Admin 更新至 2.12.0。使用 D1 的部署需注意:迁移会重建并复制供应商、路由和粘性绑定相关表,期间应避免写入。

升级后,按自己的使用情况检查以下三项:

  1. 管理已有供应商账号:原有路由可以继续使用,但账号仍处于未分类状态。编辑账号并选择正确类型后,才能按类型筛选;支持查询的平台在配置有效密钥后,还可查看额度。
  2. 模型列表接入代码:如果此前对 model_info.pricing_profile 固定执行 JSON.parse,需要改为直接读取对象,并处理 null。
  3. 流式超时配置:已配置的 STREAM_IDLE_TIMEOUT_MS 继续生效;未配置时,采用新的 90 秒默认值。

完成后,试一次额度查询和路由筛选,核对模型列表返回的入口能否正常调用,再测试一条长流式请求。

完整变更与升级说明见 GitHub Release v2.12.0 和 更新记录。

如果 OctaFuse 对你的项目有帮助,欢迎在 GitHub 上点一个 Star,也欢迎反馈账号管理、路由配置和客户端接入中遇到的问题。