春争日,夏争时,扫码抽取夏日礼包!!! 了解详情
写点什么

聊天机器人初学者指南

  • 2017 年 8 月 08 日
  • 本文字数:2024 字

    阅读完需:约 7 分钟

近年,聊天机器人开始再次崭露头角。 Assaf Elovic 在博客上分享了初学者应该注意的一些问题。以下内容翻译自作者的博文。

如果你在 Google 上搜索聊天机器人,你可能会看到很多介绍什么是聊天机器人以及如何创建一个聊天机器人的网页。请不要为此感到惊讶,因为今年是 2017 年,也是聊天机器人领域发生重要变革的一年。

我已经向很多圈外人士介绍过聊天机器人,他们非常感兴趣,也很想进入到这个领域。他们有的是软件开发人员,有的是企业家,有的只是存粹的技术爱好者。在短短的几个月时间里,这个领域的迅速发展让初次进入该领域的人感到压力倍增,特别是在 Facebook 发布了 Messenger API 之后。鉴于这个原因,我决定以简单的方式介绍如何进入该领域。

什么是聊天机器人?

我们先举个例子来看看什么是聊天机器人:

上面是发生在一个用户和一个聊天机器人之间的对话,这个应用是基于 Facebook 的 Messenger 平台构建的。

那么什么是聊天机器人?聊天机器人就是一个应用软件,用于完成某项指定的任务。更准确地说,聊天机器人实质上是一个基于会话模式的用户界面,通过 API 与后端的数据源进行连接,这样它就可以根据需要传送信息或服务,例如天气预报或头条新闻。

为什么是现在?

聊天机器人实际上已经存在了几十年,那么为什么突然之间变得这么火?原因有很多,如果你要问我这个问题,我认为主要有以下两个方面的原因:

  1. 消息已经成为最为流行的沟通工具。
  2. 人工智能(AI)和神经网络语言处理(NLP)技术得到了空前的发展,这意味着与机器人交谈越来越接近于与真人发生交谈。现如今,开发人员可以很容易地找到各种提供了 AI 和 NLP 服务的 API,他们甚至不需要了解 AI 和 NLP 的工作原理。部分提供这类服务的网站如下: Crunchable.io Chatbots.io Luis.ai API.ai Wit.ai 。我想指出的是,既然我们基本上都需要消息平台,那为什么不把其他服务也都带到消息平台上?实际上,Facebook 的 Messenger 就在做这样的事情。

Facebook Messenger 不仅仅是一个消息应用,它实际上是成千上万款应用的仓库,这些应用与我们的日常对话紧密集成。

Facebook 在 2016 年 4 月就发布了聊天机器人平台,从那个时候起,开发人员已经通过 Messenger API 添加了超过 10 万个机器人。

聊天机器人都在哪里?

我在 WhatsApp 上开发了我的第一个聊天机器人。之所以选择 WahtsApp,是因为我所有的朋友都把它作为主要的消息通信平台。不过 WhatsApp 并没有提供官方的 API,也就是说,WhatsApp 并不允许在它的平台上创建聊天机器人(这一点也不奇怪,毕竟 WhatsApp 是 Facebook 的公司,而 Facebook 本身已经提供了一套强大的 API)。不过这也并非意味着就没有其他的可选途径,如果你跟我一样顽固,可以看看 yowsup 这个项目,你只需要一个注册过的手机号码。

以下是提供了官方 API 的平台:

  1. Facebook Messenger
  2. Slack
  3. Telegram
  4. Kik

当然还有其他部署渠道,比如 Android 和 iOS(通过短消息)、Skype,甚至是邮件。不过我只专注在上述的几个平台上。

这里可以找到更多聊天机器人,这要感谢来自 Botlist.co 的朋友们。

如何开发一个聊天机器人?

这不是三五句话能够说清楚的,我将在后续的博客中说明这个问题,我会介绍如何使用 Node.js 和 MongoDB 来创建聊天机器人。

