范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

部署教程基于GPT2训练了一个傻狗机器人ByChatGPT技术学习

  作者:小傅哥
  博客:https://bugstack.cn
  沉淀、分享、成长,让自己和他人都能有所收获!
  首先我想告诉你,从事编程开发这一行,要学会的是 学习的方式方法 。方向对了,才能事半功倍。而我认为最快且行之有效的技术技能学习,就是上手实践。先不要搞太多的理论,买回来的自行车不能上来就拆,得先想办法骑起来。
  所以小傅哥就是这样,学东西嘛。以目标为驱动,搭建可运行测试的最小单元版本。因为康威定律说;问题越小,越容易被理解和处理。所以在接触 ChatGPT 以后,我时常都在想怎么自己训练和部署一个这样的聊天对话模型,哪怕是很少的训练数据,让我测试也好。 所以这个会喷人的傻狗机器人来了! 一、傻狗机器聊天
  在基于前文小傅哥《搭个ChatGPT算法模型》的学习基础之上,以 OpenAI 开源的 GPT-2 和相关的 GPT2-chitchat 模型训练代码,部署了这个会喷人的傻狗机器人。但由于训练数据的问题,这个聊天机器人对起话来,总感觉 很变态 。—— 不过不影响我们做算法模型训练的学习。
  此页面为小傅哥所编程的WEB版聊天对话窗口访问地址 :http://120.48.169.252/ - 服务器配置有限,不能承载过大的并发访问。视频演示 :https://www.bilibili.com/video/BV1LG4y1P7bo - 也可以通过B站视频,观看GPT2模型部署演示。二、基础配置环境
  OpenAI GPT2 的模型训练和服务使用,需要用到 Python、TensorFlow 机器学习等相关配置,并且这些环境间有些版本依赖。所以为了顺利调试尽可能和我保持一样的版本。如果你对环境安装有难度,也可以找小傅哥帮忙买一台云服务器,之后我把我的环境镜像到你的服务器上就可以直接使用了。以下是所需的基本环境、代码和数据。 系统配置 :Centos 7.9 - 2核4GB内存200G磁盘4Mbps带宽的云服务器 部署环境 :Python3.7、 Transformers==4.2.0、pytorch==1.7.0模型代码 :https://github.com/fuzhengwei/GPT2-chitchat - 此代码已开源,含websocket通信页面模型数据 :https://pan.baidu.com/s/1iEu_-Avy-JTRsO4aJNiRiA - ju6m 1 环境依赖yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel  yum install gcc -y  yum -y install libffi-devel  make  make altinstall  2 Python 3.7cd ~  # 1.下载Python安装包 wget https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tgz  # 2.将安装包移动到/usr/local文件夹下 mv Python-3.7.4.tgz /usr/local/  # 3.在local目录下创建Python3目录 mkdir /usr/local/python3  # 4.进入的Python安装包压缩包所在的目录 cd /usr/local/  # 5.解压安装包 tar -xvf Python-3.7.4.tgz  # 6.进入解压后的目录 cd /usr/local/Python-3.7.4/  # 7.配置安装目录 ./configure --prefix=/usr/local/python3  # 8.编译源码 make  # 9.执行源码安装 make install  # 10.创建软连接 ln -s /usr/local/python3/bin/python3  /usr/bin/python3  # 11. 测试 python3 -V 3. 安装pip3cd ~  # 1.下载 wget https://bootstrap.pypa.io/get-pip.py  # 2.安装;注意咱们安装了 python3 所以是 pyhton3 get-pip.py python3 get-pip.py    # 3.查找pip安装路径 find / -name pip    # 4.将pip添加到系统命令 ln -s  /usr/local/python/bin/pip /usr/bin/pip      # 5.测试 pip -V    # 6.更换源,如果不更换那么使用 pip 下载软件会很慢 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple pip config set install.trusted-host mirrors.aliyun.com pip config list    # pip国内镜像源:  # 阿里云 http://mirrors.aliyun.com/pypi/simple/ # 中国科技大学  https://pypi.mirrors.ustc.edu.cn/simple/ # 豆瓣 http://pypi.douban.com/simple # Python官方 https://pypi.python.org/simple/ # v2ex http://pypi.v2ex.com/simple/ # 中国科学院  http://pypi.mirrors.opencas.cn/simple/ # 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/   4. 安装gitcd ~  # 1.安装前首先得安装依赖环境 yum install -y perl-devel  # 2.下载源码包到 CentOS 服务器后进行解压 tar -zxf git-2.9.5.tar.gz  cd git-2.9.5  # 3.执行如下命令进行编译安装   ./configure --prefix=/usr/local/git  make && make install  # 4.添加到系统环境变量 vim ~/.bashrc  export PATH="/usr/local/git/bin:$PATH"  # 5.使配置生效 source ~/.bashrc  # 6.测试 git version 5. 安装宝塔yum install -y wget && wget -O install.sh https://download.bt.cn/install/install_6.0.sh && sh install.sh 12f2c1d72 安装后登录宝塔提示的地址,默认它会使用8888端口,因此你需要在服务器上开启8888端口访问权限。 宝塔的安装是为了在服务端部署一个网页版聊天界面,使用到了 Nginx 服务。这里用宝塔操作更加容易。 三、模型运行环境
  模型训练需要用到 transformers 机器学习服务,以及 pytorch、sklearn 等组件;以下内容需要分别安装; transformers==4.4.2 pytorch==1.7.0 sklearn tqdm numpy scipy==1.2.1 1. transformerspip install transformers==4.4.2 2. pytorchpip install torch==1.7.0+cpu torchvision==0.8.1+cpu torchaudio===0.7.0 -f https://download.pytorch.org/whl/torch_stable.html 这个torch版本+cpu与torchvision 需要匹配。 3. 其他安装
  剩余的按照使用指令 pip install 就可以,另外在运行 GTP2-chitchat 时,如果提示缺少了某些组件,直接使用 pip 按照即可。 四、聊天页面配置
  这里先把小傅哥给你准备好的websocket页面代码,通过宝塔创建站点后部署起来。代码:https://github.com/fuzhengwei/GPT2-chitchat/tree/master/web
  之后通过打开你的宝塔地址,创建站点和上传Web代码。
  注意 :目前的这份代码中访问websocket的配置在index.js中,你需要修改成你的服务器地址。 if(!window.WebSocket){  alert("您的浏览器不支持WebSocket协议!推荐使用谷歌浏览器进行测试。");  return; } socket = new WebSocket("ws://120.48.169.252:7397"); 五、模型训练部署1. 下载代码cd /home  git clone https://github.com/fuzhengwei/GPT2-chitchat.git
  你需要修改下 interact.py 代码,变更这里有Websocket 的 IP和端口配置; async def start_server():     try:         async with websockets.serve(server, "192.168.0.4", 7397):             print("Starting server at ws://localhost:7397")             await asyncio.Future()  # run forever     except OSError as e:         print(f"Error starting server: {e}")     except Exception as e:         print(f"Unexpected error: {e}") 2. 上传模型
  下载模型:https://pan.baidu.com/s/1iEu_-Avy-JTRsO4aJNiRiA#list/path=%2F - 密码:ju6m
  上传模型:这里你需要在本机安装一个 SFTP 工具,或者使用 IntelliJ IDEA 提供的工具进行链接。链接后就可以把解压的模型上传到 /home/GPT2-chitchat/model 下。 async def start_server():     try:         async with websockets.serve(server, "192.168.0.4", 7397):             print("Starting server at ws://localhost:7397")             await asyncio.Future()  # run forever     except OSError as e:         print(f"Error starting server: {e}")     except Exception as e:         print(f"Unexpected error: {e}")
  修改这部分代码的IP和端口,以及在云服务上开启 7397 的访问权限。另外为了安全起见,可以在云服务的防火墙IP来源中授权,只有你当前的台机器才可以链接到 websocket 上。 3. 启动服务
  这里小傅哥通过 mac nuoshell 连接工具,进行模型启动; 模型路径:/home/GPT2-chitchat/model/model_epoch40_50w python3 interact.py --no_cuda --model_path /home/GPT2-chitchat/model/model_epoch40_50w
  启动后就可以把你的 websocket 页面打开了,它会自动的链接到这个 websocket 服务上。 如果你还需要 Socket 或者命令行的服务,也可以修改 interact.py 代码进行处理。
  以上就是整个 GPT2-chitchat 一个闲聊模型的部署,你也可以尝试使用 Docker 部署。如果在部署过程中实在很难部署成功,也可以找小傅哥买云服务,这样我可以直接把镜像部署到你的云服务上,就可以直接使用了。

