0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

用Python轻松做一个智能聊天机器人

电子工程师 来源:fqj 2019-04-25 19:21 次阅读

伴随着自然语言技术和机器学习技术的发展,越来越多的有意思的自然语言小项目呈现在大家的眼前,聊天机器人就是其中最典型的应用,今天小编就带领大家用不到20行代码,运用两种方式搭建属于自己的聊天机器人。

01

神器wxpy库

首先,小编先向大家介绍一下本次运用到的python库,本次项目主要运用到的库有wxpy和chatterbot。

wxpy是在 itchat库 的基础上,通过大量接口优化,让模块变得简单易用,并进行了功能上的扩展。什么是接口优化呢,简单来说就是用户直接调用函数,并输入几个参数,就可以使用了,不需要关心函数的底层实现。

Chatterbot是一个基于机器学习的聊天机器人引擎,基于python编写而成,它可以自可以从已有的对话中进行记忆匹配。

Wxpy因为采用大量的接口集成,所以在使用的时候非常方便,下图是简单的wxpy使用,通过进入交互式界面,可以与指定的好友进行交谈。代码及效果如下图所示:

上述的代码中print_msg函数采用了wxpy库的装饰器,装饰器在这里的作用可以查阅其源码进行查看,主要是用于注册消息的配置。例如print_msg函数,可以将对方的回复消息进行输出。而在手机微信上我们同样看到了双方之间交流,所以从某个层面上来讲,wxpy就是PC端的微信。

02

图灵聊天机器人

下面我们将会实现第一个聊天机器人,该机器人是wxpy内集成的图灵机器人,由于图灵机器人的高度专业,所以制作出来的聊天机器人交流也非常的顺畅。那如何将图灵机器人嵌入到我们的交流中呢?首先我们需要去图灵机器人官网注册得到我们自己的机器人,注册完成后,我们便可以生成图灵机器人,并得到一个api_key,如下图所示:

这个api_key便是我们后续制作聊天机器人的关键。图灵聊天机器人的代码和效果图如下图所示:

由上图右边的聊天记录来看,依托图灵机器人的聊天机器人效果非常的出色,而且还可以进行天气查询等功能。

03

自己训练的聊天机器人

下面我们不依托于图灵机器人,而是依靠ChatterBot来制作一款机器人,这款机器人,虽然效果较上一款性能差距较大,但是它可以训练我们自己的语料库,下面是代码和效果的展示。

由上图可以看出,或许是受制于语料库资源过少,而且也不能够主动上网查询。所以要想使其能够回答和提问基本吻合还需要大量的工作。

难道除了这些我们就没有其它可以做的了吗?当然不是,ChatterBot为我们提供了可以训练的方式,我们可以提供素材来让其进行训练。代码和效果如下图所示:

我们首先定义了一个chatbot,然后将训练数据加入进去,让模型匹配我们的问题,得到训练的结果。

右边的图展示了我们的结果,由结果可以看出,由于我们的训练集中没有“在”这个数据,所以得到的回答很莫名其妙,而对于“你好”和“你叫什么名字?”这两个问题的回答则得到了很完美的答复,这就是加入训练数据集的优势所在。

trainer.train([ "你好", "你好,很高兴认识你", "你叫什么名字?", "我叫chat-robot-2.",])

你也可以加入你想要训练的语料库进行训练,一样会得到不错的效果。有的同学可能会问这是如何训练的呢?答案就在chatterbot的源码里,打开源码我们可以这里的chatbot选择的训练方法是“BestMatch”,也即最匹配方式,从训练的对话中找到最相识的语句,然后根据对话提供回答。

Python做机器学习的项目是不是很有趣,以上就是小编为大家带来的两款聊天机器人的设计,大家赶快动手设计一款属于自己的聊天机器人吧!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 智能机器人
    +关注

    关注

    17

    文章

    825

    浏览量

    81324
  • python
    +关注

    关注

    51

    文章

    4675

    浏览量

    83466

