seq2seq 模型实现聊天机器人
这是一个用Python+Tensorflow实现的聊天机器人程序,使用seq2seq模型训练。示例所用训练数据集是IMDB600多部电影中的英文台词对话部分,训练时间为3天左右(2012款MacBook Pro i7),目前仅支持英文。另外程序包含一个简单的Python+Flask WebUI,并实现了微信公众号对接功能。请扫码关注公众号 easybot 体验效果:
- 直接上代码
GitHub: https://github.com/undersail/easybot
- 用法说明
execute.py为Python主程序,程序有三种模式:训练、测试和服务,可通过修改配置文件 seq2seq.ini
来改变模式,如训练模式:
mode = train
然后运行如下命令启动程序:
python execute.py
测试模式:
mode = test
*注意:服务模式请直接启动 webui/app.py (需预先安装 Flask 环境,见setup.sh/requirements.txt):
python webui/app.py
若需后台运行,请使用启动脚本:
sh webui/startup.sh
- 示例效果
- 参考资料
GitHub原版:https://github.com/llSourcell/tensorflow_chatbot
seq2seq论文: Sequence to Sequence Learning with Neural Networks
seq2seq模型:http://blog.csdn.net/sunlylorn/article/details/50607376
递归神经网络:http://wiki.jikexueyuan.com/project/tensorflow-zh/tutorials/recurrent.html