人工智能实例:十分钟无需代码打造自己的自动应答机器人
2015年,当微软CEO萨提亚 ∙ 纳德拉第一次提出“构建微软智能云”的远见时,很多人在问,微软智能云Azure究竟智能在什么地方?如今,人工智能成了人们街谈巷议的“全民热词”。运行在微软智能云Azure上的微软认知服务,是微软在人工智能领域20多年研究成果的集大成者。微软将覆盖视觉、语言、语音、搜索、知识五个主要应用场景的24项人工智能服务,集成为24个API接口开放出来,让开发者只需要几行代码,就能借助微软的人工智能平台,开发出自己的跨平台人工智能应用。
我看了下,SMZDM网站中的关于云服务以及人工智能的文章基本都是偏理论类的,属于看一遍似懂非懂扭头就忘的软文,这里会提供一个实例,教大家如何无需写代码搭建自动应答机器人。
扒几张参加微软公开课时的人工智能的介绍PPT。说句题外话,微软很多公开课的技术资料是不分享的,现场拍照因为角度距离的原因,可能不太清楚。大家可以试试看在手机上下载一个叫“Office Lens”的应用程序,在此应用程序中拍摄,会自动调整文本的角度亮度,之后再整理就很容易辨认了,堪称剽窃PPT神器。
Microsoft Bot Framework提供了构建和连接智能机器人所需的所有功能,这些智能机器人可以通过从文本/短信到Skype,Slack,Office 365邮件和其他常用服务进行交互。
整体架构如下,现在开源项目已经非常普遍了,微软也将SDK放到GitHub上,开发爱好者可以很方便的学习使用。
本文的目标是建立一个非常简单的QnA/FAQ自动应答聊天机器人,借用微软的相关服务,无需代码,纯UI操作。
这一应用场景非常普遍,比如SMZDM的APP中就有自动客服:
智能在线客服可以通过用户的输入,回复相关文章链接,这样用户就可以通过自助服务解决常见问题,部分无法解决的问题会转到人工服务解决。这也是目前各类网站常用的用户支持方式,想当年小小值小师妹可没时间满网站乱窜,还要在微信上服务用户,现在就合理多了。顺便说下,SMZDM的客服还是挺给力的,之前遇到的原创审批啊,兑奖问题啊,都是手机APP上联系人工客服30分钟内解决的,就是客服生意太好,每次都要等待十几分钟。
微软建立了一个Preview版本的QnA机器人建立的网站,大家可以免费注册,用微软的邮箱如Hotmail,Outlook等注册即可。网址如下
登录之后点击Create New Service,QnA内容可以通过很多方式获取,比如通过网站的帮助网页。
但是貌似这一功能对于网页结构有一些要求,尝试过数次都无法获取数据,只能退而求其次,采用CSV文件方式导入。首先建立一个简单的CSV文档,只包括问题和回答两列。
在页面中选择Select File,选中之前创建的文件,然后点击Create按钮。
稍事等待,CSV文件会被上传到网站上。
CSV的文件结构极为简单,网页会自动分析出问题和回答的内容,此外,请注意最顶端的Hi -> Hello是自动添加的Greeting问候应答。
点击左侧的Test,可以在网页上直接模拟自动应答,查看效果。同时也可以在回答中添加或者修改回答,让我们的机器人的回答更加准确。确认无误之后,点击右上角的Publish发布。
随后,可以看到网页上的提示,QnA的服务已经部署成功。这里要将红框标注的两端ID码保存下来,后来会用得着。
下面我们需要创建一个网页机器人来调用QnA的服务,这里通过微软的Azure来实现。Azure是一个SaaS平台(软件即服务 ), 让用户能够通过 Internet 连接和使用基于云的应用程序。
Azure其实有两个版本,Azure的国内版是由世纪互联负责运营的。世纪互联版Azure全中文界面,方便理解,但是功能更新要比国际版Azure要慢很多。所以,建议如果是自己做实验,还是可以在国际版的Azure上进行。
这里是国际版Azure的网址。点击Start free>可以试用。
Azure之前的试用优惠非常多,目前只有试用一个月200美元限额的活动,需要绑定信用卡。试用时要注意账单情况,Azure上的服务是按需收费的,计费方式非常复杂,当心信用卡被刷爆。
这就是Azure的管理平台,之前提到过Azure提供的主要是SaaS服务,而且上面的服务几乎每个月都有增加,满足各种用户的需要。
点击+New,输入“bot”关键字,然后点击Web App Bot。
然后根据实际情况分别填写以下信息。
注意这里的Pricing Tier默认选择的是S1,每一千条回复要收费0.5美元,虽然很便宜,但是我还是倾向使用免费的一档。S1的提供的99.9%SLA对于测试而言没有什么意义。选中F0 Free,然后点击Select。最后点击Create创建网页机器人,一般需要1分钟左右的时间即可完成。
随后,打开这个Web App Bot应用(这里的名字叫SMZDMBot),点击Settings,可以看到一些主要的设置项目。比如你可以将图标更换为任意想要的图案。
这里最关键的一步,就是要将前一步生成的QnA服务的ID号,添加到机器人的设置中。分别是QnAKnowledgebaseId和Q牛ASubscriptionKey。然后点击上的Save保存设置。
至此其实所有配置都已经完成,点击左侧的Channels,可以选择机器人的应用场景,你可以把它作为直接链接,通过IFrame嵌套到你的网站,或者加到微软的Skype或者Teams应用中,这里以最简单粗暴的Direct Line模式为例。点击Show可以看到生成的Secret Keys以及网页的地址。
然后将完整的地址黏贴到浏览器的地址栏回车。
即可看到实际的效果,机器人可以自动回复你的问候。
还可以按照之前的CSV模板一样回答你的关于SMZDM的问题,可以看到如果询问的问题和模板稍有区别,机器人还是可以识别的。如果要实现更复杂的语意识别功能,就需要引入微软的LUIS服务来帮忙了。
用一张动图来展现最终效果如下:
这里通过微软的QnA和Azure上的Web App Bot实现了一个最简单的自动应答机器人,如果需要实现更复杂的功能,就要改一些代码了,GitHub上有很多现成的,稍作修改就可以满足自己的需要了。现在是一个开源的时代,微软也把自己的很多资源分享出来,供大家学习应用。
Largeniu
校验提示文案
SeoiGor
校验提示文案
打洞穿山乙
校验提示文案
dcl2501
校验提示文案
可爱的排骨
校验提示文案
Largeniu
校验提示文案
yiliye
校验提示文案
yiliye
校验提示文案
dcl2501
校验提示文案
打洞穿山乙
校验提示文案
SeoiGor
校验提示文案
Largeniu
校验提示文案
Largeniu
校验提示文案
可爱的排骨
校验提示文案