使用python实现机器人聊天,python QQ机器人
FAQrobot
自动回复常见问题的聊天机器人。目前相似度计算模式有三种:简单词汇比较、词性权重和词向量。输入符合格式的FAQ文本文件,即可立即使用。欢迎把不能正确区分的问题和FAQ文件发到评论区。
程序和依赖库
使用python3运行
街霸分词使用的库
如果使用字向量vec模式,需要加载gensim字向量使用的库。
相关文件
如果使用word vector vec模式,需要下载三个文件:Word60.model,Word60.model.syn0.npy,Word60.model.syn1neg.npy
下载地址:http://pan.baidu.com/s/1kURNutT密码:1tq1
常见问题知识库文件
FAQ文件包含您想告诉用户的问题和答案。
FAQ文件必须是没有bom格式的UTF 8文本文件。
注释:注释文本以#开头。(整行都是评论)
问答板块格式如下:
【问题】问题标题(可以有1个以上,最少1个。必须以“[问题]”开头。)
回答内容(可以有多行,后面必须跟上面的【问题】。多行答案中间不能有空行。)
多个问答块可以用空行隔开。
默认情况下,程序使用减肥常见问题文件。您可以加载自己编辑过的FAQ文件。
主程序FAQrobot.py
直接运行文件回答关于减肥的问题。您可以加载自己的FAQ文件。请确保常见问题文件格式正确。
Robot.answer (input txt, simple _ pos )可以得到输入问题的返回答案。
simType参数有以下几种模式:
简单:简单比较相同的字数,得出句子的相似度。
Simple_POS:简单比较相同的字数,将词性乘以不同的权重,得到句子的相似度。
Vec:通过词向量计算相似度,将词性乘以不同的权重,得到句子相似度。
全部:调试模式,显示以上模式的结果,方便对比调试。
可以输入的特殊文本命令:
-zsk显示当前知识库
-s -1检查最后一个问题的结果和中间参数
-q -1重复问题,将其作为问题输入。
-重新加载重新加载QA知识库。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。