聊天机器人调研

想做一些自动化工具,调研一下聊天机器人

step 1. 魔改 IM, 以便能通过 API 调 IM 收发消息

魔改 qq

go-cqhttp

https://github.com/Mrs4s/go-cqhttp
go-cqhttp + NoneBot 2 教程:
https://yzyyz.top/archives/nb2b1.html

酷q

好像已经凉了
https://www.bilibili.com/video/BV1sx41127nw?spm_id_from=333.337.search-card.all.click

酷q+ 图灵机器人教程
https://www.bilibili.com/video/BV15b411J7eF?spm_id_from=333.337.search-card.all.click

魔改钉钉?

钉钉自带机器人,但是有各种乱七八糟限制,如果能魔改钉钉、把普通账号当机器人用,就可以绕过限制,会方便很多,比如可以做“防撤回”之类的功能。
待调研。暂时没搜到。
只查到一篇技术分享 https://678234.xyz/2021/01/21/DingTalk-mod/

微信

企业微信的群机器人

企业微信的群机器人也有很多限制。
https://markdowner.net/article/227905711496462337

魔改微信

通过 hook 客户端实现;
或者抓包分析、然后开发一个伪装成正常客户端的客户端,调接口和微信服务器通信

微信群机器人是怎么实现的? - 创业路上的回答 - 知乎
https://www.zhihu.com/question/46891356/answer/1768554855
微信群机器人是怎么实现的? - 红枣源码的回答 - 知乎
https://www.zhihu.com/question/46891356/answer/1215189029

wechaty

https://github.com/wechaty/wechaty
https://www.xilou.site/wechaty/
https://zhuanlan.zhihu.com/p/32203349
https://wechaty.github.io/chatbot-1-to-2/docs/basic/basic-wechaty
本来只是用来魔改微信、方便通过 API 操作微信的工具,后来越做越大,功能越来越多,现在有对接各种对话服务的插件, 也能对接各种 IM 。

架构

值得一提的是,通过把各种 IM 封装成 puppet(傀儡)、暴露出统一的 gRPC service , 实现了可移植性、多语言支持。

image.png

而 Puppet,翻译是叫作傀儡,我们可以理解为一层中间件。
前文说到的 Hook,就是在这一层。开发人员把 Hook 之后的成果,进行封装,便成了 Puppet。
整个系统通信交互过程是这样的,平时我们在 Wechaty 本体中,可以用多语言写相应的交互逻辑代码,Wechaty 本体负责和 Puppet 通信,而 Puppet 负责和 IMs 通信。
Puppet 起到了中间件的作用,屏蔽了 Wechaty 和 IMs 具体的通信过程,普通使用者只需要写相应的交互逻辑代码即可。并且在使用多语言版本 Wechaty 时,不需要用各自的语言去再 Hook 一遍。
目前 Puppet 也支持多版本,比如网页版,iPad,Windows 等等。大家在使用时,可以随意切换通信协议。但是目前除了网页版外,其他版本的 Puppet 都要钱。

而 IMs,前文说到,如今的 Wechaty 已将目光放在所有即时通信工具上。现在打开 Wechaty 的官方仓库,可以看到 Wechaty 已经实现了 Whatapps,飞书,Gitter,钉钉的聊天机器人。

视频教程

https://www.bilibili.com/video/BV1LV411r756?spm_id_from=333.337.search-card.all.click
wechaty+ 微信对话开放平台 开发一个微信助理,能:

  • 回复准备好的文案;
  • 能帮群友答疑(需要手动在微信对话开放平台录入问答)
    微信对话开放平台能帮你把录入的问答进行泛化。
    不过感觉录入还是比较麻烦,要是能机器人帮忙搜索问答、QA记录就更好了。
  • 解答不了的会帮忙艾特boss;
  • 能识别群友情绪、拉小群沟通
一些有趣的案例

从2018年开始,web api 无法创建群聊和自动拉人入群。
解决方案: 第三方提供了非web协议的 Puppet 解决方案,点击购买token , 更多技术细节查看 wechaty-puppet-padchat

https://github.com/wechaty/wechaty/issues/1697
https://wechaty.gitbook.io/wechaty/v/zh/#web-limit-1

step 2. 搭建对话系统

开源项目

NoneBot 2

可以对接各种IM,比如对接 qq 就是开一个 魔改版qq (go-cqhttp)、并登陆,让 NoneBot 2 和这个魔改版qq通信就能作为机器人收发消息。
https://yzyyz.top/archives/nb2b1.html

简单粗暴来说,gocq就是一个QQ,即你需要用它来登录,接收消息,发送消息;而nb则用来实现机器人的各种功能。
如下是他们的项目地址,记得去点个star哦~
nb:https://github.com/nonebot/nonebot2
gocq:https://github.com/Mrs4s/go-cqhttp

资料
https://github.com/nonebot/awesome-nonebot

video
https://www.bilibili.com/video/BV1aZ4y1f7e2?p=1

云服务

各种云厂商有提供

image.png

微信最近也开放了自己家 WeLM 模型的 API
https://welm.weixin.qq.com/docs/playground/
https://mp.weixin.qq.com/s/DR1zFuXsvQMnod5H6rPTEg

白嫖别人的闲聊机器人

比如:


image.png

比如:


image.png

https://www.zhihu.com/question/28283196/answer/42177014

再比如"帮群友搜索"
https://www.bilibili.com/video/BV1jr4y1679o/?spm_id_from=autoNext

图灵机器人

懒得做集成?找一些开箱即用项目

有一些项目是做好了集成,开箱即用

需要自己部署的开源项目

比如:

无代码,通过配置创建一个 h5/pc web机器人

之前工作做过这种,但没开源。

开发者及非开发者可简单、快速地搭建智能对话机器人(智能客服),并接入公众号、小程序等,为业务赋能,降本增效。

机器人可以被绑定到微信公众号微信小程序H5页面等多种渠道

Reference

https://www.zhihu.com/question/28283196

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,753评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,668评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,090评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,010评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,054评论 6 395
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,806评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,484评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,380评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,873评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,021评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,158评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,838评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,499评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,044评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,159评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,449评论 3 374
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,136评论 2 356

推荐阅读更多精彩内容