VOICE DESIGN GUIDE 语音设计指南翻译

2018.02.12

原文链接 https://developer.amazon.com/designing-for-voice/

1. Design Process设计流程

一个通过思考语音体验的设计过程


Alexa 帮助人们将事情做得更快捷,更轻松,更愉快。通过将Alexa引入语音对话,用一种新的互动方式让您的客户感到满意。

在设计 Alexa 技能时,为用户和 Alexa 之间的对话dialog创建脚本script。请专注于帮助用户获取他们所需,协助事物正常工作,最后可以增加有深度的操作过程和惊喜。想象一下,你想让人们使用你的技能体验以及感受什么。

1)链接用户和目标行为,创建故事story

从人们想要完成的事情开始,确定技能的可行性和使用它的好处。 然后,找出描述人们需要做什么的故事story。 稍后,使用脚本script和流程来确定交互的细节和表达方式variations

确定目的和可行性

描述一个或多个人们会发现自己的技能有用和可取的场景。 通过询问以下问题来确定技能的能力:
* 这个技能的目的是什么? 人们为什么要使用它?
* 在与技能互动之前,之中和之后,这个人会做什么?
* 人们从技能上得到什么,他们不能得到另一种方式?

确定用户故事story

根据技能的目的和能力,确定个人的步骤和行动。

  • 用户能够做什么,不做什么?
  • 这个人希望得到什么信息?
  • 用户可以调用该技能的方式是什么?
  • 什么功能直接支持的目的?
  • 是否有其他经验需要的信息,例如从网站或移动应用程序?

2)编写脚本script

脚本显示用户和Alexa之间的对话,如电影或播放,是确定对话流程的好方法。 使用脚本来帮助识别您可能尚未解决的情况。

编写脚本时请考虑以下几点:

  • 保持互动简洁。
  • 写人们如何说话,而不是他们如何读写。
  • 避免重复的短语。
  • 指示用户何时需要提供信息。
  • 不要以为用户知道该怎么做或将会发生什么。
  • 显然目前的选择。
  • 一般来说,一次只能提供三个以上的选择。
  • 一次一个地询问信息。

脚本script示例


角色对话
用户:Alexa,打开 Paragon。
Alexa:欢迎来到Paragon。 你可以得到一个投资组合更新或安全报价。 你喜欢哪一个?
用户:投资组合有什么更新
Alexa:你的投资组合今天增长了0.27%。 总共$ 322。 你想要改变的细节?
用户:是。
Alexa:Crystal Cleaner 增长了0.35%,总收益为165.03美元(半秒停顿),Pizza Barn 增长了0.21%,总收益为157美元。 (半秒停顿),而 Belle’s Boats 上涨1.41%,收益为27.68美元。 (半秒暂停)你想要其他任何投资组合的细节?
用户:就这样吧。
Alexa:你今天还想要什么帮助?
用户:没什么,谢谢。
Alexa:好的,祝你有美好的一天。
角色对话
用户:Alexa,问Paragon今天我的投资状况。
Alexa:你的投资组合今天增长了0.27%。 总共$ 322。 你想要分解你的投资吗?
用户:嗯。
Alexa:Crystal Cleaner 增长了0.35%,总收益为165.03美元(半秒停顿),Pizza Barn 增长了0.21%,总收益为157美元。 (半秒停顿),而 Belle’s Boats 上涨1.41%,收益为27.68美元。 (半秒暂停)你想要其他任何投资组合的细节?
用户:退出。
Alexa:好的,祝你有美好的一天。

3)开发流程

一个基本的脚本并不完全代表人们如何与现实生活中的技能互动。 用户可能会说太少,太多,或者说你不期望的事情。 使用以下技巧来扩展您的脚本并捕捉用户可能完成任务的各种方式:

概述最短的路线完成

完成的最短路径通常是当用户同时提供所有信息和插槽时,如果相关,则已经链接了一个帐户,并且在一次调用该技能时满足其他先决条件。

概述备用路径和决策树

通常,用户所说的内容不包括完成请求所需的全部信息。在流程中,确定备用路径和用户决策。

