让商业变得更智能

Amazon Alexa语音设计指南:用户说什么
语音识别软件设计

让Alexa明白用户所说

人类的对话是基于当前的背景进行的,语义的理解和信息提取并不是件简单的事情。您需要仔细和认真地设计Alexa和用户之间的对话,一个优秀的语音交互允许用户可以用多种方式表达意思

会话界面流程是由用户开始,Alexa再进行响应。对于很多人来说,这是全新的交互形式,所以请确保你的设计能让用户明白参与对话的方式

在你构建之前完成设计

思考用户使用你的产品体验和感受,确定你产品的目的,脚本,布局的流程,然后再继续设计意图和对话

语义识别

意图是用户想要通过产品实现的目的,比如制定出游计划,讲笑话,攻击怪兽等等。

不要觉得用户会完全按照你预期的方式表达,比如用户可能会说“计划旅行”,也可能说“计划去夏威夷度假”,为了确保你的产品能更好理解意图,请提供范围更广的句子、短语、单词来应对人们可能的表达方式

fetch_file11dc8a2f5cdb9c607ba438c526f65b51-picture

使用内置的意图

必备的技能包括取消、停止、提供帮助,对于这些和其他常见的意图,如重复,播放和下一个,使用内置的意图库。内置意图已经被配置,以便Alexa可以识别相应的话语。例如,有了帮助的意图,你不需要指定一个人可能要求帮助的方式。如果您的技能需要对人们可能会说的其他事情做出反应,您还可以扩展内置意图。

语音识别

话语是用户对Alexa说的话,话语由关键词、自然语音如填充词,信息槽组成。设计语音体验的一个最重要的方面是定义人们可能会说的范围。

为了有助于保证良好的体验,请提供完整的命令,确保你能覆盖的尽可能完整,包括微妙的变化甚至发音错误。

一次性:一次性短语完全满足激活一个意图所需的信息,他们可以用来开始一个技能,也可以在一个技能内使用

fetch_filec0a2d349df3a2b089e5b1366a89ea9c1-picture

不完整的信息:用户经常发出的命令或请求,是不完整的变量,这可能会导致多回合对话收集其他信息

fetch_file6fdb5dbd7cdf083f05b1ee39f24b396a-picture

过度回答

有时,Alexa只发出一个请求,用户可能会回答多个信息,如果Alexa询问出发日期,用户可能会回答日期和出发地,甚至包括其他信息,如目的地和活动目的,却可能忽略了Alexa所需要的日期

fetch_file3519f089343bb50ffbf03c09d48a18d9-picture

处理用户的纠正

有时候,当人们知道Alexa有什么错误或者他们改变主意时,他们会进行更正。例如,用户可能会说“不”或“我说”,然后才是有效的话语。你需要做好相应的应对机制

fetch_file0c74210996cca9c0a05e54331942bc14-picture

覆盖更多的话语

为了确保你的产品体验好,一个好的标准是每个意图包含30句或更多的话语作为表达方式。我们不可能100%覆盖所有表达方式,但是例子越多体验会越好。另外,要有不断添加话语或表达方式的计划。

创造多样话语的方法

假设用户说“我想计划一次旅行”,那么Alexa需要收集目的地城市,抵达城市,旅行日期和活动。这是一个很好的机会,请家人或朋友玩游戏,以便模拟对话

fetch_file3ebbc08c43ea94fff62bffab0394d598-picture

fetch_file146f4ee931c7ecf71094130d0bc296d5-picture

确定槽(变量)

插槽允许人们指定话语的可变部分,例如对话里的城市或日期。插槽在以任务和信息为重点的技能中很常见。设计插槽如何以话语显示,然后从内置目录中选择插槽值或提供您自己的插槽值。

在下列的例子中,{toCity} and {travelDate} 就是槽:

“I’d like to go to {toCity}”

“book a trip for {travelDate}”

“plan a vacation to {toCity}”

使用内置的槽值

使用内置的槽值,可以节省时间和提高效率。你也可以对内置的槽值进行扩展。例如,对于本地区域,您可以扩展AMAZON.US_CITY以包括所有的本地城镇。

仔细检查槽值

尽管槽值查找、复制黏贴起来很方便,但仍要认真检查。不正确的插槽值会在技能逻辑中产生错误并中断用户体验。注意以下几点:

重复的槽值

确保消除不必要的重复值

避免包含无关的单词

拼写错误或不正确的标点符号

来源:肥寒,微信公众号:chanpingdog,成都软件开发

语音识别软件设计