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

【详细教程】国内部署ChatGPT镜像网站

2023-08-26 174

【详细教程】国内部署ChatGPT镜像网站插图

文章目录

    • 一、准备阶段
      • 0、注册Open AI账号
      • 1、创建API密钥
      • 2、国内云服务器
      • 3、国外云服务器
      • 4、镜像网站代码
      • 5、效果
      • `重要:部署时会修改glibc库,为了防止云服务器被搞坏,请提前进行备份或者创建快照`
      • `重要:部署时会修改glibc库,为了防止云服务器被搞坏,请提前进行备份或者创建快照`
      • `重要:部署时会修改glibc库,为了防止云服务器被搞坏,请提前进行备份或者创建快照`
    • 二、开始部署
      • 1、部署HTTP代理
      • 2、安装nodejs环境
      • 3、安装pnpm
      • 4、更新make、gcc、g++
      • 5、安装Docker
      • 6、部署镜像网站
      • 7、使用反向代理部署网站

一、准备阶段

国内云服务器主要用来部署镜像网站,,国外服务器主要用来部署HTTP/HTTPS代理,因为目前国内环境访问Open AI的API服务器会有问题,所以最好有一个在美国的服务器,部署完成后就能达到快速访问ChatGPT的效果。

0、注册Open AI账号

参考链接:https://itlao5/10247.html

1、创建API密钥

参考链接:https://blog.csdn/weixin_44825557/article/details/129345140

2、国内云服务器

链接:【Tencent云服务器】

3、国外云服务器

V-u-l-t-r-服务器有些新地区刚开比较划算,性能基本能满足搭建梯子和HTTP代理

4、镜像网站代码

GitHub地址:chatgpt-mirror
蓝奏云:https://wwvb.lanzout/ik7Wy0tbx1vg 密码:ccng

5、效果

我是使用自己的域名部署了一个网站,可以直接在浏览器输入网址后访问,这里就不放出来了,因为我这种部署方式用的是自己的API密钥,目前免费额度只有5$ ,太多人用很快就没了,你们可以用自己的API key,这个会在后面讲到!!![/狗头保命]


重要:部署时会修改glibc库,为了防止云服务器被搞坏,请提前进行备份或者创建快照

重要:部署时会修改glibc库,为了防止云服务器被搞坏,请提前进行备份或者创建快照

重要:部署时会修改glibc库,为了防止云服务器被搞坏,请提前进行备份或者创建快照

二、开始部署

1、部署HTTP代理

在Vultr服务器上部署代理

yum install tinyproxy # 修改配置文件 # 可以修改listen的IP还有监听的端口 vim /etc/tinyproxy/tinyproxy.conf # 启动  systemctl start tinyproxy # 开机自启  systemctl enable tinyproxy 

2、安装nodejs环境

在云服务器上部署
该项目明确表明需要用到Node.js 18.x
否则构建时会出现问题

因为系统中不同的项目可能需要不同的Node.js版本,为了方便管理,安装nvm

# nvm允许您通过命令行快速安装和使用不同版本的node # 安装脚本: curl -o- https://raw.githubusercontent/nvm-sh/nvm/v0.39.3/install.sh | bash # 运行上述命令下载脚本并运行它。该脚本将 nvm 存储库克隆到~/.nvm,并尝试将下面代码段中的源代码行添加到正确的配置文件(~/.bash_profile、~/.zshrc、~/.profile或~/.bashrc)。 # 使配置生效 source .bashrc 验证: a:nvm ls-remote 查看所有可安装的node版本号 b:nvm install 13.0.0 安装13.0.0版本的node c:nvm install 15 安装15系列中最高版本的node 比如15系列有15.0.0, 15.0.1, 15.1.1, 15.1.2, 15.2.1, 15.3.0,那么最后安装的就是15.3.0 d:nvm install 14.2 安装14.2系列中最高版本的node e:nvm list 查看已安装的所有node版本以及默认的版本 f:nvm use 13.0.0 使用13.0.0版本的node g:nvm use 14.2 使用14.2系列的最高版本node h:nvm uninstall 13.0.0 卸载13.0.0版本的node # 安装对应版本node.js nvm ls-remote nvm install v18.16.0 

3、安装pnpm

安装好nvm和nodejs后

# 版本切换 nvm use 18.16.0 # 安装pnpm npm install pnpm -g # 环境验证 nvm list node -v npm -v pnpm -v 