概述系统逻辑必须作出的幕后决定

确定幕后的系统决策,例如新用户或返回用户。后台系统检查可能会改变用户所遵循的流程。

概述技能将如何帮助用户

在帮助中,包括明确的方向,用户可以使用该技能。基于技能的复杂性,帮助可能会提供一个简单的回应或许多回应。

大纲帐户链接过程,如果存在

确定帐户关联所需的信息。流程还需要确定当账户连接尚未完成时技能将如何响应。

4) 准备好建立

一旦你有一个脚本和一个详细的流程,开始创建你的技能的结构,用户会说什么来参与。

识别意图

意图代表了你的技能能够做的独特的事情。 计划行程的技巧可能有五个意图,例如PlanATrip,BookTheTrip,Stop,Cancel和Help。
有关在脚本和流程旁边生成意图列表的信息,请参阅用户说。

识别话语

话语包括强大的单词,短语和句子的列表,用户将参与并实现意图。 例如,要使用PlanATrip意图,用户可以说“计划旅行”,“计划下个星期五的旅行”或“计划到波特兰的徒步旅行”。

2. What Users Say 用户表达方式

确保 Alexa 理解人们所说

人类的谈话就是在目前的情况下,以有意义的方式交换意思。 表达和提取意义并不像看起来那么简单,您需要仔细和有意设计Alexa和您的客户之间的对话。 一个伟大的声音体验允许人们可以表达意义和意图的多种方式。

会话用户界面由一个人开始,然后由Alexa响应。 对于许多人来说,这是一种新的交互形式,所以请确保您了解用户参与对话的方式,以便您可以进行设计。

1) 在构建之前完成设计

想想你想用自己的技能来体验和感受的人。 一旦你确定了你的技能的目的,书面的脚本,并布置流程,继续设计意图和话语。

2) 识别意图

意图代表用户可以要求你的技能做的事情。 你的技能可能有助于计划旅行,获得身份,讲笑话或攻击怪物 - 这些都是意图。 有关确定技能意图的指导,请参阅设计流程。

避免假设人们会精确地说出你预期的意图。 虽然用户可能会说“计划旅行”,但他或她可以简单地说“计划去夏威夷度假”。为了确保您的技能在人身上表现良好,请提供广泛的句子,短语和单词 可能会说。

以下是与意图PlanMyTripIntent对应的话语示例:

  • “我想去旅行”
  • “让我们开始计划旅行”
  • “计划旅行”
  • “我需要休假”

3) 使用内置的意图

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

4) 识别话语

为了确保一个良好的体验,请通过完整的命令,通过不完整和不明确的片段提供示例。 要确保你有覆盖面,包括微妙的变化,甚至发音错误。 例如,在谈到花时,包括“安排”和“花束”,即使它们有相似的含义。

One-shots(不太清楚怎么翻译):一次性发出一次性的话语,完全满足激活一个意图所需要的。 他们可以用来开始一个技能,并在一个技能内使用。

例子:
用户:我下周五将从西雅图出发去波特兰远足。

部分信息:用户经常提供命令或请求,并包含意图所需的一组不完整的变量信息。 这将导致多回合情况收集其余的信息。

例子:
用户:我想在Rooster Rock附近去风帆冲浪。
Alexa:什么时候出发?

5) 处理回答

偶尔,即使Alexa只请求一个,用户也可以提供多个答案。 如果Alexa提示出发日期,则用户可以通过提供日期和出发城市来回答。 用户甚至可能提供其他需要的信息,如抵达城市和活动,而不提供Alexa请求的日期。

处理这种情况对于对话式设计来说很重要。 在“对话框界面参考”和“计划我的旅程”教程中了解更多信息。

例子:
Alexa:你想什么时候去?
用户:我将于下周五离开西雅图前往纽约。

6) 处理来自用户的更正

有时候,当人们知道Alexa有什么错误或者他们改变主意时,他们会进行更正。 例如,用户可能会说“不”或“我说”,然后是有效的话语。 准备妥善处理这些问题。

