文档
历史档案候选与单体方案快照平台架构

独立网关与客户平台

隔离 new-api 上游升级与 OceanWay 深度定制的职责边界

历史方案:本页为恢复第一版多仓文档前的快照,不是现行任务或已实现能力。现行入口为平台架构

2026-09-12 用户明确希望保留基于 new-api 的独立网关,不承载终端客户;OceanWay 的模型请求通过网关执行。目的为网关持续跟踪上游更新,深度定制的客户平台独立演进。本页替代此前“最终合并供应管理、撤掉独立网关”的建议;不代表已经部署或迁移。

最新简化:客户平台直接二开一套 new-api,Core/Edge 为内部模块;API 规范随平台仓维护。独立供应网关继续跟随上游。见最终方案 v1.1

两条代码演进线

负责什么更新方式
OceanWay 客户平台登录、客户 Key、人民币充值、积分、零售/企业价格、订单、用量、产品业务可复用固定 new-api 后台能力并深度定制,按自身版本演进
new-api 供应网关渠道、供应商凭据、模型适配、路由、供应重试、流式及异步执行尽量保持官方代码,配置/插件/小适配优先,通过兼容验证升级

两边通过明确的调用协议协作,不共享数据库,不让 OceanWay 直接依赖网关表结构或内部 Go 包。已有新工作区仅是固定源码基线,尚未据此拆仓、部署或修改应用。

媒体经统一网关接入是目标;协议和插件适配尚待验证,不能据此宣称所有媒体模型已能透传。

“所有请求透传”的范围

所有对供应商的模型推理、生成、任务查询与结果访问,目标为统一经过网关。登录、客户管理、充值、订单、积分、企业价格、画布或商品数据仍由 OceanWay 的相应服务处理,不转交供应网关。

OceanWay 对模型请求仍要验证客户身份、决定可用模型与价格、预扣/结算积分、映射关联 ID。模型消息、工具参数和流式内容尽量保持原协议;不能把平台理解成无鉴权、无计量的裸转发器。

透明支持新模型也有边界:网关新增供应适配后,仍需核对对客模型标识、定价、调用协议及可用范围。出现新协议或新计量单位时,OceanWay 的计量与交互可能仍需适配。

网关无终端客户

不注册零售或企业终端客户,不承载其充值、协议价、Key 和钱包。网关只向 OceanWay 服务开放受控调用,保留内部运营账号和按环境/用途划分的服务账户或 Key。

尽量使用现有配置和接入控制关闭对客入口;不以删除上游用户、Token、计费代码来实现“纯网关”。new-api 的调用链仍依赖其鉴权和额度机制,应在隔离环境验证服务账户的额度、限制与费用配置。

网关内部服务账户记录的是平台与供应之间的调用/额度。它不等于客户账户,不按每个终端客户复制一个钱包。是否设置内部额度上限属于运行保护配置,不能通过关闭鉴权解决。

计费与用量

事实唯一责任方
客户充值与可用积分OceanWay
零售价、企业协议价与价格版本OceanWay
客户消费、补扣、释放和退款OceanWay
上游执行、供应路由与原始用量网关及相应供应服务
供应调用记录/可核验的成本依据网关;内部扣额未必等同真实供应成本
产品工作流和正式采用的结果产品业务服务

OceanWay 按模型实际计量事实和自己的客户价格结算,不能直接把网关扣额作为客户消费。网关日志/数据库不是客户钱包的第二数据源。

接口须约定 Token、缓存、图片、秒等实际计量维度、错误、部分输出和费用状态。某个协议不返回完整用量时,需要受控查询/计量补充;不得用估算静默冒充最终用量,也不因此全量下载网关日志逐条扫账。

调用与恢复协议

  1. OceanWay 建立稳定的客户请求/操作记录,锁定价格依据并完成必要预扣。
  2. 以内部服务凭据调用网关,关联平台请求 ID 与网关任务/请求 ID;不把客户 Key 当内部凭据。
  3. 流式响应边收边转发,保持结束/错误语义和背压,不全量缓冲;WebSocket、上传与结果下载分别核对。
  4. 获得最终用量后由 OceanWay 完成一次结算;断流、响应丢失、任务未知进入核查流程。
  5. 网关负责其供应重试,平台不能在已可能受理后盲目再提交;通用幂等、取消和恢复并非所有上游协议已具备。

单次供应任务由网关追踪,平台持有客户任务与业务关联。产品多步骤 Workflow、人工选择、批次和编辑操作不塞进网关。

Console 与运营入口

Console 仍承载全部客户管理。OceanWay Admin 优先客户、价格方案、积分、订单、费用核对和产品运营。

渠道、供应商凭据、模型适配、供应路由、任务插件和网关运行维护归供应管理端。首期建议沿用 new-api 原生内部后台,减少 UI 和私有管理 API 耦合;以后可在 OceanWay Admin 提供受权限约束的入口或只读摘要,不要求立即重做一份渠道编辑器。

三人团队采用独立内部账号,具体权限按实际职责确认;不默认共享 Root。客户身份不进入网关管理端。

升级边界

独立网关使追踪上游更容易,但不能保证上游更新无需验证。固定候选版本,按已使用协议验证模型列表、请求字段、流式/WebSocket、任务与结果、用量、错误及重试行为,再切流量。

兼容的网关升级不应要求重发客户 Key、迁移客户余额或重新部署产品业务。若后台只能靠网关内部表或管理 UI 私有字段工作,则说明边界还没有隔离好。

将价格/计量接口兼容测试与网关供应适配测试分开;失败时回退网关流量和版本,不回退客户账务事实。新模型上线仍需补对应价格与回归场景。

与现有系统的关系

  • sub2api 已确定迁移后退役,终端客户统一进入新 OceanWay。
  • uumi 目前仍有企业业务和大量供应配置;可作为过渡供应来源。
  • 长期保留的是“独立、接近上游的网关”这个职责。它可以从清洁 new-api 实例承接 uumi 的配置与必要能力;现有 uumi 是否直接演进为该实例,需要评估定制差异。
  • 不将继续保留现有 uumi 的全部代码或立刻停用旧服务视为本次决定。

下一步先完成一条文本流和一条媒体任务的接口/计量验证,再明确实际拆分与迁移。全部已有客户、历史余额和 Key 的迁移另做计划。

On this page