ChatGPT部署笔记

由于根据8月施行的《生成式人工智能服务管理办法》,OpenAI公司训练的GPT系列模型产品属境外来源模型,内容无法管控,没有责任主体,所以针对ChatGPT目前仅支持两种部署方式(需注意规避风险):

  • 境外服务器部署

  • 境内局域网部署(使用转发接口)

正常来说,如果在境内部署一个网站,需要将域名、IP、负责人信息提交到工信部进行网站备案,且会不定时抽查网站内容是否合规。如果部署在境内则必须备案,如果网站内容是ChatGPT,则备案一定不会通过。。。

境外服务器部署

云服务器部署:

前提条件

  • 一台境外服务器,购置渠道不限,规格最低 1vcpu, 1G RAM;服务器物理地址尽量靠近香港、台湾、东南亚
  • 一个域名,注册渠道不限
  • 一个Cloudflare账户(免费提供SSL连接,CDN加速)
  • 准备好你的ChatGPT的API Key
  • 准备好运行在服务器上的应用程序(Github有很多开源项目)

你可能还需要学习一些

  • Docker虚拟化技术、常用命令
  • Node.js的大概工作原理、常用命令
  • Docker部署模式下,环境变量的设置

部署过程

以ChatGPT为关键词,可以在Github中找到众多优秀项目。挑选你最中意的一款GPT项目,进入到详情页面查看。

通常来说,绝大部分项目都是在Node.js框架下,以Vue、Typescript、Javascript语言编写的。可以详细阅读项目中Readme.md文档,详细描述了安装的步骤和过程,按顺序照做就好。一个项目中会为你提供多种安装方案,这里为你大概解释一下Docker安装的过程。

服务器准备好后,通过重置镜像,将系统重置为Unbuntu最新稳定发行版。版本号通常为20.04。然后你需要在这个系统中安装Docker服务。安装步骤请参考官方文档:https://docs.docker.com/engine/install/ubuntu/

回到你选择的项目页面,大部分项目都支持Docker部署(你可以在项目的文件列表中看到“Dockerfile”这个文件),确认支持后,在你的服务器端使用git命令将项目拖拽到你的服务器中。

这时你需要在你刚下载下来的项目文件夹中,修改“.env”环境变量文件,将你的API key替换其中。

然后按照项目中所给出的Docker build命令,来build一版Docker镜像。

Build完成后,使用docker run命令运行刚才build好的镜像。

这时你可以通过访问服务器IP来打开你刚刚部署好的网站项目了!

总结一下:准备系统 -> 安装Docker服务 -> git拉取项目文件 -> 修改环境变量文件 -> 使用Docker build镜像 -> 使用Docker run镜像 ->完成

使用CDN

为了加快访问速度,降低IP封锁风险,我们需要使用Cloudflare提供的免费CDN。它有庞大的IP库,它经由这些IP作为跳板访问目标服务器,避免了直接暴露目标IP,当某一IP不可用时,可自动更换其他IP。你需要做的是:

在你的域名注册商网站中,修改你的域名DNS服务器为Cloudflare指定的域名服务器。

在Cloudflare中添加解析记录,将域名指向你的服务器IP,并勾选“代理”

此时,访问你的域名,应该可以打开你的网站。

需要注意

如果部署过程中没有报错,但网站无法访问,可能是:

  • 端口被防火墙屏蔽,请到你的服务器提供商的网站中修改开放
  • Docker在build的时候,默认把容器暴露外网的端口设置为了3000或其他

使用云服务部署(Railway、Vercel、Sealos)

云服务部署更加简单,只需在云服务中注册一个账号,按文档操作即可。

境内局域网部署(使用转发接口)

前提条件

  • 一个域名,注册渠道不限
  • 一个Cloudflare账户
  • 准备好你的ChatGPT的API Key
  • 准备好运行在服务器上的应用程序

部署过程

与上面的方法大致相似,windows下也可以安装使用Docker,但我没使用过…最好还是使用ubuntu系统

Proxy搭建转发接口

详细部署过程请见:https://github.com/GoGPTAI/ChatGPT-Proxy

部署完成后,请修改.env环境变量文件中预留的转发url选项为你的url,测试网站是否可以正常运行

作者

刘天义

发布于

2023-09-01

更新于

2023-11-13

许可协议

评论