内置 79 条供应商路由覆盖不到的平台,可以在「接入」页手动添加自定义供应商——填几个字段,本地保存,立即生效。

什么时候需要自定义供应商

  • 你用的是某个内置目录里没有的中转站 / 自建网关
  • 你自己搭了一个 OpenAI 兼容或 Anthropic 兼容的服务(比如本地跑的模型网关)
  • 内置路由的上游地址变了,想临时用自定义的顶一下

怎么添加

在「接入」页或设置页找到「自定义供应商」区块,填四个字段:

字段说明规则
名称展示用的名字,随便填1–50 个字符
Slug代理路径里的标识,比如 myapi → 代理地址是 /api/proxy/myapi只能用小写字母、数字、连字符,2–31 位,不能和内置供应商的 slug 重名(重名会报 409 冲突)
API 地址上游服务的地址只需要填域名/路径部分(如 api.example.com/v1),会自动补全 https://;如果已经带协议前缀会原样保留
协议openaianthropic 二选一决定代理怎么解析响应来记账(提取 token 用量、模型名的字段格式不同);不影响请求本身的转发方式

保存后立即生效,不需要重启应用。

关于「协议」字段的一个常见误解

协议字段只影响记账时怎么解析响应,不会把你的请求从一种协议"翻译"成另一种协议。 代理对请求本体是纯透传——路径、method、body、query 原样转发给上游,不做任何协议转换。

也就是说:如果上游服务本身不支持某个端点(比如没实现 OpenAI 较新的 Responses API /v1/responses,只支持 Chat Completions /v1/chat/completions),选哪个协议字段都救不了——上游会直接因为端点不存在而报错。这种情况要去检查客户端(如 Codex / CC Switch)的协议模式设置是否匹配上游实际支持的端点,跟 Oxelia51 这边的配置无关。详见常见错误排查

API 地址的限制

出于安全考虑(防止代理被用来访问内网地址),自定义供应商的地址有几条硬性规则:

  • 必须是 https://http:// 只允许 127.0.0.1localhost(给本机自建服务用的例外)
  • 地址不能解析到内网 / 回环 / 链路本地地址(写入时会做校验并拒绝),本机例外除外
  • 地址里不能带用户名密码、query 参数或 fragment

如果保存时提示地址无效,先检查是不是踩了这几条规则之一。

保存失败怎么办

报错原因解决
Slug 格式错误用了大写字母、下划线,或长度不对改成小写字母/数字/连字符,2–31 位
Slug 冲突(409)跟某个内置供应商的 slug 重名换一个没被占用的 slug
地址无效不是合法的 https://(或本机 http://)地址,或带了不允许的部分按上面「API 地址的限制」核对
地址被拒绝(内网地址)解析出来的 host 是私有/回环地址,但又不是 127.0.0.1/localhost确认你填的是真实可从公网访问的上游地址

删除

自定义供应商可以随时删除;内置供应商不能通过这个入口删除(也不需要,内置的不占用你的自定义额度)。