在自己的机器上部署一个GPT简直太酷啦,因为模型数据缘故,所以这个机器人有时候傻傻的。。。
需要安装环境:python3.7 、Transformers==4.2.0、pytorch==1.7.0、nginx(映射网页文件)
我的系统:MAC m2
Mac默认是有一个Python在系统上,但是版本低,所以我们再安装个Python3的版本覆盖它太简单了我就不放出来了。
1.安装pytorch
然后开始安装pytorch==1.7.0+cpu,指令为:pip3 install torch==1.7.0+cpu torchvision==0.8.1+cpu torchaudio===0.7.0 -f https://download.pytorch.org/whl/torch_stable.html,然后报错,说是pip3的版本不够了按提示修改即可。
需升级下pip3,指令为:pip3 install --upgrade pip
通过pip3更新升级并成功 .
再继续执行此安装pytorch指令,还是报错,没有找到匹配的pytorch
升级成功以后继续安装命令还是有问题,此次的问题没有找到满意的安装版本,那就自己下载(通过网站https://download.pytorch.org/whl/torch_stable.html),下载后放入Download文件夹下
找到文件并执行命令安装下好的文件torch,命令:pip3 install /Downloads/torch-1.7.0-cp37-none-macosx_10_9x86_64.whl,安装成功。
2.安装torchvision
继续安装torchvision,还是报这个错
找不到此包的版本,再次已相同方式从网络上下载下来并安装torchvision,成功了!
3.安装orchaudio
继续安装torchaudio,成功!命令:pip3 install orchaudio===0.7.0 -f https://download.pytorch.org/whl/torch_stable.html
安装剩余的也都安装成功!
4.安装nginx
MAC没有宝塔的安装包(此处宝塔的目的也是运行nginx进行文件映射),所以安装nginx,yum命令没有,需要先安装brew
4.1安装brew
安装brew,命令为:/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
执行这个命令选择源开始安装,中间输入自己的开机密码
安装nginx,命令:brew install nginx ,报错了
输入brew -v
输入命令配置:git config --global --add safe.directory ....将上图指令提示的复制过来执行就好
再继续brew install nginx,成功!
4.2nginx的启动
打开nginx文件命令: open /opt/homebrew/etc/
启动nginx命令:nginx
输入启动指令,访问网址看是否成功没,默认8080,证明nginx下载安装成功!
4.3 nginx的配置
nginx配置的文件:open /opt/homebrew/etc/
修改nginx配置文件:vim /opt/homebrew/etc/nginx/nginx.conf
server {
listen 8080;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
# 配置文件位置
alias /你自己的路径文件/GPT2-chitchat-master/web/;
}
}
nginx配置完html页面,重新加载nginx的配置并启动:nginx -s reload。
5.代码WebSocket配置
在项目的web/js/index.js下找到这行代码,更改WebSocket地址为你自己的后台后端的ip地址。
修改interact.py里的代码,将服务器端WebSocket的ip改为你自己的ip。
6.启动python模型
执行启动python程序命令:python3 interact.py --no_cuda --model_path /model/model_epoch40_50w,报这个错:packaging.version.InvalidVersion: Invalid version: '0.10.1,<0.11'
执行命令:pip3 install packaging==21.3即可解决这个错误!
再执行执行python启动命令还是报错,找不到tensorboard模块。
再继续执行命令安装这个模块:pip3 install tensorboard 。成功了
继续执行python启动命令,继续报错,缺少sklearn模块,执行pip3 install scikit-learn,然后报超时了。
执行这个指令:pip3 --default-timeout=100 install scikit-learn -i Simple Index --trusted-host pypi.douban.com
然后执行python启动,命令: python3 interact.py --model_path model/model_epoch40_50w
就成功了!注意执行python运行命令需要在项目目录下。
然后刷新一下界面就连接上了,接着就可以对话了。
不容易啊,试错了无数次才成功!
本文是根据小傅哥的机器学习搭建GPT训练傻傻的机器人为学习资料。