零成本在Huggingface上部署CPA

  • 必须可以访问HuggingFace - 运行CPA
  • supabase - 持久化数据存储
  • hetrixtools - 保活HF的Space

很多做 AI 开发或重度使用模型的小伙伴,都在头疼一件事:

VPS 贵也就算了,关键是数据还不安全。

想用 Cherry Studio 聚合一下各个厂家的 API,结果发现电脑一关,服务就断。买个服务器专门挂中转?一年几百块又交了“智商税”。

今天我教你一招:利用 HuggingFace + Supabase,零成本搭建一个永不掉线的 API 中转站。

数据持久化,自动保活,甚至连二级域名都自带大厂权重。

01 架构降维:为什么这是目前最稳的方案?

直接在 HuggingFace 跑脚本,容器一重启,你的 API Key 和配置全得丢。

我们要玩就玩专业的:

  • HuggingFace Space: 充当免费服务器(运行 CLIProxyAPI)。
  • Supabase: 充当免费数据库(500MB 空间,存死你的配置和统计数据)。
  • HetrixTools: 充当“强心针”(防止 HF 容器自动休眠)。

省钱不是目的,利用顶级平台的免费资源构建稳固的私有服务,才是高级玩家的基操。

02 数据库排雷:Supabase 的“生死细节”

先搞定数据库,这是整个系统的“心脏”。

https://supabase.com

  1. 注册 Free Plan 登录, 点击 New Project,填写项目名称和数据库密码。
    🔒

    此内容已加密

    输入密码即可查看隐藏内容

数据库密码千万别加特殊字符(如 @、#、$)! 否则后面解析 DSN 时你会哭。只用字母和数字。

  1. 拿连接串: 点击 Connect -> Transaction pooler,复制那串链接。

灵魂操作: 在链接末尾强行加上 ?sslmode=require。

  • 连接字符串错一个字符,你的部署就会卡在“连接中”直到地老天荒。
  • "[YOUR-PASSWORD]"要替换成你的密码

例如postgresql://postgres.你的project-ref:你的密码@aws-0-us-west-2.pooler.supabase.com:6543/postgres?sslmode=require

🔒

此内容已加密

输入密码即可查看隐藏内容

03 极简部署:别被 Dockerfile 吓到

在 HuggingFace 新建一个 Docker Space

然后只需上传两个文件:

  1. Dockerfile: 不要装 Nginx!不要装 Nginx!不要装 Nginx!重要的话说三遍。HuggingFace 的 7860 端口只能给一个程序用,Nginx 会跟 API 程序打架导致崩溃。

照抄不改

FROM eceasy/cli-proxy-api:latest
USER root
# 安装必要依赖
RUN apk add --no-cache bash libc6-compat gcompat
WORKDIR /app
# 复制二进制文件
RUN cp /CLIProxyAPI/CLIProxyAPI ./cli-proxy-api && chmod +x ./cli-proxy-api
# 创建必要目录
RUN mkdir -p /tmp/.cli-proxy-api /tmp/logs /tmp/pg_cache/pgstore \  && chmod -R 777 /tmp
# 复制配置文件
COPY config.yaml /app/config.yaml
# 关键:程序启动时需要此文件,否则报错
RUN cp /app/config.yaml /app/config.example.yaml
ENV TZ=Asia/Shanghai
EXPOSE 7860
# 直接运行,不使用 Nginx
CMD ["./cli-proxy-api", "--config", "/app/config.yaml"]
  1. config.yaml

照抄不改

# 服务监听配置
host: "0.0.0.0"
port: 7860
# Supabase 连接(通过环境变量注入)
pgstore-dsn: "${PGSTORE_DSN}"
# 目录配置(使用 /tmp 避免权限问题)
auth-dir: "/tmp/.cli-proxy-api"
logging-to-file: true
logs-dir: "/tmp/logs"
# 管理后台
remote-management:
  enabled: true
  secret-key: "${MANAGEMENT_PASSWORD}"
# 性能配置
commercial-mode: true
debug: false

之后空间 Files 像这样

  1. 设置环境变量: 在 Space 的 Settings 里,把你的数据库链接和管理密码填进 Variables and secrets。其他环境变量照抄

New Secrets:

  • Name: PGSTORE_DSNValue: postgresql://postgres.xxx:密码@aws-0-us-west-2.pooler.supabase.com:6543/postgres?sslmode=require这是PostgreSQL 连接字符串,包含用户名、密码、地址、端口和数据库名
  • Name: MANAGEMENT_PASSWORDValue:(自己设置一个强密码)管理后台登录密码,用于访问CPA后台 /management.html

New Variables:

  • Name:MANAGEMENT_STATIC_PATHValue: /tmp管理后台静态资源的存储/读取路径
  • Name:PGSTORE_LOCAL_PATHValue: /tmp/pg_cachePostgreSQL 相关本地缓存或存储路径
  • Name:TZValue: Asia/Shanghai系统时区设定(中国标准时间)
  • Name:PORTValue:7860服务运行的端口号

配置环境就像拼乐高,只要模块对齐,剩下的就是见证奇迹的时刻。

保存后 Space 会自动重建,等待约 1-2 分钟。查看 Logs 标签,看到以下内容说明启动成功:

API server started successfully on: 0.0.0.0:7860
server clients and configuration updated: 0 clients (...)

04 落地验证:告别“冷启动”尴尬

部署成功后,直接浏览器访问 /management.html 就能进入后台。

https://[your_username]-[your_spacename].hf.space/management.html

🔒

此内容已加密

输入密码即可查看隐藏内容

输入前面设置的管理密码,就可以进入后台导入 JSON 认证文件(如 Qwen、Gemini、Vertex 等)

05 保活

https://console.cron-job.org/

HuggingFace 没人访问会“偷懒”休眠。去注册个免费监控,每 1 小时 ping 一次你的 Space 链接。

它不睡,你的服务就不倒。

白嫖的最高境界,是让平台以为你在正经办公,其实你在 24 小时收割生产力。

06 避坑指南

  • 文件格式 跑不起来大部分应该是编码格式的问题
  • 偷懒方案 复制这个Space吧 https://huggingface.co/spaces/TheNO5/CPA/tree/main
  • Settings里补上环境变量

    07 开始使用

    CLI Proxy API Management接入各个平台的api后就可以统一管理应用了,openclaw再接入CLI Proxy API就可以避免频繁更换各个不同平台api配置的烦恼

    Base URL:https://tianzijian-cpa.hf.space/v1

    API Key:在CLI Proxy API Management认证配置中设置的API 密钥

    apiProvider: "openai-compatible"

    查询支持的模型:curl https://tianzijian-cpa.hf.space/v1/models \
    -H "Authorization: Bearer sk-xxxxxxxx"

相关推荐

小米路由器AX3600 解锁SSH

小米AIoT路由器AX3600,是一台标准的Wi-Fi 6路由,采用高通第二代Wi-Fi 6方案,更加成熟。全套高通芯片,2.4GHz频段支 ...

OpenClaw 安全配置方案

1.  背景 OpenClaw作为一款功能强大的AI助手平台,在提供自动化服务的同时,其安全配置直接关系到企业数据安全和业务连 ...

暂无评论

发表评论