例子:
Alexa:这听起来像一个有趣的旅行。下星期五你会去波特兰风帆冲浪,你将从西雅图出发。我可以预订吗?
用户:不,我要去Rooster Rock。
Alexa:啊知道了 你下星期五前往罗斯特岩石去风帆冲浪,你会离开西雅图。 准备预订吗?

7) 涵盖各种各样的话语

为了确保你的技能表现良好,一个好的基准是每个意图30个或更多的话语,即使是更简单的意图。 你不需要100%的覆盖率,但更多的例子是更好的。 此外,计划继续增加话语,以提高技能表现。

有关创建不同的话语

比方说,用户说:“我想计划一次旅行。”然后,Alexa的需要收集目的地城市,到达城市,旅行日期和活动。这是一个很好的机会向家人或朋友来演戏,让你可以模拟对话。

完整信息:
想一下,用户可能会说所有的关键词slots在一个语句。

例如:
用户:我想要去浮潜下周五在阿鲁巴。
用户:我需要从西雅图到阿鲁巴的机票下周五。

部分信息:
正常情况下,人们只给你很少的信息。这是一个重点因为一般人们一句话不会涵盖所有的关键点。
>例如:
>用户:我想要去浮潜。
>用户:我需要从西雅图飞往阿鲁巴的机票。
>用户:我想去Aruba。

8) 确定关键词slots

关键词slots允许人们指定的话语的可变部分,例如城市或日期。关键词是在以任务和信息为重点的技能普遍。设计的填充词如何话语出现,然后选择从内置的目录填充或提供自己的关键词的填充。

在下面的示例话语,{toCity}{travelDate}是关键词slots

例如:
用户:“我希望去{toCity}”
用户:“预订{travelDate}的旅程”
用户:“计划到{toCity}休假”

9) 回顾关键词slots

尽管可能很容易找到,复制和粘贴单词列表以填充插槽值,但请务必查看和编辑内容。 不正确的插槽值会在技能逻辑中产生错误并中断用户体验。 注意以下几点:

重复的填充词。

确保消除重复值。

单词与关键词slots无关。

避免包含与关键词slots无关的单词。

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

对于包含撇号(例如“孩子的游戏”)的值,请确保使用简单的撇号,而不是通常由文本编辑软件插入的卷曲撇号。 查看支持的标点符号。

3. How Alexa Responds Alexa如何回应

如何说话可以使人们可以很容易地理解和交互


1) 简洁性

用户需要Alexa简明地表达。这有助于他们更清晰地了解Alexa的在说什么。冗长的回复不利于人们去跟随说话者并记住他们所说。

一口气说完

当编写的Alexa会说什么时,你可以大声读你写的话语。如果你能说在对话一口气可以说完,长度大概是不错的。如果你需要喘口气,应当考虑减少对话长度。

对于包括连续想法,如在一个任务的步骤的响应,分别读取每个想法。虽然整个反应可能需要不止一口气,确保你只需要呼吸之间,并在思想没有。

距离测试

对于 Echo Show,测试7英尺(2.1336 米)的距离。对于Echo Spot,测试5英尺(1.52400 米)的距离。

Echo Show 和 Echo Spot 弥补了屏幕上的细节语音体验。避免重复的语音体验,而是提供图形体验的附加信息。使用视觉效果来提供反馈,使用户能够更快速地完成想要做的事。

有关实现 Echo Show 和 Echo Spot 视觉体验的信息,请参阅如何选择合适的模板。

2) 更自然地语音和读写

激发用户自然地说他们想要的东西。不要用一个选项菜单提示。而是让用户知道什么是可能的,让他们直接的表达。

确保 Alexa 就像一个人,例如使用缩写和避免行话。这将帮助用户更容易地理解Alexa和鼓励用户的回答地更自然。

一定要听的时候是Alexa说出你的提示如何发声。有时,写短语听起来不自然,需要改写。

例如:(推荐)
用户:Alexa, 打开 Plan-a-Trip.
Alexa: 来计划这次旅行吧,你想去哪里?

