昨天的阿里云栖大会上,阿里宣布对外开放语音客服机器人服务。 这项服务其实在阿里系自身的服务中已经运用和训练了很久,以下是对其中的一项服务“阿里小蜜”的简单体验。
一进入界面,产品提供了问法和可能需要的操作。推荐的用户输入方式是语音。
可以通过点击“剁手有小蜜”或者直接说出“找好货”来说出需求。系统自动给出了反馈(这里还起到一个帮助用户理解要怎么跟机器人对话的作用)。
而我提出“买火车票”的这个需求时,则反馈回来了我应该如何在淘宝上完成买火车的帮助说明信息(见下图)。
而在给出的反馈信息,提供了向上和向下两个拇指。通过用户的反馈,来提高系统的知识能力。
在对话中,我中途切换到天气查询、期望其反馈天气情况。但显然其仍然认为我的目标是在“挑好货”,不予理会我查天气的需求,而直接引导往下一层使用。(这种中途转换目标的情况,在语音交互上应该还是有难度的~)
不过,说好的“这个几款”呢?本次体验在失败中结束。
一点絮叨:
目前,智能语音交互从技术上到行业应用上都没有很成熟,存在一些明显无法达到用户预期的缺陷。在设计上需要立足于这种缺陷、充分利用多种手段和渠道(如硬件设备、APP/网页等)去帮助用户完成目标。
一些补充信息(来自三角兽)
作为行业型应用,客服机器人属于典型的任务驱动的多轮对话交互。一个典型的任务驱动的多轮对话语音交互包含如下几个典型的流程:
1、语言的理解:简单讲,就是讲用户自然而然说出的话,转换成结构化的“语义表示”。在语音交互中,这种“语义表示”包含两部分:
(1)communication function:表示用户query的类型,比如陈述需求、询问属性、否定、选择疑问等等。
(2)slot-value pairs:一个slot-value pair表达一个限定条件。这一理解为,将用户的目标分解成一个一个的小任务(目标单元)。
举例说明:“我要西二旗附近的川菜”对应的communication function就是陈述需求,slot-value pairs有“西二旗”和“川菜”。
在对话系统中,口语化的处理是必不可少的,必须具备非严谨语言,和语音识别错误的鲁棒性。
2、对话目标状态跟踪:根据持续多轮的对话来确定用户当前的目标究竟是什么。跟踪用户状态,有助于在反复多轮的对话中,解决用户的问题、提供产品解决方案。
3、对话策略:简单地说,就是系统要如何回应用户的话。这个策略包含了预期收益最大化的目标。
4、语音合成:将对话策略输出的语义,转化成语音播报方式传达给用户(文字方式或短信,与之类似)。
对于任务驱动式的多轮对话交互,有两个很重要的指标:任务完成率和平均对话轮数。