人工智能大数据,工作效率生产力
Ctrl + D 收藏本站,更多好用AI工具
当前位置:首页 » AI资讯

部署个人专属的ChatGPT应用教程

2024-05-23 65

由于使用 ChatGPT 有着极为苛刻的环境要求,不仅要求有魔法,还要有特定地区的魔法,并且还得开全局魔法,导致挺长时间以来,我都靠着镜像站来占便宜。

但随着越来越的多的镜像站 404 后,虽然我还可以访问,但团队里的挺多人并没有魔法,为了方便团队成员的使用,我寻思自己搭建一套,这样大家不用魔法也可以自由使用 ChatGPT,而且相当稳定。

1. 整体思路

准备一台国度之外的服务器,这台服务器要满足两个要求

  • 能流畅调用 Open API的接口,不会因为地区问题被禁用
  • 服务器的 IP 不在国度的黑名单上(咱在国度之内才能访问)

然后在这台服务器上,部署我们的 web 应用,并配置上我们的 API Key。

2. 环境准备

服务器我使用的狗云的,线路优质,关键价格便宜,如果你没有其他更好的选择,可以考虑下。

步骤很简单:

1、登陆/注册狗云:https://www.dogyun.com/?ref=230330

2、实名认证:必须步骤,认证后才购买

3、充值:和一般的网购逻辑不同,狗云是先充值再消费

4、购买:这个最重要,下面详细说一下

狗云上的服务器有两种:经典云和弹性云

它们有以下几个区别:

  1. 部署方式:经典云服务器是基于传统的物理服务器架构实现的,你需要需要通过控制台或 API 创建并分配固定数量的 CPU、内存和存储资源。而弹性云则是基于虚拟化技术构建的云服务器,它可以根据你的实际需求动态调整计算和存储资源。
  2. 灵活性:由于经典云服务器的资源分配是静态的,因此无法根据业务需求进行快速扩展或缩小,使得它的灵活性相对较为有限。而弹性云则可以在几分钟内调整计算和存储资源,以满足不同业务场景下的需求变化。
  3. 费用:经典云服务器通常比弹性云更便宜,因为它们的资源是固定的,管理成本也较低。但是,在实际的使用中,如果你需要频繁地调整资源,则可能需要购买更多的经典云服务器,这将增加你的使用成本。而弹性云则可以根据实际的资源需求付费,可以更好地控制使用成本。
  4. 安全性:经典云服务器由于缺乏弹性云的冗余和高可用性功能,因此可能会存在数据丢失和服务中断等风险。弹性云则具有多种安全和备份机制,可以提供更加可靠和稳定的云计算服务。

总的来说呢,弹性云具有更加灵活、高可用和安全的优势,但相对来说也更加昂贵。如果你需要稳定和可靠的计算资源,建议选择弹性云;如果你需要相对较低的成本和管理复杂度,可以选择经典云服务器。

我这边选择的是弹性云,节点选择丑国的,满足以上两个条件

部署个人专属的 ChatGPT 应用教程

配置选择最低配置的,反正不够用的话还可以扩展。

部署个人专属的 ChatGPT 应用教程

部署个人专属的 ChatGPT 应用教程

系统我选择 Ubuntu20 的,没有选择 CentOS,主要 CentOS 系统相对较老,怕遇见一些包的问题,增加部署难度。

部署个人专属的 ChatGPT 应用教程

总的算下来只需要一个月只需要 45 块钱的基础费用,流量有超过,要再额外扣费。ChatGPT 应用主要是文字,一般是够用的。

部署个人专属的 ChatGPT 应用教程

机器创建好后,需要等待一段时间才能启动,可以在控制台上看到公网 ip 和密码,没有写明 ssh 端口,那就是 22

3. 下载代码

ChatGPT 的镜像源码,我选择 yuezk/chatgpt-mirror ,github 上也有其他的模板,没有仔细去对比差异,只要能用即可。

使用 git 直接下载 gpt 镜像网站的代码

git clone https://github.com/yuezk/chatgpt-mirror.git 

进入 chatgpt-mirror 目录

cd chatgpt-mirror 

并新建一个 .env 文件,输入 OPENAI_API_KEY:可以前往 API-Keys(https://platform.openai.com/account/api-keys) 生成

OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 

4. 安装依赖

chatgpt-mirror 的运行需要有 nodejs 环境,因此我们要先安装一下nodejs 相关工具

1、安装 Node.js:首先,你需要安装 Node.js。这是因为 pnpm 是一个 Node.js 包管理器。你可以使用以下命令安装 Node.js:

sudo apt update sudo apt install nodejs 

2、安装 npm:pnpm 的安装需要使用 npm 命令,因此需要安装 npm 和 npx。

sudo apt install npm sudo npm install -g npx 

3、安装 pnpm:现在就可以使用 npm 来安装 pnpm。只需要使用以下命令即可:

sudo npm install -g pnpm 

为了避免出现一些问题,我们把上面安装的 npm 和 pnpm 都更新至最新版本

首先升级 npm

  1. 安装 n 模块:n 是一个 Node.js 版本管理器,可以帮助你方便地安装和管理不同版本的 Node.js。
  2. 安装最新版本的 Node.js:安装完 n 模块后,就可以在终端中运行以下命令来安装最新版本的 Node.js:
# 安装 n 模块:n 是一个 Node.js 版本管理器,可以帮助你方便地安装和管理不同版本的 Node.js sudo npm install -g n # 安装完 n 模块后,就可以在终端中运行以下命令来安装最新版本的 Node.js sudo n stable 

再升级 pnpm

sudo npm update -g pnpm 

5. 启动服务

一切准备就绪后,就可以使用如下命令来启动 web 服务

# 安装依赖 pnpm install # 编译 pnpm run build # 启动 $ pnpm run start:prod 

在你没有魔法的环境下直接访问 http://ip:3000 就可以看到熟悉的页面了,大功告成。

部署个人专属的 ChatGPT 应用教程

由于上面的目录是在当前终端运行的,当终端断开后,进程也会退出,因此最好使用 nohup 将其放在后台运行

nohup pnpm run start:prod > server.log 2>&1 & 

6. 优化事项

经过以上的步骤,我们已经拥有了一个私人的 ChatGPT 网站,只要你不对外推广,大概率就不会被 Q

拉起网站后,推荐再做一些优化:

  • 域名访问:购买一个域名,使用 nginx 进行反向代理
  • 进程守护:可以使用 systemd 或 supervisord来守护进程

不过由于我是内部小规模使用,并没有对外推广的打算,因此直接使用 ip+端口的方式进行访问,也省下了买域名的费用。

其他地址

  • Token 查询:https://platform.openai.com/tokenizer
  • https://juejin.cn/post/7206249233115643959#heading-6

原文链接:https://iswbm.com/756.html

相关推荐

阅读榜

hellenandjeckett@outlook.com

加入QQ群:849112589

回顶部