原文标题:不到20行代码,用Python做一个智能聊天机器人

文章出处:【微信号:TheBigData1024,微信公众号:人工智能与大数据技术】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    制作语音机器人,求助。

    玩过安卓上的聊天机器人simsimi之后,我有设想:利用单片机,传感器等制作实体的小鸡机器人
    发表于 08-24 19:58

    如何学做一个机器人

    我想用arduino做一个机器人。源码不知道,去哪找。还有应该看那些参考书籍。各位前辈有什么好的建议吗?
    发表于 05-15 22:32

    聊天机器人+微信平台检测环境,方案分享啦

    聊天机器人+微信平台检测环境,方案分享回馈论坛的帮助,也顺便给自己拉拉票,第季创客作品征集大赛,求点赞!!这是链接,有项目介绍:https://www.elecfans.com/project
    发表于 02-22 19:46

    聊天机器人在国内为什么只能做客服?

    `“智能聊天机器人”在国外越来越火热了。这年,微软先后推出了Tay、小冰小娜机器人家族,社交巨头Facebook也紧接着在自己的messenger应用中发布了超过10万
    发表于 06-20 16:50

    聊天机器人的自动问答技术实现

    【原创】聊天机器人与自动问答技术
    发表于 06-03 08:47

    家庭智能小管家机器人资料分享!

    微信控制家庭智能小管家机器人资料解析今天分享微信控制家庭智能小管家机器人(附语音聊天、人脸检测、自主巡航等)的资料,内容比较多,这边文章不够
    发表于 10-09 20:32

    Raspberry Pi机器人制作实例 PYTHON、LINUX和传感器搭建智能小车

    Raspberry Pi机器人制作实例 PYTHON、LINUX和传感器搭建智能小车
    发表于 04-03 11:51

    微信控制的家庭智能机器人(附语音聊天、人脸检测、自主巡航等)

    ,或者微信对机器人进行部署。并且会报警处理些事情,例如降温功能,人脸检测报警等。当用户在家时,机器人可以为用户播放音乐、电影、语音识别
    发表于 09-30 14:33

    如何打造出与人类自然交流的机器人

    促进客户和聊天机器人之间的日常互动。 超过半(52%)的消费者认为人工智能对他们的生活有积极影响,而我们的目标是为客户提供更好的体验。以此目标作为起点,我们专注于识别并贯彻能够促使人机交流合作的
    发表于 10-22 06:22

    如何利用Python+ESP8266 DIY 智能聊天机器人

    如何利用Python+ESP8266 DIY 智能聊天机器人
    发表于 02-14 06:16

    全球刮起智能聊天热风 15款聊天机器人各领风骚

    在人工智能大爆炸的2016年,全球科技企业掀起了一阵人工智能热风,而智能聊天机器人也是其中一股重要力量。现如今,全球已经有不少聊天机器人
    发表于 12-10 11:59 6936次阅读

    五步诠释聊天机器人

    据外媒报道,在硅谷,聊天机器人的身影无处不在。人工智能的进步使得这些喜欢聊天的助手变成了现实。它们正在以各种不同的形式蓬勃发展。社交网络Facebook大大改善了其通讯应用Messenger中的
    发表于 09-20 08:32 10次下载

    聊天机器人的作用分析

    著名的网络媒体BackChanel日前撰文称,聊天机器人作为一项热门的技术,将会颠覆手机应用(APP),在个人生活、公司客服、政府服务方面都有很好的应用。 文章将此称为即将到来的真正革命。未来,聊天机器人
    发表于 09-20 10:21 2次下载

    如何避免聊天机器人的5个错误策略

    聊天机器人正迅速成为客户和最终用户沟通的通用解决方案。但许多聊天机器人策略都没有达到其目的。
    的头像 发表于 12-06 16:24 3490次阅读

    聊天机器人开源分享

    电子发烧友网站提供《聊天机器人开源分享.zip》资料免费下载
    发表于 06-20 15:07 1次下载
    <b class='flag-5'>聊天机器人</b>开源分享