docs/deployment/cloud_deploy.md
对于没有本地服务器或希望快速体验的用户,云服务部署是一个极具吸引力的选择。通过云平台提供的容器化服务,您可以在几分钟内完成部署,无需关心底层运维,甚至可以获得免费的计算资源。本文将介绍几种主流的云部署方案,帮助您选择最适合自己的方式。
不同的云平台有各自的特点和适用场景。在选择之前,您可以参考下表进行比较:
| 平台 | 免费额度 | 部署难度 | 特点 | 适用场景 |
|---|---|---|---|---|
| Sealos | 赠送余额 | ⭐ 简单 | 国内访问快,支持自定义域名 | 国内用户首选 |
| HuggingFace Spaces | 免费 | ⭐ 简单 | 社区活跃,可直接 Fork | 快速体验、学习 |
| Railway | 免费额度 | ⭐⭐ 中等 | 自动部署,GitHub 集成 | 开发测试 |
| Render | 免费额度 | ⭐⭐ 中等 | 支持后台任务 | 长期运行服务 |
对于大多数国内用户,我们推荐使用 Sealos 进行部署,它提供了友好的中文界面和稳定的国内访问速度。如果您希望快速体验或参与社区交流,HuggingFace Spaces 是另一个不错的选择。
Sealos 是一个基于 Kubernetes 的云操作系统,提供了开箱即用的容器部署能力。它对国内用户非常友好,网络访问稳定,新用户注册即可获得免费余额。
访问 Sealos 官网 并完成注册。您可以使用 GitHub、微信或手机号登录。注册完成后,系统会自动赠送一定的免费额度,足够您运行 GPT Academic 数天。
登录后进入控制台,点击「应用管理」进入应用部署界面。Sealos 支持直接使用 Docker 镜像部署,这意味着您可以复用项目官方提供的镜像,无需重新构建。
在创建新应用时,填写以下核心配置:
基础配置:
gpt-academic(或任意您喜欢的名称)ghcr.io/binary-husky/gpt_academic_nolocal:master环境变量:
这是最关键的配置部分。您需要添加以下环境变量来配置 API 密钥和模型选项:
API_KEY=sk-your-openai-key-here
LLM_MODEL=gpt-3.5-turbo
AVAIL_LLM_MODELS=["gpt-3.5-turbo", "gpt-4", "qwen-max"]
WEB_PORT=12345
如果您使用国产模型(推荐国内用户),配置如下:
DASHSCOPE_API_KEY=sk-your-dashscope-key
LLM_MODEL=qwen-max
AVAIL_LLM_MODELS=["qwen-max", "qwen-turbo", "gpt-3.5-turbo"]
WEB_PORT=12345
!!! tip "使用国产模型的优势" 在 Sealos 上部署时,使用通义千问等国产模型无需配置代理,可以直接访问,配置更简单、响应更快。
网络配置:
12345(与 WEB_PORT 环境变量一致)完成配置后点击「部署应用」,Sealos 会自动拉取镜像并启动容器。整个过程通常需要 1-3 分钟。部署成功后,您可以在应用详情页看到系统分配的访问地址,点击即可打开 GPT Academic 界面。
如果您有自己的域名,还可以在「网络配置」中绑定自定义域名,使访问地址更加简洁易记。
HuggingFace Spaces 是 AI 社区最受欢迎的应用托管平台之一。它允许用户免费部署 Gradio 和 Streamlit 应用,并且可以直接 Fork 他人的 Space 进行二次开发。
最快速的方式是直接复制一个已有的 GPT Academic Space:
gpt_academicFork 完成后,您就拥有了一个属于自己的 GPT Academic 实例。但此时它还无法正常工作,因为您需要配置 API 密钥。
为了安全地存储 API 密钥,HuggingFace 提供了 Secrets 功能。进入您的 Space 设置页面,找到「Repository secrets」部分,添加以下密钥:
| Secret 名称 | 值 | 说明 |
|---|---|---|
API_KEY | sk-xxx | OpenAI API 密钥 |
DASHSCOPE_API_KEY | sk-xxx | 通义千问密钥(可选) |
添加完成后,重新启动 Space,系统会自动读取这些 Secrets 作为环境变量。
!!! warning "隐私提示"
请注意 HuggingFace Space 默认是公开的,任何人都可以访问。如果您担心隐私问题,可以将 Space 设置为私有(需要付费账户),或者使用 AUTHENTICATION 环境变量设置访问密码:
AUTHENTICATION=[["username", "password"]]
如果您希望从头创建 Space 或进行深度定制,可以使用 Dockerfile 方式部署:
Dockerfile 和必要文件HuggingFace 会根据 Dockerfile 自动构建镜像并部署。由于免费版资源有限(2 vCPU,16GB RAM),建议使用轻量级镜像,避免加载本地模型。
Railway 是一个面向开发者的云平台,以简洁的界面和 GitHub 集成著称。它提供每月 5 美元的免费额度,支持 Docker 镜像部署。
ghcr.io/binary-husky/gpt_academic_nolocal:masterRailway 的一大特点是支持直接从 GitHub 仓库部署。如果您 Fork 了 GPT Academic 仓库并进行了自定义修改,可以选择「Deploy from GitHub Repo」,Railway 会自动检测项目中的 Dockerfile 并构建部署。每次您向仓库推送代码,Railway 都会自动触发重新部署,非常适合开发迭代。
Render 是另一个受欢迎的云托管平台,提供免费的 Web 服务托管。与 Railway 类似,它也支持 Docker 镜像和 GitHub 仓库部署。
ghcr.io/binary-husky/gpt_academic_nolocal:master!!! note "冷启动问题" Render 免费版实例在闲置 15 分钟后会休眠,下次访问时需要等待约 30 秒的冷启动时间。如果您需要服务始终在线,需要升级到付费方案。
无论选择哪个云平台,部署完成后您可能还需要进行一些额外配置。
在公开的云环境中,建议设置访问密码保护您的服务。添加环境变量:
AUTHENTICATION=[["admin", "your-secure-password"]]
设置后,访问页面时需要输入用户名和密码才能使用。您可以设置多组账号密码,用于分享给不同的用户。
如果您同时拥有多个模型的 API 密钥,可以在 AVAIL_LLM_MODELS 中列出所有可用模型:
AVAIL_LLM_MODELS=["qwen-max", "gpt-4o", "gpt-3.5-turbo", "deepseek-chat", "glm-4"]
同时配置相应的 API 密钥:
DASHSCOPE_API_KEY=sk-xxx
API_KEY=sk-xxx
DEEPSEEK_API_KEY=sk-xxx
ZHIPUAI_API_KEY=xxx
这样用户就可以在界面中自由切换不同的模型,体验各家大模型的能力差异。
大多数云平台都支持绑定自定义域名。以 Sealos 为例:
chat.example.com)绑定自定义域名后,您可以使用更简洁的地址访问服务,也便于分享给他人。
请检查以下几点:
WEB_PORT 环境变量与暴露端口一致)在国内云平台上使用 OpenAI 等境外服务可能会有网络延迟。解决方案:
各平台的收费标准不同,您可以: