微信转发机器人

您所在的位置:网站首页 微信群消息转发机器人 微信转发机器人

微信转发机器人

2024-06-28 13:38:05| 来源: 网络整理| 查看: 265

聊天机器人的定义和现状

聊天机器人,是一种通过自然语言模拟人类进行对话的程序。通常运行在特定的软件平台上,如PC平台或者移动终端设备平台。

近年来,很多科技公司都开始推出基于聊天机器人的AI产品和技术,如微软在2016年Build开发者大会发布了BOT平台,在此之前还推出过基于情感计算的聊天机器人小冰;Facebook在2016年发布了Facebook Messenger bot开发者平台;百度也推出了用于交互式搜索的聊天机器人小度。聊天机器人系统可以看作是机器人产业与“互联网+”的结合,符合国家的科研及产业化发展方向。

 从应用场景的角度来看,聊天机器人可以分为在线客服、娱乐、教育、个人助理和智能问答五个种类。

 在线客服聊天机器人系统的主要功能是同用户进行基本沟通并自动回复用户有关产品或服务的问题,以实现降低企业客服运营成本、提升用户体验的目的。其应用场景通常为网站首页和手机终端。代表性的商用系统有小I机器人、京东的JIMI客服机器人等。用户可以通过与JIMI聊天了解商品的具体信息以及反馈购物中存在的问题等。值得称赞的是,JIMI具备一定的拒识能力,即能够知道自己不能回答用户的哪些问题以及何时应该转向人工客服。

娱乐场景下聊天机器人系统的主要功能是同用户进行开放主题的对话,从而实现对用户的精神陪伴、情感慰藉和心理疏导等作用。其应用场景通常为社交媒体、儿童玩具等。代表性的系统如微软“小冰”、微信“小微”、“小黄鸡”、“爱情玩偶”等。其中微软“小冰”和微信“小微”除了能够与用户进行开放主题的聊天之外,还能提供特定主题的服务,如天气预报和生活常识等。

应用于教育场景下的聊天机器人系统根据教育的内容不同包括构建交互式的语言使用环境,帮助用户学习某种语言;在学习某项专业技能中,指导用户逐步深入地学习并掌握该技能;在用户的特定年龄阶段,帮助用户进行某种知识的辅助学习等。其应用场景通常为具备人机交互功能的学习、培训类软件以及智能玩具等。这里以科大讯飞公司的开心熊宝(具备移动终端应用软件和实体型玩具两种形态)智能玩具为例,“熊宝”可以通过语音对话的形式辅助儿童学习唐诗、宋词以及回答简单的常识性问题等。

个人助理类应用主要通过语音或文字与聊天机器人系统进行交互,实现个人事务的查询及代办功能,如天气查询、空气质量查询、定位、短信收发、日程提醒、智能搜索等,从而更便捷地辅助用户的日常事务处理。其应用场景通常为便携式移动终端设备。代表性的商业系统有AppleSiri、GoogleNow、微软Cortana、出门问问等。

智能问答类的聊天机器人主要功能包括回答用户以自然语言形式提出的事实型问题和需要计算和逻辑推理型的问题,以达到直接满足用户的信息需求及辅助用户进行决策的目的。其应用场景通常作为问答服务整合到聊天机器人系统中。典型的智能问答系统除了IBMWatson之外,还有WolframAlpha和Magi,后两者都是基于结构化知识库的问答系统,且分别仅支持英文和中文的问答。

微信聊天机器人的技术架构

本文实现的的聊天机器人是基于微信公众号开发平台,微信用户订阅机器人公众号,然后就可以愉快的聊天了。

整个系统的数据流图如下:

 

接下来就是对业务架构进行技术实现选型。

需要我们自己实现的是上图中的Chatbot Server和Chatbot Engine。

Chatbot Server其实就是一个普通的微信开发者应用服务器,所有基于微信平台的应用开发都需要有自己的服务器。

Chatbot Engine是聊天机器人的具体实现,提供SDK或者Rest API接口给Chatbot Server调用。

对于Chatbot Server,github上有一些开源的微信应用开发框架,利用它们可以轻松实现一个微信应用服务器,本文采用(https://github.com/messense/wechat-bot)项目,它不仅包含了web server,还完整的实现了微信chatbot功能。

对于Chatbot Engine,github上也有一些开源的chatbot框架,基于这些框架,可以开发自己的聊天引擎,本文采用(https://github.com/gunthercox/ChatterBot)项目,它提供了一个chatbot框架,可以扩展自己的引擎适配器。

技术实现

Chatbot Server

本例采用https://github.com/messense/wechat-bot项目。

其web server采用tornado,并采用wechatpy(https://github.com/jxtech/wechatpy)作为微信开发SDK。

项目的bot引擎可扩展,目前支持 simsimi,talkbot,v2ex等引擎,这些都是商业引擎的。

我们自己编写插件,支持chatterbot引擎,只需要实现respond接口就可以了。

#coding=utf-8

from chatterbot import ChatBot

from chatterbot.trainers import ChatterBotCorpusTrainer

deepbot =  ChatBot(

    'yuntongxun',

    logic_adapters=[

        "chatterbot.adapters.logic.ClosestMatchAdapter",

#        "chatterbot.adapters.logic.DeepLogicAdapter"

    ]

)

deepbot.set_trainer(ChatterBotCorpusTrainer)

deepbot.train("chatterbot.corpus.english")

deepbot.train("chatterbot.corpus.chinese")

__name__ = 'deepbot'

def test(data, msg=None, bot=None):

    return True

def respond(data, msg=None, bot=None):

    return str(deepbot.get_response(data))

if __name__ == '__main__':

    print(respond("你好"))

 

Chatbot Engine

Chatbot Server 调用Chatbot Engine有2种方式,一种是Chatbot Engine以SDK的方式提供给Chatbot Server本地调用,一种是将Chatbot Engine封装成web服务,提供Web API给Chatbot Server调用。

对于SDK服务,可以直接用pip安装SDK,pip install chatterbot。

对于web服务,chatterbot项目也有相关的开源的web服务封装实现,其中一个是基于django框架(https://github.com/gunthercox/django_chatterbot),还一个是基于flask框架(https://github.com/chamkank/flask-chatterbot)。

本例上文展示的代码采用了SDK本地调用的方式。

总之,利用开源的chatterbot项目,我们一行代码都不用写就可以实现系统中的Chatbot Engine。

 

微信公众号后台配置

本例采用了微信订阅号,登录后台开发者中心,可以配置服务端回调URL,用户消息和开发者需要的事件推送,将会被转发到该URL中。如下图所示配置:

图中的URL地址:http://longtailer.cn,就是Chatbot Server的域名地址,所以事先需要准备一个公网的服务器和域名。

 

运行效果展示

 

总结

本文是《实现微信聊天机器人》系列的初级篇,介绍了微信机器人的技术架构和实现框架,对于Chatbot Engine的实现原理没有详细说明,Chatbot Engine是聊天机器人的核心,它涉及到自然语言处理、机器学习的相关原理和算法。

下一篇,将针对Chatbot Engine的原理进行讲解,并扩展插件实现基于深度学习的聊天引擎。



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