一天一个开源项目(第109篇):Sub2API - 一站式 Claude/OpenAI/Gemini 订阅转 API 中转服务
引言
“让 AI 订阅配额流动起来,让每一分成本都发挥最大价值。”
这是"一天一个开源项目"系列的第109篇文章。今天带你了解的项目是 Sub2API (也称为 CRS2)。
随着 Claude Code、GitHub Copilot 等原生工具的兴起,很多开发者手中都有多份 AI 订阅(如 Claude Pro、OpenAI Plus),但这些订阅往往有频率限制或配额闲置。如何把这些分散的订阅资源整合起来,并在不同工具、不同用户之间高效分摊成本?Sub2API 提供了一个完美的开源方案。
它不仅仅是一个简单的转发器,而是一个功能齐备的 API 代理平台,支持从账号管理、额度分摊到自动化计费、内置支付的全流程,特别适合团队共享、拼车或个人多账号整合。
你将学到什么
- Sub2API 的核心定位与解决的痛点
- 支持的主流模型与订阅类型
- 核心功能特性:多账号管理、智能调度、Token 计费
- 快速部署方式:脚本安装与 Docker Compose
- 如何利用 Sub2API 搭建自己的 API 中转服务
前置知识
- 了解常见 AI 模型的 API 使用(OpenAI, Claude, Gemini 等)
- 具备基础的 Linux 操作经验
- 了解 Docker 或容器化部署概念
项目背景
项目简介
Sub2API 是一个基于 Go 语言开发的 AI API 网关平台。它的核心逻辑是将来自各种渠道的 AI 订阅(包括 OAuth 认证账号、Session Key 或标准 API Key)进行“池化”管理。
通过 Sub2API,你可以:
- 聚合资源:将多个 Claude Pro 或 OpenAI 账号接入,统一对外输出 standard API。
- 分摊成本:支持拼车共享机制,通过内置的计费系统按量收费。
- 无缝使用:生成的 API 与原生工具(如 Claude Code, OpenClaw 等)无缝衔接,无需复杂的客户端配置。
作者/团队介绍
- 维护方:Wei-Shaw
- 生态项目:该项目拥有活跃的社区支持,包括移动端管理后台(sub2api-mobile)等周边生态。
项目数据
- 📄 核心仓库: Wei-Shaw/sub2api
- 🛠️ 技术栈: Go (Gin, Ent), Vue 3, PostgreSQL, Redis
- 📄 License: LGPL-3.0
- 📈 Stats: GitHub 22k+ Stars (注:可能包含历史库数据或高度关注度)
主要功能
核心作用
Sub2API 解决了 AI 资源利用中的“孤岛问题”:
上游账号池 (Claude, OpenAI, Gemini)
↓ 接入接入
Sub2API 平台层 (鉴权、计费、负载均衡、连接保持)
↓ 统一分发
下游应用 (IDE, Chat客户端, 脚本工具)
核心特性
- 多账号管理:支持多种上游账号类型,自动处理 Session 保持。
- 精确计费:Token 级使用跟踪和成本计算,支持自定义费率。
- 智能调度:支持粘性会话(Sticky Sessions)和负载均衡,确保长对话的连贯性。
- 内置支付系统:内置支持支付宝、微信、Stripe 等支付方式,支持用户自助充值。
- 并发控制与频率限制:针对用户和上游账号分别设置并发数和请求限制。
- 管理面板:提供直观的 Web UI 进行监控和管理。
快速开始
方式一:一键脚本安装(推荐)
适用于干净的 Ubuntu/Debian 系统:
curl -sSL https://raw.githubusercontent.com/Wei-Shaw/sub2api/main/deploy/install.sh | sudo bash
注意事项:
- 需要预装 PostgreSQL 15+ 和 Redis 7+。
- 脚本会自动创建 systemd 服务并安装二进制文件到
/opt/sub2api。
方式二:Docker Compose 部署
# 创建部署目录
mkdir -p sub2api-deploy && cd sub2api-deploy
# 下载并执行配置准备脚本
curl -sSL https://raw.githubusercontent.com/Wei-Shaw/sub2api/main/deploy/docker-deploy.sh | bash
# 启动服务
docker compose up -d
安装完成后,通过浏览器访问 http://YOUR_SERVER_IP:8080 即可进入管理后台。
项目详细剖析
架构设计:为什么这不仅仅是反向代理?
Sub2API 的设计重心在于 “账号状态管理”。传统的反代工具(如 Nginx)不具备理解应用层会话的能力。
-
粘性会话 (Sticky Sessions):
对于 Claude Code 等需要保持上下文连续性的工具,Sub2API 会通过 Header 中的session_id将请求锁定在特定的上游账号上,避免因切换账号导致的对话中断。注意:使用 Nginx 反向代理时,需开启
underscores_in_headers on;以支持 session 标头。 -
配额与池化逻辑:
系统会将多个账号抽象为一个“资源池”。当一个账号达到频率限制(Rate Limit)时,调度器会自动避开该账号,最大化提升整体可用率。 -
内置支付与用户体系:
大部分中转工具需要配合外部支付网关。Sub2API 选择了内置集成,极大地降低了中小团队或“拼车头子”运维系统的复杂度。
技术栈选型
- 后端: 使用 Go 语言保证了高并发处理能力及其部署的便捷性。
- 数据库: 选用 PostgreSQL 处理复杂的关联关系和计费记录。
- 缓存: Redis 用于请求频率限制和实时状态同步。
项目地址与资源
官方资源
- 🌟 GitHub: Wei-Shaw/sub2api
- 📖 官方文档: 项目仓库中包含详细的部署、支付配置及 API 使用指南。
- 🖥️ 演示地址: https://demo.sub2api.org/
适用人群
- AI 拼车主:希望分摊 Claude/OpenAI Plus 成本的组织者。
- 开发者/重度用户:希望整合多个账号配额,供日常原生工具使用的个人。
- 企业内测团队:需要在内部统一分发和审计 AI 资源使用情况的团队。
总结与展望
核心要点回顾
- 定位明确:专注于将订阅制配额转化为标准 API 服务。
- 一体化集成:管理、调度、计费、支付全流程闭环。
- 部署友好:支持脚本、Docker 等多种一键部署方案。
- 性能可靠:Go 语言后端配合 Redis/PostgreSQL,性能足以支撑中大规模分发。
一句话评价
Sub2API 是目前市面上将“资源聚合”与“商业化模型”结合得最紧密的开源 API 中转方案,是实现 “订阅自由” 的强力工具。
欢迎来我的个人主页找到更多有用的知识和有趣的产品
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐
所有评论(0)