例如:(不推荐)
Alexa: 来计划这次旅行吧。说,“我希望去一个城市名”表达你想去的城市。说“我会待到某个日期”来表达你会待到什么时候。你说:“我从某个城市出发”说你的出发城市。你想怎么安排旅程?

Echo Show 和 Echo Spot

避免只是简单地播放屏幕上应当显示的内容,而是让Alexa说出主要想法,并允许用户查看视觉效果以获得更多的上下文或选项。

3) 用户提示指南

一般来说,在用户回应之前最终会提出问题。这个问题提供了一个提示,开始发言并指导用户下一步该说些什么。在问题结束后立即结束提示,以便在Alexa发言时人们不会尝试回答。具体一点,但要准备好让用户以不同的方式回答回答问题

例如:(推荐)
Alexa:我们计划这次旅行。你想访问哪个城市?

例如:(不推荐)
Alexa: 我们计划这次旅行。一旦我知道你要去哪里以及你想在那里做什么,我可以帮助你。你想去哪里?你最近去过波特兰。

Echo Show和Echo Spot的后续步骤

通过屏幕,您可以更加谨慎地提出问题以保持对话的进行,并更多地依靠屏幕为用户提供下一步。用户可以决定触摸屏幕或说话以启动下一步,例如说“Alexa,显示更多”。

4) 使用会话标记

当人们交谈时,他们使用标记词和短语来组织和指导主题,这有助于将谈话分为更易于理解的部分。您的技能用户也会从标记词和短语中受益。

时间线标记

“首先”,“一半的地方”,“然后”和“终于”有助于设定对下一步骤的持续时间,顺序和准备情况的期望。当多个步骤或重要的时间投入将成为经验的一部分时,请使用这些词语。但是,避免使用时间线标记进行快速交互。

致谢和反馈

“谢谢”,“明白了”,“好的”,“好的”和“确定的”让用户知道他或她已被理解或已收到信息。

指针

“这个”,“那个”,“这里”和“它”有助于确定之前引用或即将提及的主题。

转变

“现在”,“如此”,“好的”和“下一个”有助于在转向不同的主题时引入变化。

例如:
Alexa:好的,洗毛衣有三个步骤。(半秒暂停)
Alexa:首先,将毛衣从里面翻出来,用柔软的洗涤剂清洗。(半秒暂停)
Alexa:接下来,在低温下将毛衣放入烘干机中10分钟。(半秒暂停)
Alexa:然后,将毛衣放平表面以完成干燥。完成!

5) 回答多样性

使用多样性将自然和较少机器人的感觉注入到对话中,并使重复交互听起来不那么死记硬背或记忆,例如通过从相同提示的合理同义词中随机选择。

如果用户经常听到相同的提示,例如在您的打开和关闭提示中,请介绍变化。这种品种是增加个性的好方法。

自适应提示

随着一个人越来越多地使用技能,他或她变得越来越舒适,并且记得会发生什么。考虑让提示更短,更直接,甚至承认使用频率。

例如:
用户:Alexa,让My Tutor播放今天的课程。

回答1
Alexa:好的,开始播放课程。
回答2
Alexa:这将会非常好玩!享受今天的课程。
回答3
Alexa:祝你好运!今天的课程非常棒!
回答4
Alexa:现在播放今天的课程。玩的开心!

Echo Show和Echo Spot的可预测性

在屏幕上,重复性和可预测性是可以的,你的用户会为此感谢你。在整个视觉体验中使用一致的术语,图形和标签,以便用户快速扫描和浏览内容。

6) 使用并行语言

一致地使用名词和动词形式,特别是对于一系列的项目。参见更多名单

例如:(推荐)
Alexa:我可以帮你搭车,给司机小费,查看激增的价格,或者收到一张收据。

例如:(不推荐)
Alexa:我可以帮你搭车,给司机小费,获取最后一次乘车的收据或立即检查。

记住说了什么

类似于与朋友交谈,用户很欣赏Alexa什么时候记得最近发生的事情以及所说的内容,特别是对于频繁的操作和静态信息。例如,你可能正处于游戏的中间,走开一两个小时,然后从你离开的地方继续前进。

