一、适应用户的任意讲话方式
1、能命中某个意图的表达方式,尽可能多样化
这是基本要求,语言表达的不够丰富,能够命中的概率就越小。
2、能够处理“过度回答”的情况
过度回答不是一种错误,而是用户一次性给你全部的信息,那么系统需要全盘接受有用的信息,而不是一而再再而三按部就班的继续问。
3、询问更多信息,以便获取到更准确的意图
当用户说出的指令模糊不清的时候,需要系统去澄清更多的信息,以便进入正确的意图。
4、支持重复上一个回答的指令
用户应该在任意时候,都可以发出重复指令,这样系统会重复上一个回答。所以,系统里面需要内置“重复意图”,需要记住最后一轮会话;还需要理解用户到底是想重复上一个意图,还是想重复上一个句子。
5、接受修正
有时候用户知道Alexa可能回答得有误,或者自己改变主意了想纠正上一轮对话中的内容。所以,当用户有“不是,我其实是想说......”或者“你搞错哒,我是说......”此类表述的时候,系统要允许用户来修改之前的决定。
6、优雅的处理错误
系统很可能出错或者不理解用户的说话。因为只有语言信息,用户可能并不知道系统为什么出错或者为什么技能操作不成功,所以,需要系统明确地指出用户应该怎么做才能走出困境。而不是仅仅提示用户:“抱歉,我没有听清楚。”这就好像一个渣男对你说:“对不起,你是个好人”一样,我们要做一个优雅的人哈!
7、技能达不到用户要求时的设计
如果系统理解用户的话,但又不能处理的时候,比如你要出差,说了句:我想去仙德瑞拉,他可能提取出来了,但校验发现没有这个城市。系统需要明确的提示用户怎么才能回到正确的轨道上来,比如你提示:“地球上找不到这个城市名,请问您要去哪个城市?”
8、没有用户想要的技能的设计
直接提示还没有该技能,但我能做什么。不要给用户期待说,未来会实现的,敬请期待。这仿佛某人在给你画大饼。
9、用户沉默时的反应
用户讲了一半停住了,那么系统需要在一定的秒数之后提示用户继续说。这里的提示语言要尽可能跟前一句不一样,且可以多加一点点信息,以防用户根本不知道怎么说。
10、提供语言类的帮助
当用户询问关于当前技能的问题时,系统要给出有意义的解答,并且还能回到被中断的意图中来。
二、让整个交互过程定制化、个性化
1、能够区分新用户和老用户
对于新老用户(甚至是不同时辰打开某一技能的用户),提示语是不一样的。例如,一个新用户打开“菜谱”这个技能,提示说:“欢迎来到菜谱,我可以帮你找到一些家常菜的食谱,比如麻婆豆腐、辣椒炒肉,请问你想做哪道菜?” 如果是一个老用户打开“菜谱”,那提示可以变成:“欢迎回到菜谱,你上次做了麻婆豆腐,请问你这次想做啥?”
2、通过使用技能记住用户个人信息或习惯
要考虑到不要侵犯用户隐私
3、使用适应性提示语
当用户很频繁地打开某一个技能时,可能非常熟练这个技能了。那么提示语可以变得相对短一些,更直接一些。
4、避免输入信息
这里的信息包括地址、电话号码、邮编、密码,都不要通过语音输入。
5、获取用户地址
6、意外退出之后,能够记住当前的技能
这里更好的设计是,设定哪些技能在意外退出之后,可能有重新回到中断处的需要。
三、所有的选项对用户开放,无优先级之分
1、技能名称要简短有效
容易记,说起来顺口,不容易被识别成错字
2、为等待时间和系统响应时间设置时长
以及对应的话术,参看第一部分,用户沉默(这个时间一般设成了8秒 )时的反应。
3、提供给用户的选项要简单
避免说出一长串的选项
4、任务要定义清楚、具体
避免模糊、复杂的任务。如果是,请把流程梳理清楚、尽量简化交互和对话轮数。
5、让用户选择时要明确,不要提开放性的问题。
开放性的问题在人类世界中往往是需要阅读理解的,系统不会阅读理解,所以尽量引导用户说清楚自己的需求。这好比一个孩子问妈妈:“妈妈我想看电视。”妈妈说:“你上次期末考试没及格,你觉得我应该同意吗?”在业务场景下,选择某一个选项,“请问你是问集团的收款情况还是收入情况?”改成“下面的指标,你要查哪一个?”
6、设置三个最佳选项
如果必须要从多个选项中选择一个,而且选项不必穷举,那么可以推荐三个最佳的选项,千万不要报名单啊。提示语可以说:“根据你上周的使用习惯,最经常使用的是这三个技能/最常做的是这几个菜”;“根据你上周的购物记录,你最常买的商品是这三个/你可能会喜欢的是这三个”
7、如何让“报菜名”(list)变得让人接受
①3~5个一组,报完后让用户决定是不是要听更多。例如:“我可以帮你打电话、定披萨、定闹钟,你还想听更多技能吗?”
②让每一个选项名简单点。这取决于用户对选项有多熟悉;选项名有多长,读起来有多绕口;每一个选项名要突出的元素有多少。比如在查询菜名的时候,用户会说:“有没有川菜?”系统怎么回应呢?如果说:“找到了以下川菜:酸菜鱼,辣度三颗星,油水五颗星;毛血旺:辣度四颗星,油水五颗星;麻婆豆腐,辣度三颗星,油水三颗星.......”你会不会觉得比较烦,而且很可能记不住。不如直接报菜名。
③注意系统设置的标点符号和额外的停顿时长。
④征求用户是否想听更多的东西
⑤用问题让用户参与进来。用户是对话的开始方,但系统需要引导用户去使用技能,说出关键的要素。问题一定要清晰,不要用修辞等复杂的语法。
⑥提示语+问题的形式,提示语是告诉用户现在在做什么,问题是告诉用户系统需要什么样的信息 。比如:开始计划行程。你想去哪个城市?
⑦避免多余的问题,比如:“你要提交这个请假申请单吗?请回答确定或取消。”
⑧简洁地结束对话。你可能觉得用户还可能需要做别的事情,是不是要继续提示:“你还想我为你干什么呢?”最好不要,干净的结束对话,因为上面的问题会给用户更大的认知负担,她不仅需要记住你的技能,还可能担心自己说了个系统不会的技能,系统的回复让自己陷入尴尬的境地。
四、与用户进行有共鸣的交谈,而不是应答、宣讲
用户在交谈过程中,需要产生信任感和确定感,才不会觉得对话有负担。
1、怎么说就怎么写
在为系统写对话脚本的时候,尽量按照说话习惯来写,一人扮演系统,一人扮演用户,将对话念出来,看看是不是都自然,呆不呆板。但是在测试之后,还要思考一下,系统的问题是不是足够清晰。因为人的对话可以通过语气、表情以及代词的理解读出言外之意。当系统不能完全理解代词、表情、语气的时候,也不能完全按照人类的说话习惯来写。
这里有几点指南:① 交互尽可能简洁,每个词都算数;②使用大众词让对话不要那么正式或者僵硬;③加一下停顿和标点以增加句子的韵律;④避免重复性的词组
2、语言简洁,没有多余词汇
3、“一口气”测试。读自己的对话设计时,试着按照正常对话的语速一口气读出来,能过就OK。
4、文本设计要有相关性。用户回答之后,给出的文本提示/选择项文本要与刚刚的回答相关,而不是将系统默认的文本扔出来。
5、使用平行词组。这就是中文里面的排句,设计选项的时候,选项词组句式结构要一致。比如“青青的草地、蓝蓝的天空、耀眼的阳光”就是句式结构一致。但“青青的草地,天空一片湛蓝,整个大地都被阳光照耀着”就不是了。
6、语言丰富多变,减少系统提示的机械感,增加系统的人格属性。如果某一个操作的提示很频繁,考虑在提示语设计上增加这一点。
7、使用对话标记词
8、时间标记词
9、使用反馈词
10、使用指代词
11、使用过渡词
网友评论