chatbot聊天机器人环境搭建以及项目运行指南
项目地址
网传有一位程序员因忙于工作,无暇陪伴女友,便做了个聊天机器人的软件来陪女友聊天,然后自己就安心工作去了。等到程序员下班时一看,机器人已经和女友聊到了二胎的娃叫啥名了。博主不明觉厉,便去拷贝一份源码试试水。
项目的github地址:https://github.com/sea-boat/seq2seq_chatbot
可以clone下来,但是感觉速度太慢,直接下载压缩包会快一点。
最近有读者反映github地址打不开,而且网速也太慢,博主就把代码拉取到了一个国内的代码托管平台,链接:https://gitee.com/july825633167/seq2seq_chatbot
环境搭建
根据项目readme文件中的说明,项目对环境有一定的版本要求,推荐大家最好严格按照项目中的环境要求来安装,包括版本也是。博主曾被版本问题虐得死去活来博主从来没有安装过错误版本。
如图上所示,该版本需要python3.5以及tensorflow1.3的环境,如果版本不匹配将会造成兼容性问题,在下文中会详细介绍。
1. 安装Anaconda
1)Anaconda简介
Anaconda 是一个用于科学计算的 Python 发行版,支持 Linux, Mac, Windows, 包含了众多流行的科学计算、数据分析的 Python 包。
tensorflow是一种基于python脚本语言的高级应用,它的运行依赖于底层的应用,因此需要安装python以及许多相应的扩展包。这些扩展包一个个安装会消耗太多时间,python的大部分扩展包,都集成在anaconda里面,因此可以通过使用集成环境anaconda完成环境搭建。
2)下载及安装Anaconda
由于官网下载较慢,博主使用了清华大学的镜像:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/
上图为清华大学镜像网上的文件,大家可以根据自己的电脑系统以及环境要求选择合适的版本。这些都是可执行的exe文件,下载下来之后直接双击就可实现安装。安装完成之后,可以使用cmd验证是否安装成功。输入conda --version
。
上图即为博主电脑上安装的anconda,版本为4.3.8。
3)安装其他版本的python
如果我们这个时候使用python命令查看python的版本,会发现电脑上已经有了可用的python环境。
如上图所示:使用python --version命令会发现电脑上已经有了python3.6.0的环境,如果使用where python命令查看其安装路径,会发现python的文件路径是指向anaconda文件夹下面的。说明这个版本是anaconda自带的python。
由于tensorflow最适合的版本是python3.5,所以我们不能使用Anaconda自带的3.6的,这里我们要下载3.5版的python。
在命令行中键入如下命令:conda create --name python352 python=3.5.2
其中python=3.5.2是版本号,python352是自己的命名,划重点:命名中不能出现".“符号,即不能写成"python3.5.2”,不然在后面引用的时候会被当成非法命名,不能正常使用。此坑博主亲踩
输入之后会出现如下信息,此处需要手动输入 字母y 同意当前操作。
如果出现上图的信息,就说明安装成功了。接下来可以通过activate python352指令来激活。
在激活之后,如果输入指令python --version查看python的版本,可以看到这里的python版本就是我们刚才安装的3.5.2的版本了,而不是anaconda自带的3.6.0版本。查看了版本之后,可以使用deactivate python352指令退出。
2. 安装Tensorflow
博主用的系统是win10,这里主要介绍一下windows下基于anaconda安装tensowflow的步骤。最常用的指令是:pip install tensorflow
但是这种指令默认安装最新版的tensorflow,前面有提到过chatbot要求运行环境中tensorflow的版本为1.3,不同的版本会造成一系列兼容性问题。比如tensorflow1中支持的placeholder到了tensorflow2中就不再支持了。此坑博主亲踩
如果想要从官网获取指定的版本可以使用指令pip install tensorflow==1.3.0
但是官网的速度会很慢,因此在这里,博主推荐一种安装指定版本的指令:
pip install tensorflow==1.3.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
这个指令能够从清华大学镜像网上获取指定版本的tensorflow。
很多人中途会遇到上图这样的情况,不用慌,这是超时造成的,只要重新输入上一条指令继续等待即可。
用不了多久,就会显示上图中的信息,这就表示安装成功了。
3. 安装Spyder插件
执行完上一步的操作之后,很多人会以为tensorflow已经安装好了,但事实上还缺少了最后一步的配置操作。
1)导入tensorflow
首先,我们从开始菜单中找到anaconda prompt,通过它激活python352并进行导入tensorflow。
2)安装spyder
接下来通过开始菜单进入anaconda navigator:
不难发现,目前的Applications栏中填写的是root,即为anaconda的根,它的默认环境是python3.6。
我们需要将其切换为之前安装的python352。如上图。
然后再点击install按钮进行安装,上图spyder中的install按钮在安装之后就会变成launch按钮,安装完成之后点击即可启动。
Spyder启动之后,整个环境的搭建工作就完成了。
项目运行
根据chatbot项目的readme文件介绍,文件运行顺序如上图所示,但是在运行项目之前,我们还需要做一些准备工作:
1. data.py
首先是data.py文件,第一行有个import nltk,这个nltk包在anaconda集成环境中并不存在,需要用户自己去安装,安装指令也很简单,直接在命令行中输入即可:pip install nltk
,同时data.py文件第三行import numpy as np,numpy包有些人的电脑上可能也会没有,需要自己安装,指令为:python -m pip install numpy
。
2. train.py
其次是train.py文件,该文件中有一个控制训练循环的次数变量,github上拉取下来的代码中默认是5000000次,大家可以根据自己的需要修改,毕竟博主电脑性能不够,训练五百万次需要二十多天电脑性能好的或者跑gpu的同志们可以自行忽略本段文字。不过如果将训练次数减少,最终得到的结果准确度肯定也不会那么精确,毕竟鱼和熊掌不可兼得。
3.项目运行
按照readme文件中指定的顺序运行即可:data.py->train.py->test_model.py。但是中间train.py文件的训练时长需要很久,大家在训练的时候记得不要切断电源。
博主也是第一次使用tensorflow,如果有讲的不对的希望大家多对包容,也欢迎各位在评论区指正。
更多推荐
所有评论(0)