要在你的技能构建此,请参阅文档会话属性,该会话属性在Node.js的SDK指导和持久性的指导

熟悉的Echo Show和Echo Spot图像

考虑显示一个图像和一个与用户上次使用该技能所做的相关的提示。例如,您可能会显示“您是否想继续烘烤胡萝卜蛋糕?”并以蛋糕的形象出现。

7) 提供明确的选择

组织你的回应和提示,让用户有明确的选择。开放式问题可能会让用户感到困惑,或导致用户以您不期望或支持的方式回答问题。例如,问“你想要什么?”太开放了。即使是像“你想去家乐福还是沃尔玛?”这样的开放式回应“是”。

例如:(推荐)
Alexa:这里有家乐福和沃尔玛。你想要去哪一个?

例如:(不推荐)
Alexa:你想去家乐福和沃尔玛吗?
Alexa:你想要去哪一个?家乐福还是沃尔玛?

8) Echo Show和Echo Spot 选择

当用户要求列表时,您的技能应通过语音以及更正式地在屏幕上的模板中进行对话回复。通过使用清晰的项目名称,图像和提示文本,为用户提供想要说的内容的创意,创建易于选择的列表项。请记住,尽管用户可以点击列表项目进行选择,但他们也可以说出项目的名称。查看导航和滚动列表的意图。请记住,虽然客户可能会在Echo Show屏幕上看到多个列表项目,但一次只能在Echo Spot上显示一个项目。

要显示列表中的选项,通常需要使用列表模板。请注意这些列表模板如何显示在Echo Show(左边)和Echo Spot(右边)上。

列表模板1,垂直列表,在Echo Show和Echo Spot上:
list-1
表模板2,水平列表,Echo Show和Echo Spot:
list-2

例如:
用户:什么样的奶酪是用牛奶制作的?

回答1
Alexa:这里有几种由牛奶制成的奶酪。
回答2
Alexa:布里和戈贡佐拉很受欢迎。这里还有其他几个。

Echo Show和Echo Spot上的标题

在模板中,使选项清晰并使用标题来建立上下文,该标题解释正在显示的列表。例如使用标题案例:“牛奶奶酪的结果”。改变语音响应,同时确保模板上的标题精确且一致。这可以帮助正在查看屏幕的用户快速了解列表中的内容。

9) 简洁地安排列表选项

列表比单纯的响应更长更复杂。如果您需要给出两到五个选项,对待每个项目就像一个简单的回应,并明确设定对即将到来的预期。

有Alexa说要介绍清单,例如“这有几个比较火的快餐”,让她在列表中的项目之间暂停一下。确认您可以舒适地阅读每个项目,以一口气的对话速度大声朗读。

简洁的清单

有Alexa阅读每个列表项中的基本内容; 例如,总是阅读标题,如果对语音响应至关重要,则只能阅读辅助文本。通常,读取列表中的前几项不应超过20秒。

从阅读两个到五个项目开始,并根据以下内容进行调整:

  • 用户对列表项目的熟悉程度如何。
  • 项目名称需要多长时间和语音友好。
  • 每个项目读取和显示的元素总数,例如,Alexa可能会在显示图片,评分和距离元素时读取项目名称。
  • 物品的数量听起来是否足够,没有听起来太长。

将项目排列成列表

为了提高阅读列表时的理解力,尝试将项目分组为两到三个。另外,不要尝试将所有内容都打包到列表项中。允许用户点击该项目以了解更多信息。

例如:(推荐)
Alexa:这里有你可能喜欢的奶酪。切达和高达,以及戈尔贡佐拉,帕玛森和布里。

例如:(不推荐)
Alexa:你可能喜欢的奶酪有切达奶酪,高达奶酪,Jarlsberg奶酪,波特切达奶酪,圣阿古尔蓝奶酪,戈尔贡佐拉奶酪,布里奶酪,格吕耶尔奶酪,夏普切达奶酪和Reggiano Parmesan奶酪。

有节奏地陈述列表

