Home
Softono

Chinese ChatBot

Open source Apache-2.0 Jupyter Notebook
323
Stars
68
Forks
1
Issues
6
Watchers
2 years
Last Commit

 About Chinese ChatBot

中文聊天机器人,基于10万组对白训练而成,采用注意力机制,对一般问题都会生成一个有意义的答复。已上传模型,可直接运行。

Platforms

Web Self-hosted

Languages

Jupyter Notebook

Links

Need Help Installing Chinese ChatBot?

We provide expert installation service for this software. Our team will install, configure, and secure Chinese ChatBot on your server. plans start at just $30.

Chinese ChatBot

View on GitHub

Chinese-ChatBot/中文聊天机器人

  • 作者已经全面转到GNN图神经网络方向C++开发,不再跟进NLP方面,项目代码停止维护。遥想项目完成时,网上资源甚少,作者一时兴起初次接触NLP与Deep Learning,克服重重困难,终于写出这个Toy Model。因此,作者深知小白不易,所以即使项目不再维护,但issue或邮件([email protected])一定会及时答复,以帮助Deep Learning新人。(Tensorflow我用的版本太老了,新的版本直接运行肯定各种报错,如果你遇到困难也别可以费劲去装老版的环境了,建议用Pytorch参照我的处理逻辑重构一遍,我懒得写了)
  • GNN方面:
  • 改编整理了一套基准对比模型:GNNs-Baseline ,以方便快速验证idea。
  • 本人的论文ACMMM 2023 (CCF-A) 开源代码在这LSTGM
  • 本人的论文ICDM 2023 (CCF-B) 开源代码还在整理中。。。GRN
  • 欢迎同好补充、交流、学习。

环境配置

程序 版本
python 3.68
tensorflow 1.13.1
Keras 2.2.4
windows10
jupyter

主要参考资料

关键点

  • LSTM
  • seq2seq
  • attention 实验表明加入attention机制后训练速度快,收敛快,效果更好。

语料及训练环境

青云语料库10万组对话,在google colaboratory训练。

运行

方式一:完整过程

  • 数据预处理
    get_data
  • 模型训练
    chatbot_train(此为挂载到google colab版本,本地跑对路径等需略加修改)
  • 模型预测
    chatbot_inference_Attention

方式二:加载现有模型

  • 运行chatbot_inference_Attention
  • 加载models/W--184-0.5949-.h5

界面(Tkinter)

Attention权重可视化

其他

  • 训练文件chat_bot中,最后三块代码前两个是挂载谷歌云盘用的,最后一个是获取那些loss方便画图,不知道为什么回调函数里的tensorbord不好使,故出此下策;
  • 预测文件里倒数第二块代码只有文字输入没界面,最后一块代码是界面,根据需求两块跑其一即刻;
  • 代码中有很多中间输出,希望对你理解代码提供了些许帮助;
  • models里面有一个我训练好的模型,正常运行应该是没有问题的,你也可以自己训练
  • 作者能力有限,并未找到量化对话效果的指标,因此loss只能大致反映训练进度。