如何搭建一个AI智能语音机器人

AI智能语音产品越来越常见,从苹果的Siri、微软的小冰、到电话智能客服,在不知不觉中,智能语音在我们生活中已随处可见。
AI智能语音机器人它的交互形式是纯语音交互,例如各种智能音箱的AI语音交互(阿里的天猫精灵,百度的小度音箱,腾讯的听听音箱,华为的智能音箱等)、400电话嵌入的AI智能语音导航(中国移动、中国联通、中国电信的400电话、各大银行的400)等,都升级了AI智能语音。这些AI智能语音产品,只需要用户和机器人说话,机器人会识别你说的话,然后给你一些问答,反馈或执行一些命令或办理一些业务等。
从产品定义出发,AI智能语音类产品,最根本的价值在于以低成本取代人工客服工作中大量重复性的部分,再基于这个前提,去挖掘更多商业变现的可能性。
我们先看一下,目前人工客服的工作大致分为两种,一种是咨询类的,客服只需回答问题;另一种是自助业务办理类的,客服要帮客户完成一些业务办理。
因此,从AI智能语音可实现的功能来划分,智能语音可分为问答式和业务办理式,再细分为单轮/多轮问答与单轮/多轮业务办理。
首先什么叫单轮对话/问答呢?
——“你睡觉了吗?”
——“没有”
那么多轮对话的概念呢?
——“你睡觉了吗?”
——“没有”
——“你一般几点睡觉呢”
——“一般24:00睡觉”
多轮对话其实就是基于上下文关系的对话。单轮与多轮业务办理也是同理,一句话就能解决的为单轮,需要反复几次对话才能解决的为多轮。
无论是问答还是单轮或多轮业务办理,作为一个智能语音产品,它就离不开NLP,说到NLP它就离不开语料。
在如上的例子中,通常的工作方法是:定义一个用户意图叫“睡了吗”,然后把相似的语料(睡了么?你睡觉了吗?睡了没?你已经睡了吗?……)喂给机器人,之后写一些用例来测试它识别的准确率,如果识别率较低,就继续喂它语料,直到我们对识别率满意为止。
用同样的方法,我们就可以让机器人学会理解很多种用户意图了。这里其实就是机器学习中样本集与测试集的概念,样本集用来学习,测试集用来测试学习的效果。另外由于机器学习的本质还是数学与统计,并没有真正意义上的理解,所以学习效果非常依赖大量的语料及语料的质量。直观的表现是,不同的意图中,语料差异越大,识别的准确率越高。比如:“睡了吗”和“睡了没”是相似的,“睡了吗”和“我在数天上的星星”是不相似的。那么后者作为两种意图去做识别,就是容易分开的,而前者两个说法过于相近,可能会得到很差的识别结果。所以训练师需要了解基本的机器学习原理,才能够检查和调整样本集的质量。
多轮对话设计的本质,是定义场景和将多个单轮对话进行组合。对于前面提到的例子来说,在“睡了”后面问“你一般几点睡觉呢”是正常的结合语境的问法,而脱离语境问这一句的话,就会让听者感到困惑。所以这部分的需求应该这样写:
当用户表达“睡了吗”的意图,机器人应回复“没有睡”;
当用户上一个表达是“睡了吗”and机器人回复是“没有睡”and用户这一个表达是“你一般几点睡觉呢”,机器人应回复“我一般24:00睡觉”;
当用户上一个表达是“睡了吗”and机器人回复是“没睡”and用户这一个表达是“吃了什么呀”,机器人应回复“亲,没太明白你意思,能换个说话问我么?”
如果需要我们还想增加问答的轮次或让机器人支持新的场景,那么我们可以按同样的方法在此基础上添加相应的逻辑即可。
我们在来看实用性比较强的业务办理的语音交互,它的本质是在问答的基础上增加与用户相关的数据交互,与业务系统打通,实际的帮客户办理某项具体的业务。例如你打顺丰速运的客服电话95338,然后和机器人说我要下单,他会问题你的下单地址是不是地址1,地址2或请说您的取件地址,机器人识别后,跟您确认,您的下单地址为XX,地址正确请说是,地址错误请说不对或地址错误。
大部分时候,业务办理和多轮对话是交叉的,比如速丰自助下单的场景,需要识别当前的客户来电的手机号码曾经的下单地址,然后与用户确认取件地址是否正确,如果不正确还需要引导说出自己的下单地址,然后再与用户确认,这个就是典型的多轮问答办理业务了。
上述是AI智能语音的一个基本框架,我们下面来说说智能语音怎么落地。
在实际的智能语音产品需求分析过程中,我们需要了解业务背景,业务需求及了解业务规则下人工客服的工作内容。然后从其中归纳出最终用户一般有哪些需求,他们会问什么,怎么问,抽取出用户意图,根据重复性高的对话流程做对应的问答轮次设计。(智能语音话术问答流程设计)
假设我们做的是顺丰速运的95338的智能语音机器人,那么用户意图很可能有“我要下单”“我要查件”,下一句用户则可能会继续问,“我要投诉”。
这其中需要思考的点比较多,设计原则包括但不限于:
  • 了解业务规则,了解最终用户的需求;
  • 抽取意图时注意差异化,意图过于接近会给后期的识别结果带来麻烦;
  • 从用户记录中提取语料时要注意筛选,高质量的语料是高识别率的前提;
  • 设计轮次时要跟意图一起考虑,不能基于无法识别的意图做设计;
  • 对多轮问答涉及的流程进行梳理
  • 设计每一个AI智能语音节点话术及数据节点与业务系统的交互规则等
另外特别是呼入型的智能语音产品,需要格外注意的地方是,对话式智能产品与其他产品的不同在于,用户的表达是不受限的,它不像普通的产品,一个页面上如果只有一个按钮,那么用户就不可能有第二个操作。而对话中,用户可能会说任何的话,例如“你的爸爸妈妈是谁呀”,“你生日是什么时候”“你多大了”等等。
所以在设计流程时,不仅需要考虑一切顺利的正向流程,也需要考虑用户不按正常流程走的逆向流程设计,我们在设计智能语音各节点话术流程时,要尽可能的引导用户往自己系统想要的方向去做表达,其根本原则是收敛而非发散,这样智能语音的识别度、问答匹配度及业务受理的能力会更好。

未经允许不得转载:红哥笔记 » 如何搭建一个AI智能语音机器人

赞 (0) 打赏

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