私有部署Sub2API + OpenWebUI实现chatgpt调用自由

由于国外AI模型禁止国内访问,所以很多比较好用的,比如codex、claude code(简称cc)编码能力很强的模型都无法使用,除了这些当然还有gpt5.5模型等等,都非常好用,我也一直在使用。

关于国外AI想法

当然我之前用的一直都是买的第三方,比如最开始直接买gpt的team号,或者有漏洞的plus号,主要是便宜,一个号大概5 ~ 10块/月不等,但是有较大概率的封号风险,很多人可能刚用一天就封了,毕竟不是正规渠道过来的号,正版订阅号太贵了,plus一个月得700,pro得1400了,一般人确实用不起。

但是基本上用上过,就知道有多香了,由于最近gpt官方对这些非正规渠道的账号,进行毁灭性打击,所以对很多号商造成了不小的损失,我之前买的两个plus号,都正常在用,没有被封过。

买这些号,也需要用VPN,如果VPN节点IP不干净,很可能就会封号,我用的VPN切换到美国节点,几乎没出过问题,最近也没啥号可以买了,所以目前找了一些提供中转的服务商,可以不用梯子,按照用量来计费,价格也还能接受,比较方便的是配置简单,而且可以直接用户codex cli客户端上,当然cc也可以,不过我没用,因为cc费用较高。

由于很多中转的号商会频繁调整API调用倍率,号池有时候也不稳定,调用人太多了,延迟会很高,这就导致我们这些用户要频繁切换,相当麻烦,所以我想着自己搭建一套,自己和对象用,毕竟从事互联网行业,肯定是避不开这些主流的AI工具,当然国内也有很多模型还不错,但是个人感觉还有很多不足。

所以我这几天一直在琢磨这个事儿,当然自己也部署了一些程序使用,最后才敲定了一套(Sub2API + OpenWebUI),也是我觉得从使用难易程度上综合考量的,先聊聊这两个东西是什么。

关于Sub2API

一站式开源中转服务,让 Claude、OpenAI 、Gemini、Antigravity订阅统一接入,支持拼车共享,更高效分摊成本,原生工具无缝使用。

也是一个热度非常高的应用了,Github有3.9K的star,很多中转站都使用它来提供中转服务。

它的主要特点是:订阅号配额分发 / 拼车工具,它可以:订阅号池化、额度分配、账号轮询、按 Token 分摊成本,可以用用 Plus 账号跑 API 工具。

这也是我比较看重的,让我去花大价钱买pro5x和pro20x我确实舍不得,但是plus有使用额度限制,所以我可以多买几个plus加进来,然后一起使用,就没这个烦恼了。

安装之前,先安装pgsql + redis,建议直接用宝塔面板,弄完之后docker部署Sub2API

docker run -d \
  --name sub2api \
  --restart always \
  --net=host \
  -p 8080:8080 \
  -e DATABASE_URL="postgres://postgres:yourpassword@127.0.0.1:5432/sub2api?sslmode=disable" \
  -e REDIS_URL="redis://127.0.0.1:6379/0" \
  -e ADMIN_USERNAME=admin \
  -e ADMIN_PASSWORD=yourpassword \
  -m 512m \
  --memory-swap 512m \
  weishaw/sub2api:latest
安装时出现pq: permission denied for schema public,宝塔打开终端,执行下面几个命令

/www/server/pgsql/bin/psql -U postgres -d sub2api

-- 给 postgres 用户授予 public 模式的所有权限
GRANT ALL ON SCHEMA public TO postgres;
-- 给 public 角色授予权限(防止其他问题)
GRANT ALL ON SCHEMA public TO public;
-- 把 public 模式的所有者改成 postgres
ALTER SCHEMA public OWNER TO postgres;  

关于NewAPI

这也是一款非常好用的工具,我也搭建使用过,不过它更多的是:通用 LLM API 网关,适合接入:API Key(OpenAI/Anthropic/DeepSeek 等),它更适合:多渠道 Key 统一管理、团队内部使用、搭建 API 服务。

这款工具使用场景更适合运营一个开放的API中转服务,我的需求只是服务我个人,显然Sub2API更适合我。

关于OpenWebUI