如果你不是一个开发人员,或者你想使用简单的方式(不需要编程)来创建机器人,这里有一些方案:

  1. Chatfuel ——这是我的第一选择,完全不需要写代码,增加和编辑内容都很简单,所见即所得。
  2. Botsify ——无需写代码就可以创建一个 Facebook Messenger 聊天机器人。
  3. Meya.ai ——Meya 可以帮你处理创建机器人的繁琐细节,你可以把精力放在其他有趣的事情上。

当然,使用现成的服务也有不好的地方,它们会限制你的创造力,你只能完成很有限的一部分功能。另外,使用第三方的服务意味着会被绑定到这些平台上。不过它们确实非常适合作为入门的途径,完全不需要编程知识。

总结

关于机器人在未来能够成功存在很多争议,我们必须分清“愚蠢”的机器人和“聪明”的机器人。“愚蠢”的机器人接受结构化的输入,而“聪明”的机器人会处理自然语言,并提供更加人性化的体验。

“愚蠢”机器人的主要问题在于,当人类改变聊天思路,回顾之前聊过的内容时,机器人就无法正常工作。所以,只要机器人无法进行自然的对话,无法理解人类的聊天意图,它们的作用就会很有限。

在我看来,聊天机器人要成功并不一定要十分聪明。在很多情况下,“愚蠢”的机器人也可以带来很好的用户体验以及提升商业效率。比如预订披萨,用户根据一些问题和选项输入他们的选择,而你也可以要求用户给出你预期的输入,这样就不需要 NLP 或 AI 了。我个人会倾向于使用“愚蠢”的机器人来预订披萨,而不是通过手机或网站。

下图展示了聊天机器人的生态系统。

查看英文原文 Chatbots — The Beginners Guide


感谢杜小芳对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017 年 8 月 08 日 19:002568
用户头像

发布了 321 篇内容, 共 118.6 次阅读, 收获喜欢 125 次。

关注

评论

发布
暂无评论
发现更多内容

产品经理第 0 期训练营第四周作业提交

Krystal

漂亮壁纸

小马哥

七日更 二月春节不断更 壁纸

前端冲刺必备指南-执行上下文/作用域链/闭包/一等公民

我是哪吒

面试 大前端 编程语言 2月春节不断更 二月春节不断更

倒排索引 Inverted Indexes

escray

elastic 七日更 死磕Elasticsearch 60天通过Elastic认证考试 2月春节不断更

产品经理第四周总结

克比

用例

z

第四次作业及总结

青葵

学习

产品经理训练营第四章作业(一)

猫。

产品经理训练营第四周作业

产品经理训练营

并发编程系列:关于线程中断

程序员架构进阶

Java 并发 28天写作 2月春节不断更

产品经理训练营第四周作业

happy-黑皮

产品经理训练营

产品经理训练营第四章作业(一)

新盛

产品训练营-第四次作业

Geek_娴子

Electron 多进程方案

将儒

Electron 多进程

如何在不辞职的情况下,改变不喜欢的工作?

熊斌

2月春节不断更

作业

云随心

作业

产品经理训练营 Week4 作业(待完善)

Mai

程序员成长第七篇:面试中需要注意的事项

石云升

面试 招聘 2月春节不断更

LeetCode题解:297. 二叉树的序列化与反序列化,BFS,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

【LeetCode】字符串的排列题解

HQ数字卡

算法 LeetCode 2月春节不断更

产品经理训练营 - 第四次作业

Jophie

产品经理训练营

1分钟内的Linux性能分析法

Gopher指北

Linux 后端

手把手教你玩华为eNSP模拟器

0期产品训练营-第4周小结

skylar

抽奖助手小程序 发起抽奖用例

Shine

产品

机器学习·笔记之:

Nydia

【STM32】1.44寸TFT液晶屏显示字符、汉字和图片

AXYZdong

硬件 stm32 2月春节不断更

产品经理训练营-第四周作业

玖玖

百度闯关,照见互联网巨头造芯之路

脑极体

产品经理训练营第四次作业

庞玉坤

从文字中找回年味儿

熊斌

2月春节不断更

聊天机器人初学者指南_语言 & 开发_Assaf Elovic_InfoQ精选文章