使用节奏来帮助听众区分一个列表项目结束和下一个开始的位置,例如:
* 在每个项目之后使用语音合成用的标记语言(SSML)指定逗号加上350毫秒暂停,尽管没有句点或问号。这使得最终的项目听起来更类似于列表中的其他项目。
* 避免添加额外的暂停以列出以句号或问号结尾的介绍。
* 对于冗长的列表项或那些需要用户深入思考的项目,考虑用400 ms暂停替换350 ms的暂停项。
* 总是通过倾听来测试体验,然后进行调整直到听起来正确。

朗读列表

当Alexa只读取列表中的一些可能项目时,为用户提供一种告诉Alexa阅读更多信息的方法。

当你知道你的顾客对前几件产品感兴趣时,Alexa会提示用户提问,例如“你想听更多种类的奶酪吗?”

Echo Show 或 Echo Spot:有Alexa告诉用户“让我知道你是否想听到更多。”然后,等待用户输入。这允许用户最多花费30秒来查看和点击项目或要求更多信息。如果用户在30秒内没有采取行动,则技能会话结束。

例如:
Alexa:(仅限Echo Show或Echo Spot)如果您想要了解更多信息,请告知我们。

例如:
Alexa:你想了解更多种类的的奶酪吗?

列出Echo Show或Echo Spot的介绍

在屏幕上引入清单时,最好保持简单并提供有关内容的最少信息,并让用户仔细阅读清单。

避免像“你可以说出奶酪的名称或点击该项目”这样的说明。这样的说明是多余的,并且对用户具有有限的价值,因为与列表的交互在技能上是常见的。此外,避免指出项目数量,除非计数很重要并且从交互变为交互。

另外,在提交清单之前不要提问。例如,问“你想要哪种奶酪?Gouda,Cheddar,Brie ……“混淆了用户何时说话的问题,而用户可能会在Alexa阅读选项时尝试回答问题。不要使用鼓励用户插入的提示,例如“当你听到你想要的选项时,就说出来”。插入插件也是不鼓励的,因为用户必须使用唤醒词来中断Alexa的响应。

列出Echo Show或Echo Spot上的项目

通常,列表项不需要标点符号,因为文本不是完整的句子。但是,您提供给用户的示例问题列表应该包含问号。例如,一个列表项可能包含“1918年这一天发生了什么?”

Echo Show或Echo Spot上的列表

要提高用户扫描列表的能力,请选择显示哪些信息。通过Echo Spot,用户每次只能看到一个列表项目,而不管选择了哪个列表模板,但使用Echo Show时,请确保选择一种布局来帮助用户快速浏览项目。对于用户可能浏览的项目,考虑在Echo Show的屏幕上显示更多项目,方法是使用每个项目的较窄图像。当用户需要研究每个项目的细节时,例如选择配方时,请考虑使用更宽的图像。

列表模板2与Echo Show上的肖像图像:

在Echo Show上列出具有横向图像的模板2:

在Echo Spot上列出模板2:

Echo Show上的垂直列表

在Echo Spot上,所有列表一次显示一个项目,因此垂直和水平列表之间没有区别。对于Echo Show,开发人员可以控制列表显示的方式。

对没有图像的列表使用垂直列表,对于列表项目不使用图像的列表使用垂直列表。另外,如果小图片足以提供良好的用户体验,则可以使用垂直列表来提高效率。垂直列表适用于以下类型的内容:

  • 样本话语清单(用户可以在你的技能中说出的短语)
  • 数字信息,例如价格或卡路里数
  • 股票报价单
  • 银行交易记录
  • 食品项目清单
  • 联系人列表
  • 目录
  • 时间表

列表模板1,垂直列表,Echo Show:

Echo Show上垂直列表的变化

列表项的文本可以换行到第二行。在第二行之后,文本被截断,不会延伸到第三行。要为第二行指定文本,请使用换行符或使用辅助文本字段。要将文本放置在最右侧的列中,请使用第三级文本字段。

列出具有主要和辅助文本字段的模板1:

包含主要,辅助和第三方文本字段的列表模板1:

4. Design Checklist 如何设计列表

提高用户体验的几个关键点

你如何判断当前的决策是正确的?

5. Glossary

评论