专栏目录

耗时一下午,我完成了 GPT Terminal,真实拥有了专归于我的 GPT 终端!

怎样用 GPT 在 5 分钟内 ”调教“ 出一个专归于你的 ”小黑子“?

怎样丝滑完成 GPT 打字机流式回复?Server-Sent Events!

我是怎样让我的 GPT Terminal “长记忆” 的?仍是老配方!

一个合格的类 GPT 运用需求具有什么?一文带你打通 GPT 产品功能!

开发一个 ChatGPT 真的仅仅当 “接口侠” 吗?GPT Terminal 细节分享!

怎样借助于 OpenAI 以指令的方法在 GPT 终端上画一只 “坤”?

不满足当 ChatGPT “接口侠”?轻松可视化 Fine-tuning 练习你的模型!

项目地址:github.com/ltyzzzxxx/g…

欢迎我们Star、提出PR,一起快乐地用 GPT Terminal 游玩吧~

前言

我们好,我是「周三不Coding」。

想来 GPT Terminal 现已好久没更新新功能啦,想到有些朋友仅是看过 GPT Terminal 的演示 Demo,可是还没有实际上手用过。为了让我们快速用上 GPT Terminal ,我决议将其布置到服务器上,让我们尽情地 “白嫖”,而不必亲力亲为地布置!

说干就干,我用了一下午的时间,总算上线了 GPT Terminal

线上地址:gpt-web-terminal.vercel.app/#/

  • 不限次数拜访。假如额度用完,请提示我更新 API Key

  • 出现 Mixed Content 报错,请查看本篇文章对应部分处理!

  • 假如还遇到其它 Bug,麻烦请留言一下或提一下 Issue,万分感谢!

接下来,我给我们分享一下我的布置进程!

布置计划

如下是我终究采纳的布置计划:

耗时一下午,我终于上线了我的 GPT 终端!(内含详细部署方案记录)

  • 前端Vercel 网站保管服务,一键布置免运维

    这绝对是一个神仙网站,假如小伙伴们不知道怎样用的话,能够去百度搜一搜学一学!超级好用!

  • 后端:经过 Docker 容器化,布置到国外云服务器,支撑拜访 GPT 服务

其实,一开始我预备经过微信云保管来布置后端。可是,经过了一番折腾并布置成功后,发现后端无法拜访到 OpenAI 服务。在网上查找了材料后,发现并没有微信云保管相关的处理计划,于是我最后只好抛弃啦~

布置记载

环境变量配置

开发环境与出产环境的后端地址、数据库地址不相同,因此需求进行区别。

  • 关于前端而言,经过在 Vercel 中配置环境变量,并修正前端代码中拜访后端的地址,经过变量名的形式获取环境变量,而非硬编码形式。

    耗时一下午,我终于上线了我的 GPT 终端!(内含详细部署方案记录)

  • 关于后端而言,经过区别当时环境,得到不同的配置文件

    如下代码坐落 server/src/config/getConfig.js 文件中

    let config;
    const env = process.env.NODE_ENV ?? "local";
    ​
    if (env === "local") {
     config = require("./config");
    } else {
     config = require(`./config.${env}`);
    }
    

配置 Docker

后端经过 Docker 容器化布置,如下为 Dockerfile 文件

  • 选用 node16 轻量级镜像
  • 选用 pm2 进行进程管理、性能监控等
# 运用官方 Node.js 轻量级镜像
# https://hub.docker.com/_/node
FROM node:16-slim
​
# 界说工作目录
WORKDIR /usr/src/app
​
# 将本地代码复制到工作目录内
COPY ./ ./
​
RUN npm install
​
# 安装 pm2
RUN npm install pm2 -g
​
# 发动服务
CMD pm2-runtime 'npm start'

经过如下指令构建镜像

docker build -t gpt-terminal-server

处理 Mixed Content 报错

前端经过 Vercel 布置,选用的是 https 协议;而后端是直接经过服务器进行布置,并未做 SSL 证书配置,仍为 http 协议。当布置后,前端拜访后端时,会报错:Mixed Content。

暂时运用如下计划处理:

  1. 点击 Site settings

    耗时一下午,我终于上线了我的 GPT 终端!(内含详细部署方案记录)

  1. 将 「不安全内容」「Insecure content」从 Block 更改为 Allow

    耗时一下午,我终于上线了我的 GPT 终端!(内含详细部署方案记录)

总结

这便是布置的悉数记载啦~

其实这个项目仍是比较简单的,经过 VercelDocker 容器化技术,很快就能够将网站上线。

可是为什么我还用了一下午呢?由于我最后想要配置 SSL 证书,用了比较久的时间,还出了点问题,目前还在处理中,但不影响终究运用哈哈哈哈~

这便是今日的悉数内容啦~

想要体验的小伙伴,能够点击这里拜访该 GPT 终端!不限次数运用!