OpenWebUI 就是一个自托管的、像 ChatGPT 官网那样好看又好用的 AI 聊天界面 + 模型管理后台,可以对接 OpenAI、本地模型(Ollama)、NewAPI、Sub2API 等。

当然市面上有很多,比如NextChat、LobeChat等等,都是可以接入Sub2AI的,不过我觉得还是OpenWebUI最好用。

Docker部署命令如下:

docker run -d \
    --name openwebui \
    --restart always \
    -p 3000:8080 \
    -e OPENAI_API_KEY=你的中转key \
    -e OPENAI_API_BASE_URL=你的中转地址 \
    -m 1g \
    --pull always \
    ghcr.io/open-webui/open-webui:main

如果是国内机子,安装OpenWeUI会提示拒绝连接,把ghcr.io/open-webui/open-webui:main换成:chemeng/open-webui:main

聊聊我搭建方案

以上两款Sub2API和NewAPI都要搭建在国外服务器,需要避开被OpenAI官方限制访问的地区,所以我这里直接选择美国服务器,由于是个人使用,所以2H2G基本满足使用,我这里直接把Sub2API和OpenWebUI都部署在这台机子上,当然也可以把OpenWebUI部署到国内机子上,这都没啥影响。

搭建好,我使用下来,还算稳定,当然具体也要看你买的美国机子的质量。

以上环境都搭建好了,具体怎么配置使用,Sub2API都有说明,很简单,这里就不啰嗦了,至于plus号哪里搞,其实各大群应该都有很多推广的,买几个配置进去就可以用了,要特别注意VPN,不然号会封的很快。

现在我终于可以愉快的使用codex了,不用担心中转商突然不干或者服务不稳定带来的问题了。

😊
提交

评论区

共 61 条评论

  1. 头像
    噢,所以可以这么理解这个方案:Sub2API 用来把所有平台的订阅号池化,统一成一个 API。然后 OpenWebUI 来接入 Sub2API 提供的模型 API 作为 chatbot 的前端;其他 agent coding 的场景也是直接接 Sub2API 的提供的 API 端点是么?
    感觉方案还不错啊,比较适合有多平台订阅的用户。
    5月16日 广东
    1. 头像
      满心 博主
      @熊猫小A 对,大概就是这个意思,省的自己去调用第三方,我之前也是用第三方,各种倍率换来换去,而且动不动响应超时等等
      5月18日 湖北
  2. 头像
    花非花 Lv3
    重度用户啊,这一顿折腾
    5月16日 江苏
    1. 头像
      满心 博主
      @花非花 是啊,只为安心使用啊
      5月18日 湖北
  3. 头像
    刘郎 Lv5
    实际跑起来 应该很吃内存吧
    5月16日 贵州
    1. 头像
      满心 博主
      @刘郎 2h2g这一套够了,自己用肯定没问题,人多了就不行了
      5月18日 湖北
  4. 头像
    西风 Lv1
    不怕被封号吗, 我前几天 claude 刚被封了
    5月16日 英国
    1. 头像
      满心 博主
      @西风 用干净的点儿的梯子,我目前还没被封过号
      5月18日 湖北
  5. 头像
    xuan Lv1
    我最近用newapi搭了个中转站,目前还在找上游
    5月15日 福建
    1. 头像
      满心 博主
      @xuan 咸鱼上很多,不过要慢慢翻,毕竟平台有限制关键词
      5月18日 湖北
  6. 头像
    ymz316 Lv3
    我之前openclaw用几天就放弃了,这才又开始接触没几天,感觉连个cc都还没弄明白😬
    5月15日 湖南
    1. 头像
      满心 博主
      @ymz316 龙虾我是没用几天,又去用了最近出来几款工具,感觉都不太如意
      5月18日 湖北
  7. 头像
    看到你的博文,让我想起了小时候攒零花钱买零件组装收音机的日子。那种从无到有的成就感,至今难忘。
    5月15日 美国
    1. 头像
      满心 博主
      @fengc's Bl 那是啊,我高中的时候把家里的黑白电视机拆了然后组装
      5月18日 湖北
  8. 头像
    自建是最靠谱的
    5月15日 浙江
    1. 头像
      满心 博主
      @我是军爸 是的,自己用挺好的,别人的搞不好就跑路
      5月18日 湖北