Slackbot做好了之后就一直想弄一个对话机器人,也就是chatbot,配置好后开聊,它!竟!然!撩!我!
Slackbot
chatbot
在网上搜索发现了一个开源的框架ChatterBot,安装用了一下,一言难尽。没有语料库加成,跟它聊天就跟个智障一样答非所问,下载了语料库却无法导入提示格式不对,我总不能一个个手动输入吧(13万条呢)。而且这与框架无关,只没有一个好的语料库,再好的框架也无能为力。
所以放弃自建这一条路,转而使用商业的api,然后找到据称是业界最懂中文图灵机器人,但是不能用,配置好了后,一只提示“请使用正确的加密方式”,我把api文档翻了个遍没找到加密方式应该怎么做。
在整篇文档内搜索加密两个字只有返回代码4001是加密错误,如何加密却根本没有描述。
返回代码4001是加密错误
PS:而且我在网上搜索至少发现了其有两个不一样的api链接地址,产品可能还不错把,但文档也要写的清楚点鸭,要不然怎么用呢?
然后在论坛上灌水,发现有人推荐茉莉机器人api,去官网一看,竟然连https都没配置...不过这不影响它发挥作用,配置好后用了一下,真的惊艳到我了,语料库十分庞大,并且可以自定义回答。多说无益看看效果(从左往右):
虽然聊多了能很明显的发现它就是机器人,但我觉得已经很NB了。
接下来的篇幅就是如何集成到slackbot了。可以在我的GitHub上Slack-chatbo页面下载源码,名称叫molibot.py。
molibot.py
Linux下运行,WSL也可。
{% label success@python%}(2或3)
{% label success@Slack账户%}
{% label success@slackclient库%}
{% label success@Slack API的token%}
{% label success@茉莉机器人Api Key%}
使用以下命令安装slackclient库:
pip install slackclient #python3的话将开头的pip 修改为 pip3
关于如何获取token可以在我之前的文章“一个很可爱的Slack-bot”内查看。
在茉莉机器人的官网注册账号,然后进入自己的页面,会有一个叫我的API:
将里面的key和Secret复制到文件内第32行:
key
Secret
response = requests.post("""http://i.itpk.cn/api.php?question="""+com1+"""&api_key=你的Api Key&api_secret=你的Api Secret""", headers=headers)
执行该文件的时候茉莉机器人就会接管所有从Slack收到的消息,并回复。
只需要聊天不用做任何操作就可以得到和我前面发的图一样的效果。
这样设置的话,不做任何修改会导致纯中文命令全部失效。
所有的命令都会失效所以需要在命令上加上一个前置固定词让bot识别,例如:
#在常量部分添加一个关键词 以‘-’开头 id = "-id" #在命令部分添加获取id的命令 if command.startswith(id): response = """"""+channel+""""""
这样在bot运行的时候你在任意添加了bot的频道发送“-id”,bot就会将该频道的ID发送到该频道。
EOF
之前闲置了好久我的Salckbot,最近捣鼓了一些进阶功能,感觉蛮有意思的。
利用中转机加快上传速度
因为我比较懒嘛,那怎么快速的进行本地测试和部署呢?
关于自建搜索引擎的一些介绍和原因
我是在是忍无可忍,索性自己也做个 Bot ,来以暴制暴!
目录
热门标签
更多语言
站点信息