seq2seq 模型实现聊天机器人

这是一个用Python+Tensorflow实现的聊天机器人程序,使用seq2seq模型训练。示例所用训练数据集是IMDB600多部电影中的英文台词对话部分,训练时间为3天左右(2012款MacBook Pro i7),目前仅支持英文。另外程序包含一个简单的Python+Flask WebUI,并实现了微信公众号对接功能。请扫码关注公众号 easybot 体验效果:

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

  • 示例效果

屏幕快照 2017-01-03 01.15.152016-12-18 2357202016-12-18 235729

  • 参考资料

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

发布者

《seq2seq 模型实现聊天机器人》上有5条评论

  1. 请问下,在data文件夹下,类似train.enc.ids20000这样的文件里面,为何我全都是333333333,训练出来全部是UNT,好烦啊~ 请指点迷津,谢谢~

发表评论

电子邮件地址不会被公开。