他16岁入伍,曾任陕西省长,在纪委工作时严抓贪污腐败,享年89岁在1986年到1989年间,陕西接连遭遇大旱,降雨量少的可怜,大批动植物因缺水而亡,原本滔滔不绝的大河一度断流。但奇怪的是,陕西的粮食产量非但没有下降,反而一直在增加,老百姓的生活魔术师一家近照,63岁战胜hiv,两个儿子反差大,养女很漂亮这个时代的NBA门面人物,是詹姆斯和库里,一个是巅峰20年的常青树,一个是引领小球时代的神射手,打法不同,却碰撞出精彩的时代。再往前还有科比乔丹魔术师等传奇球星,其中魔术师是80年林丹一家三口出游,夫妻俩罕见互动却显距离感,儿子和妈似烙饼审美多元化的发展,为了满足人们着装上的需求,服装市场也呈现出了多样化的发展,无论是男性还是女性,在着装上不再单纯的已经质感,造型感作为导向。在快节奏,高压的生活状态下,成年人慢慢地上怀男下怀女?谣言不可信,关于孕肚形状的干货了解一下涨知识芊芊和闺蜜感情很深,两人从学生时代开始就常常形影不离,做什么事情都要在一块。结婚后,芊芊和闺蜜还非常幸运地同时成为了孕妈。两个孕妈平时日闲着无聊就会聚在一起,聊一聊孕期的趣事。这天有人会花30年研究昆虫?趣味解说38种昆虫的科普绘本揭开其中奥妙看到这套法布尔老师的昆虫教室时,感到惊喜。没想到它一共是有三本,还很精美。三本书的副标题分别是认识昆虫的本能有趣的昆虫实验昆虫的生存绝招,可见内容安排得也很有层次。翻阅下来发现,它上港新奥斯卡横空出世!本轮补赛单场送出两次助攻,坐稳核心位置上港在本轮中超补赛跟成都蓉城队相遇,这场比赛球队主帅莱科祭出了最强阵容。武磊巴尔加斯蒋光太等多名新援,都在比赛中携手首发亮相。上港在新援的帮助下,上半场就取得了2比0领先,吕文君和准备好子弹,节后将开启一波反弹行情由于国庆七天长假,受投资者避险情绪影响,历年长假前股指走势均以下跌走势为多,但是每次最后一个交易日收小阳线的概率居多。放假的最后一个交易日,如无重大利空,仍将以小阳报收,毕竟该出的志愿军副司令中,为何邓华和洪学智受彭总牵连,其他人没受影响?抗美援朝时,志愿军第一任司令员为彭总,受到1959年庐山会议影响,彭总遭到罢官,包括国防部长在内的军内职务全部免除。一些当年和彭总有过密切合作的志愿军副司令也受到很大影响,受到牵连志愿军张文荣被俘虏,美军派他当间谍,跳伞一瞬间将手雷扔进敌机英雄就是普通人拥有一颗伟大的心。72年前,新中国成立之初,朝鲜战争爆发了,美国将战火烧到了鸭绿江边,眼见与中国比邻而居的朝鲜遭到侵略,中国人民在党的领导下,决定出兵抗美援朝。我们可03!女排世锦赛3队遭遇4连败,提前无缘16强,头号弱旅出炉北京时间2022年9月30日,世界女排锦标赛结束第7比赛日争夺,克罗地亚喀麦隆韩国均以03输球,这三支球队遭遇4连败,提前无缘16强。到目前为止,克罗地亚只赢了一局,喀麦隆和韩国连解锁智能锁下半场的密码技术依然是核心9月26日,智能锁头部品牌德施曼官宣代言人迪丽热巴登上微博热搜,同天德施曼发布了旗舰新品3D人脸大屏智能锁Q50FMax。据奥维云网(AVC)数据显示,在定价2000元以上的高端智
红米Note11TPro上手体验6个月,不吹不黑,说说真实使用感受国内市场中,不仅是高端机竞争激烈,即使是千元机也十分激烈,一般千元机是指1500元左右的手机,这类手机往往性能和续航非常给力,甚至可以媲美高端机,就比如我们要说的红米Note11T爱奇艺被点名批评限制投屏加收费用不厚道!据不少网友反馈,爱奇艺App开始对投屏功能作出限制,之前黄金VIP会员支持最高4K清晰度投屏,现在只能选最低的480P清晰度,要想进行4K投屏必须购买白金VIP会员。不少网友表示,汉口江滩将上演新春嘉年华,武汉特色文化集结长江日报大武汉客户端1月19日讯(记者叶飞艳)记者从武汉文化旅游集团旗下武汉旅游集团股份有限公司获悉,1月25日(正月初四)起,梦想新至,前兔无量2023新春嘉年华将在汉口江滩风帆精彩不断!兰州春节文化庙会时间表来啦(资料图)每日甘肃网讯(新甘肃每日甘肃网记者王宇晨)为进一步丰富人民群众节日文化生活,传承中华优秀传统文化,呈现兰州人特有的年味,让市民朋友们度过一个喜庆祥和的春节,由兰州市委宣传一场春节灯会,弘扬传统文化,梦幻西游携手西安文旅景区在行动你知道吗?作为春节的保留节目,灯会最早其实并不是用来庆祝佳节的。相传,东汉年间有位名叫张道陵的人(其职业类似于道士),为了纪念自己亲手创立的五斗米道,便举行了一次燃灯仪式,而这次颇交广夜听真正厉害的人,都在过低分贝的人生听夜晚的声音祸莫大于不知足,咎莫大于欲得。来源苏眉细细说主播珈宁点击下方音频收听更多精彩内容和细节中国有句古话修身齐家治国平天下。现代社会,喧嚣浮躁,想要涵养身心,最简单的办法就是细雨珠摇一笑倾城头条群星9月榜细雨珠摇一笑倾城文绿怡香轩秋云叠叠暮烟冥冥,十月一场秋雨临。果木薰香,丝丝秋雨湿了橘黄。站在这一片橘园里,仰望雨雾濛濛的天空。雨水落进眼里,闪现的光华,从云天流泄在十那天我突然意识到我被情绪控制了当我开心的时候我看青山多妩媚,青山见我应如是,当我不开心的时候我看青山欲变枯,青山见我愁满面,同样的事物会因人的情绪变化而变得不同。记得有一次我和吱吱(人名)出去玩,她开车来接我,把握好自己的人生节奏万物冬藏,岁月沉香。看到一段留言夜已深,此刻独自一人在公司加班,享受工作带来的充实感,时刻告诫自己,别着急,你看这年复一年,春光不必趁早,冬霜不会迟到,过去的都会过去,该来的都在路这四个人的未来,你想知道吗?从前,有两个饥饿的人得到了一位长者的恩赐一根鱼竿和一篓鲜活硕大的鱼。其中,一个人要了一篓鱼,另一个人要了一根鱼竿,于是他们分道扬镳了。得到鱼的人原地就用干柴搭起篝火煮起了鱼,他狼吞欢乐中国年文松竹轩带着满面春风张开盈盈笑脸,新年悄然来到我们面前小草的心开始悸动欣喜地探出头来听风儿唱歌,看雨翩翩爆竹声声,驱走了严寒热腾腾的烟花将日子焐得格外温暖唢呐声声,锣鼓喧天狂舞的雄