4、更新make、gcc、g++

在上述步骤中会出现一些报错,例

node: /lib64/libm.so.6: version `GLIBC_2.27' not found (required by node) node: /lib64/libc.so.6: version `GLIBC_2.25' not found (required by node) node: /lib64/libc.so.6: version `GLIBC_2.28' not found (required by node) node: /lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by node) node: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by node) node: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by node) 

这是因为node.js 18.0依赖与高版本的glibc库,所以需要进行更新,从报错可知,我需要的最高版本为GLIBC_2.28,所有我需要安装这个版本

先更新gcc与g++,最新版的也不兼容,需要下载gcc-8.2.0

# 安装make wget ftp.gnu/pub/gnu/make/make-4.3.tar.gz tar -zxvf make-4.3.tar.gz cd make-4.3 ./configure --prefix=/usr type make make check make install # 安装gcc、g++  wget https://mirrors.tuna.tsinghua.edu/gnu/gcc/gcc-8.2.0/gcc-8.2.0.tar.gz tar -zxvf gcc-8.2.0.tar.gz cd gcc-8.2.0 # 下载gmp mpfr mpc等供编译需求的依赖项  ./contrib/download_prerequisites # 配置  mkdir build cd build ../configure --prefix=/usr/local/gcc-8.2.0 --enable-bootstrap --enable-checking=release --enable-languages=c,c++ --disable-multilib # 编译安装 需要很久很久很久 make -j 2 make install 

更新glibc库

wget ftp.gnu/pub/gnu/glibc/glibc-2.28.tar.gz tar -zxvf glibc-2.28.tar.gz cd glibc-2.28/ mkdir build cd build ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin make && make install # 查看文件软链接 ls -l /lib64/libc.so.6 # 再次查看系统中可使用的glibc版本  strings /lib64/libc.so.6 |grep GLIBC_ strings /usr/local/gcc-8.2.0/lib64/libstdc++.so.6 | grep GLIBCXX_ # 升级GLIBCXX cd /usr/local/gcc-8.2.0/lib64 strings ./libstdc++.so.6 |grep GLIBCXX_ cp libstdc++.so.6.0.25 /usr/lib64/ # 重新链接libstdc++.so.6 cd /usr/lib64/ rm libstdc++.so.6 -f ln -s ./libstdc++.so.6.0.25 ./libstdc++.so.6 # 查看可用版本 strings /lib64/libstdc++.so.6 |grep GLIBCXX_ 

5、安装Docker

因为我采用的是用docker容器的方式部署,所以需要安装docker

cd /etc/yum.repos.d/ wget https://download.docker/linux/centos/docker-ce.repo yum list docker-ce --showduplicates | sort -r yum install docker-ce-18.06.3.ce-3.el7 -y # 启动docker服务 systemctl start docker # 设置docker服务开机自启 systemctl enable docker 

6、部署镜像网站

git clone https://github/yuezk/chatgpt-mirror.git cd chatgpt-mirror # 新建一个 .env 文件,输入 OPENAI_API_KEY:使用自己申请的API密钥 OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # optional, support http or socks proxy # 代理配置 HTTP_PROXY=proxy-server-ip:port # 构建镜像 docker build -t chatgpt-mirror-test . # 运行容器 docker run -itd -p 0.0.0.0:3000:3000 --name chatgpt -h chatgpt -m 1024m --cpus=1 --env-file .env chatgpt-mirror-test 

此时输入IP:3000便可以访问网址,记得在云服务器管理后台开放该端口

若出现如下错误,可执行
pnpm install --no-frozen-lockfile

docker build -t chatgpt-mirror-test .

7、使用反向代理部署网站

此时可以将之前创建的容器进行删除,同时云服务器那边只需要开发80443端口

docker stop chatgpt && docker rm chatgpt # 启动容器 docker run -itd -p 127.0.0.1:3000:3000 --name chatgpt -h chatgpt -m 1024m --cpus=1 --env-file .env chatgpt-mirror 

使用宝塔后台添加网站
添加反向代理

此时直接访问配置好的网站名便可访问镜像网站。

原文链接:https://www.52dianzi.com/category/article/37/120101.html

相关推荐

阅读榜

hellenandjeckett@outlook.com

加入QQ群:849112589

回顶部