Skip to content

Hermes 联动 Tenbox LLM代理多服务商降级切换 + 支持ChatGPT账号授权使用Codex额度 #147

@toyoungtime

Description

@toyoungtime

#Hermes 联动 Tenbox LLM代理多服务商降级切换 + 支持ChatGPT账号授权使用Codex额度

一、背景

  1. 当前 Hermes 配置文件内的默认 AI API Provider,仅与 Tenbox「LLM代理」配置页的 default 服务商一一对应;
  2. Hermes 配置中存在 fallback providers 降级服务商配置项,但该配置暂未和 Tenbox「LLM代理」页面内其余可选服务商做关联打通;
  3. 现有逻辑下,当默认服务商出现网络异常、中转服务失效、接口报错等故障时,Hermes 无法自动切换备用服务商;
  4. 额外需求:暂不支持通过登录 ChatGPT 账号授权,复用账号内 Codex 调用额度。

二、期望功能

  1. 打通 Hermes 配置 fallback providers 与 Tenbox「LLM代理」页面全部服务商选项,可在 Tenbox 可视化界面配置多套备用 API 服务商;
  2. Hermes 增加自动降级重试逻辑:当默认 Provider 出现网络超时、中转节点失效、接口返回异常等场景,自动按配置顺序切换至 fallback 服务商发起请求;
  3. 新增能力:支持绑定登录后的 ChatGPT 账号,授权读取并使用该账号下 Codex 调用额度,无需单独配置独立 API Key。

三、验收标准

功能1:fallback providers 联动 Tenbox LLM代理多服务商

  1. Tenbox「LLM代理」设置页除 default 默认服务商外,可多选/排序配置多个备用服务商,配置同步映射至 Hermes 的 fallback providers;
  2. Hermes 配置文件 fallback 列表修改后,Tenbox 前端页面可实时同步展示,双向配置生效;
  3. 支持自定义 fallback 切换优先级,排序顺序即为自动降级调用顺序。

功能2:API Provider 故障自动切换降级

  1. 默认服务商触发以下任意故障时,Hermes 自动停止当前请求、切换下一个 fallback 服务商重试:
    • 网络连接超时、DNS 解析失败;
    • 中转服务不可达、中转站宕机/限流;
    • API 返回 5xx/429/401 等服务异常、鉴权失败、额度耗尽报错;
  2. 降级切换过程日志可完整记录:包含故障服务商、报错原因、切换至的备用服务商、重试结果;
  3. 全部 fallback 服务商均失效时,抛出统一报错提示,告知所有可用代理均不可用;
  4. 单次会话内故障切换无需用户手动刷新、重新选择服务商,完全自动执行。

功能3:ChatGPT 账号授权使用 Codex 额度

  1. 新增 ChatGPT 账号登录入口,完成 OAuth/账号授权后,Hermes 可读取账号名下 Codex 可用额度;
  2. 无需手动填写独立 Codex API Key,授权后直接将该账号作为可选 LLM Provider;
  3. 调用 Codex 时消耗登录账号自身额度,额度不足时给出清晰提示;
  4. 支持解绑已授权 ChatGPT 账号,解绑后无法再复用 Codex 额度。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions