Skip to content

Sub2API 0.2.16

Choose a tag to compare

@github-actions github-actions released this 13 Oct 12:24
00eebff

AI API Gateway Platform - 将 AI 订阅配额分发和管理

Important

本版本为 0.2.16:在完整保留 Fork 自有功能的前提下追平上游 Wei-Shaw/sub2api 的 main
(v0.2.16,Claude Haiku 5.5 与 Gemini 显式缓存),版本号沿用上游编号 0.2.16。
latest 与 0.2.16 均指向本版本。

0.2.16 大于此前的 0.2.15 / 0.2.14 / 0.2.13,应用内「检查更新」可正常提示升级。

Note

本次为 0.2.16(2026-10-13):在 0.2.15 的基础上,合并上游 main 的 47 个提交
(3a6fd1c9d → 4d9ac3e48)。发布产物为 Docker 镜像(GHCR + Docker Hub 双 registry),
Release 零附件。

移植来源

  • 来源一:上游 Wei-Shaw/sub2api 分支 main
    • 来源提交:4d9ac3e48(v0.2.16,2026-10-13);上次移植基准 3a6fd1c9d
    • 本次增量:47 个提交(含合并提交),213 个文件(+13886 / −727)
  • 新增迁移:无
  • 版本号:backend/cmd/server/VERSION 为 0.2.16

上游增量(v0.2.16)

Gemini 显式缓存(本次最大特性)

  • 支持显式上下文缓存:覆盖 AI Studio、Vertex 与自建网关上游(cachedContents)
  • 缓存存储价内置官方价,并按 Pro / Flash 系列兜底;3.6 Flash 兜底价改为官方优惠价
  • 缓存修改串行化、失败回滚;确定金额费用按 Key / 订阅预留
  • 缓存错误透传收窄到上游网关账号,延长沿用创建时的计费口径
  • 恢复流程区分「账号已删除」与「暂不支持缓存」;上游必已过期后作废意图
  • 引用缓存不存在的 403 不再停用账号并换号

Gemini / Vertex 账号能力

  • Vertex 账号支持 API Key 认证;Vertex 服务账号支持同步上游模型列表
  • 适配 AI Studio AQ. 格式 Key
  • 模型列表与模型详情接口支持 Agent Platform (Vertex) 账号
  • 第三方上游 API Key 与 Vertex 不再套用 AI Studio 等级和模拟配额
  • 界面显示名统一为 Agent Platform (Vertex)

网关与计费

  • 接入 Claude Haiku 5.5,并接入 Responses 桥接(含采样边界与默认模型配置修正)
  • Responses 到 chat 的兜底保留 Responses 语义;结构化输入回退增加不安全重试护栏
  • Antigravity 图片模型限流隔离
  • 账号计数、Bedrock 与重试耗尽入口把上游模型交给错误处理
  • 显式模型级 401 规则在网关故障转移入口生效
  • 识别国际版 coding 端点(配额)
  • Ops:Gemini 原生路由的网关本地错误按错误类型归类

其他

  • 分组名称与描述支持多语言(广场 Vary 保留 Origin,译文语言代码统一大小写)
  • 账号同步上游模型失败时显示后端返回的错误原因
  • 依赖安全更新:SheetJS、Vue 与 source-map 补丁
  • 前端:模型白名单回归用例纳入 CI

Fork 侧保留与合并处理

本次合并共 24 个冲突文件,全部按「保留 Fork 行为 + 采纳上游新增」处理:

  • ent 生成代码:ent/migrate/schema.go、ent/runtime/runtime.go 由 go generate ./ent
    按合并后的 schema 重新生成(groups.i18n 字段加入后列索引整体位移,手改极易静默错位)。
    生成结果与生成器幂等,未引入仓库既有形态之外的新文件。
  • wire_gen.go:provideCleanup 实参按函数形参顺序取两侧并集(57 个实参),
    补入上游新增的 geminiCachedContentService。
  • gateway_usage_billing.go:采纳上游的 recordUsageMultipliers / recordUsageBillingModel
    辅助函数,并把 Fork 的账号级分组倍率(account.UserGroupRateMultiplier())、
    宿主工具基准倍率 baseMultiplier 与 withModelBillingConfig 策略快照恢复进去。
  • gemini_messages_compat_service.go:Fork 的 SelectAccountForAIStudioEndpoints /
    ForwardAIStudioGET 已被上游的 SelectAccountForModelsEndpoints / ForwardListModels
    取代,删除重复实现;并把 Fork 的 projectGeminiLaneSelection(代理车道投影)接到上游选号函数上,
    车道语义不丢。gemini_v1beta_handler.go 保留 Fork 的 API Key 并发槽保护。
  • openai_account_runtime_block_fastpath.go:保留 Fork 直调策略主体的写法(调用方已重置
    401 连击),同时采纳上游的临时不可调度作用范围(scope)判定。
  • openai_gateway_responses_chat_fallback.go:保留 Fork 的 DeepSeek 原生 compaction
    改写分支,startTime 跟随上游改为形参传入。
  • scheduler_cache.go:候选投影键取并集(Fork 的 model_mapping_mode + 上游 Gemini 显式缓存键)。
  • available_channel_handler.go:userAvailableGroup 采纳上游的 i18n 字段,
    toUserAvailableGroup 同步带上,保证分组文案本地化不丢。
  • model_plaza_handler.go:上游的语言本地化包装与 Fork 的用户禁用模型过滤合并为
    toLocalizedModelPlazaGroups(..., deniedModels)。
  • usage_handler.go:观察者分支保留 Fork 的管理端 DTO,并补上 Localized(新增
    AdminUsageLog.Localized),满足「用户侧分组 DTO 必须本地化」的上游守卫测试。
  • 其余(admin_group.go、dto/types.go、dto/mappers.go、account_test_service.go、
    repository/wire.go、前端 i18n 与各 spec)均为并集。

验证

  • 本地校验(Linux,Go 1.27.2 / Node 22):
    • 后端:go build ./...、go vet ./...、gofmt -l 全部通过;
      go test -tags=unit ./... 全绿
    • 前端:vue-tsc --noEmit 0 错误、eslint . --max-warnings 0 0 problem、
      关键清单 vitest 80 个文件 / 1390 个用例全部通过
  • 工作树检查:无残留冲突标记,git status 干净
  • 未包含:backend/config/config.yaml(上游/ranxi 误提交的线上部署配置,含明文凭据,
    本仓无任何引用,持续不引入)

升级说明

  • 升级方式:管理后台左上角「检查更新」一键升级;或
    curl -sSL https://raw.githubusercontent.com/ziyue67/sub2api/v0.2.16/deploy/install.sh | sudo bash -s -- upgrade
  • 回滚方式:install.sh rollback <version>
  • Docker:docker pull ghcr.io/ziyue67/sub2api:0.2.16
  • 镜像只提供 linux/amd64 单架构,标签 0.2.16 / 0.2.16-amd64 / latest
  • 数据库迁移:本版本不含新增迁移;升级前请备份数据库
  • 安装脚本与在线更新服务的默认仓库为 ziyue67/sub2api

Fork 自有功能

  • Codex 292 门票(x-codex-turn-state)打票与注入、上游剩余额度探测、账号代理车道
  • 管理员请求采集、凭证守护、账号质量运维、Excel / BPS 协议
  • Mihomo 托管 / 动态代理区域、Pelican 定时演练、图片创作 / 画布 / Studio Bridge
  • 邮件广播、模型广场、Claude 重置额度查询、网站工单、账号运维告警、受控渠道实验
  • 发布流水线:双 registry 推送;latest 只由 Release 写;二进制归档停发

Docker 镜像(ziyue67/sub2api)

ziyue67/sub2api:latest
ziyue67/sub2api:0.2.16
ghcr.io/ziyue67/sub2api:latest
ghcr.io/ziyue67/sub2api:0.2.16

拉取示例:

docker pull ziyue67/sub2api:0.2.16
docker pull ghcr.io/ziyue67/sub2api:0.2.16

文档