进军对话商务市场,微软企业级Chatbot引擎能快速界接多种对话通道,打造通用型Chatbot更容易
早在2015年5月,微软就推出了自然语言理解服务LUIS,这是微软Cognitive Service中其中一项服务,不过,直到现在,LUIS仍旧是测试版本,还没正式上线。微软提供可以自行建置的深度学习框架Cognitive Toolkit,也有直接提供训练资料服务的云端环境Azure Machine Learning,若开发人员不想从底层开发,也能透过Cognitive Service简单的介面开发Chatbot,最后,企业可用Bot Framework将Chatbot接上第三方的通讯平台,微软开发体验暨平台推广事业部技术传教士李匡正认为,微软要提供一整套的Chatbot工具和服务,供开发人员建立企业对话机器人。
LUIS是用来理解对话语意的Chatbot关键引擎,微软提供了另一个打造Chatbot的关键工具是Bot Framework。Bot Framework特色是,可以快速串接多种IM平台,甚至有些IM,只需几次点选,就可以自动完成相关的配置。微软试图透过这个Bot Framework来简化企业Chatbot程式与不同IM或互动工具的介接过程,还可将来自不同IM搜集的对话资料,详细地保留在到Bot Framework中储存,方便建立一套可以共用的语义理解模式,让企业更容易打造出一个Chatbot通吃各IM平台的通用型Chatbot。还提供了Chatbot追蹤仪表版,方便随时监看Chatbot实际执行状态。
不过,LUIS仍是在微软平台上打造Chatbot的关键基础,企业要使用LUIS服务包括了4个步骤:第一,开发人员要先注册微软的帐号,建立Chatbot之后,再加入意图和实体概念,其中,意图也有与IBM类似的机制,可用增加例句的方式让系统学习不同表达方式,第二步,开发人员可用Feature的机制,加入词汇清单让系统也能辨识例外的词汇,第三则是测试Chatbot,企业开发人员可以测试新的语句,若系统将意图和Entity辨识错误,开发人员可以直接修改标示,最后即可发布Chatbot,让客户与对话机器人互动,微软也提供视觉化的设计操作介面,让开发人员随时监控Chatbot的状况。
微软LUIS的特性
微软的LUIS不外乎也有意图和Entity,比较不同的是,微软只提供开发人员在每个Chatbot中建立10个Entity,但LUIS有不同的机制处理语意结构,首先LUIS提供Prebuilt Entity,也就是预先建立好的Entity,像是日期、年龄、比率等,让企业开发人员可以直接使用Entity,另外,LUIS的Entity分为3种,一般 Entity、继承Entity、混合Entity,以航空业为例,一般Entity可以是航空名称,只有特定名称没有其他属性,继承Entity可能是地点,该Entity又可以细分为出发点和目的地两个子类别,混合Entity则是两个以上的Entity组成,例如,购票这个混合Entity就能细分为数量、票别、舱等3个子类别。
除此之外,微软的LUIS还提供Features协助判断语句中的意图和Entity,Feature又分为词汇清单和样式,词汇清单可以是各个城市的名称,样式则是航班的编号,依照格式的格式建立样式,可以让系统更容易正确地办别。
目前在台湾也有企业使用LUIS来建立自家Chatbot,如台湾房屋运用LUIS服务在LINE上打造了台湾第一款地产机器人,是一款功能型服务型的机器人,可供民众直接用对话的方式询问房地产相关问题,像是找房子、查询附近店家。
微软LUIS也提供了几种预先建立的常见Entity,例如日期、年龄、空间尺度、百科全书常用概念等,开发人员直接勾选就能直接使用到自家Chatbot上,不用自行输入。
LUIS的继承Entity,可在原有的Entity底下新增子项目,以航空业为例,继承Entity若是地点,该Entity又可以分为出发点和目的地两个子项目。
