凌晨两点,你被厨房的滴水声吵醒,模模糊糊抓起手机想设个闹钟。屏幕的强光刺得你眯起眼,指尖在冰冷的玻璃上摸索半天——这时候你多希望自己只需要说一句:“半小时后叫我。” 然后翻个身继续睡。 这就是语音交互(VUI,Voice User Interface)存在的意义:让机器听懂人话,用对话代替点击。它和图形界面(GUI)完全不同——GUI 像一张摆满按钮的桌面,而 VUI 像一通电话,你只能靠耳朵听,靠嘴巴说,看不见,摸不着,信息转瞬即逝。 设计 VUI,本质上就是设计一场“看不见屏幕的对话”。设计师要像一个给客服中心写剧本的导演:什么时候该说话、说什么、说多长、听不清怎么办、用户打断怎么办、忘了上下文怎么办——每一处都要提前彩排好。 这篇文章的主人公小林,是“彩虹语音客服中心”的新人设计师。他接到的第一个任务,是为语音助手“小方”设计一套点外卖的对话流程。在接下来的六节课里,他会跟着资深设计师老周,从语音交互的特性和唤醒词,一路学到多轮管理、容错处理和反馈设计。你也会跟着他,把 VUI 设计的核心方法论完整过一遍。
对 AI 产品设计师而言,VUI 设计能力是“听得懂人话”的产品的灵魂。掌握对话流程设计与容错策略,你就能从“会调 API 的画图工具人”升级为“定义人机交流方式的产品塑造者”。
目录
可视化演示
动态演示语音交互VUI设计的核心机制,通过入门/进阶/实战/优化四种模式展示关键概念与交互流程。
本节配有交互动效(进入视口后自动加载,约 3KB)。
语音交互VUI设计:VUI与 VUI与GUI的本质差异 语音交互特性与用户预期 核心机制可视化 语音交互VUI设计整体架构与关键组件
语音交互特性:打电话的物理课
小林第一天上班,老周没给他讲理论,而是让他用座机给自己打了一通电话。“你发现没有?”老周在电话那头说,“你看不到我的表情,记不住我说过的每句话,等回复的时候还会心慌。”小林放下电话,恍然大悟——这就是 VUI 和 GUI 最大的不同。
语音交互有四个绕不开的特性。第一个是瞬态性:文字可以停留,语音说完就消失,用户必须靠短时记忆工作,所以话术不能长,重点不能堆。第二个是听觉单通道:眼睛被占用的场景(开车、做饭)才是语音的主场,但用户只能用耳朵这一个通道接收信息,信息密度天然受限。第三个是表达模糊性:人说话天生带着口音、省略、同音字和逻辑跳跃,“中杯少糖”到底是“少放糖”还是“少糖浆”,机器很难猜。第四个是时间压力:电话那头沉默三秒,人就会以为断线了。
这些特性决定了 VUI 设计的底层逻辑:一切以“降低用户认知负担、缩短等待时间”为纲。衡量一次语音对话是否成功的核心指标,是任务完成率。假设某个语音助手一周内被唤起了 1000 次,其中 860 次用户达成了自己的目标,那么:
小林把这个公式抄在笔记本上,旁边画了个话筒。他终于明白,设计 VUI 不是写文档,而是像排练电话客服的剧本——每一句台词都要为“帮助用户办成事”服务。电话那头的用户没有耐心,也没有回头看的权利。
- 分子成功完成的次数:统计所有用户目标被完整满足的对话,比如点单成功、闹钟设好、导航开始。漏掉关键步骤、用户中途放弃都不算。
- 分母总对话次数:凡是用户主动唤醒并发起请求的会话都计入,哪怕用户只说了一句“算了”就挂断。分母要“应收尽收”,才能反映真实体验。
- 乘以百分百把比率换算成直观的百分比。行业参考值:成熟语音助手的任务完成率通常在 85%~95% 之间,低于 80% 说明对话设计有明显漏洞。
唤醒词设计:怎么喊醒一个睡着的话筒
场景切到小林的家。他对着智能音箱喊“小方小方”,音箱亮起光环说了句“我在”。老周问:“为什么是'小方小方'而不是'方先生请开始工作'?”小林想了想:“因为后者太长了,喊到一半我就断气了。”
唤醒词是 VUI 的敲门砖,它的设计直接决定用户愿不愿意开口。选择唤醒词要满足三个条件:音节短(2~4 个音节最自然,像“小爱同学”“天猫精灵”“Hey Siri“都是这个长度);发音响亮(元音占比较高,辅音不咬舌,在嘈杂环境下才容易被捕捉到);语义独立(避免常用词,否则电视里一提到就误唤醒)。唤醒之后必须有唤醒反馈——一声提示音、一句”我在“,让用户知道”门开了“。而在驾驶、运动等高频率场景,还要设计免唤醒模式(如车载场景直接说”导航到xxx”),减少反复唤醒的疲惫感。
唤醒词设计有一个硬性指标——误唤醒率(False Alarm Rate)。它像电话总机拨错的概率:平均每小时设备在没有被呼叫的情况下自行启动的次数。假设某音箱在 24 小时测试中,有 12 次因为电视声、聊天声被误唤醒:
回到小林的比喻:唤醒词就是你在电话里喊的“喂,是客服中心吗”。喊得太普通,谁都答应;喊得太拗口,你自己都不想喊。好的唤醒词让机器“随叫随到,不叫不醒”。
- 分子误唤醒次数:统计设备在无人呼叫时自激发动的次数。某品牌的电视广告里出现唤醒词导致大批音箱亮灯,就属于这个指标下的典型案例。
- 分母测试时长:以小时为单位的连续测试时长,包含正常收视、交谈、环境噪声。时长越长,这个指标越可信。
- 相除得比率把误唤醒折算成“每小时次数”,便于横向对比。行业通常要求低于 1 次/小时,优秀产品能做到 0.2 次/小时以下。
对话流程设计:给客服中心写剧本
小林开始写第一个脚本。他满怀激情地写了一大段开场白:“您好,我是小方,我可以帮您点外卖、查天气、设闹钟、放音乐,请问今天有什么可以帮您?”老周看了一眼,划掉一半:“你的用户记不住这么多功能。开场白只说一句——'想吃什么?我可以帮您点外卖。'”
开场白的核心目标是让用户快速理解“能做什么”。与其罗列功能,不如用一句具体的话引导意图——把抽象的能力翻译成一个行动入口。对话流程设计的四个要点缺一不可:一是开场白要圈定边界,用具体场景打开用户的话匣子;二是意图引导靠提问,用封闭式问题降低用户组织语言的成本(“大杯还是中杯”比“您要什么”更容易回答);三是话术话风要口语化,不能有书面语的生硬感;四是主动声明能力边界,当用户问“你能帮我写论文吗”,直接说“这个我还不会,但可以帮你查资料”。
衡量对话流程顺畅度的指标是语义理解准确率——系统正确解析用户意图的比例。假设系统收到 400 条用户语句,正确识别出意图的有 360 条:
小林终于懂了,设计对话流程就像给客服写电话脚本:台词要短、提问要具体、承诺要诚实。一个合格的语音助手,不该让用户拿着电话听筒猜“这台机器到底会什么”,而应该在第一句话里就告诉对方:这里是点外卖专线。
- 分子识别正确的语句数:系统把用户的自然语言正确归类到预设意图(点外卖、查天气、设闹钟)的条目数。用户说“我饿了”被理解为“点外卖”,算对;被理解为“查天气”,算错。
- 分母用户语句总数:一次对话中用户说出的所有完整语句,包括反问、打断、闲聊。分母越真实,准确率的“含金量”越高。
- 比率换算百分比将小数转为百分数便于设定目标。90% 是及格线,95% 以上算优秀,剩下的交给容错处理去救场。
多轮交互管理:记住上一句话,才算会聊天
小林测试自己写的脚本时,发现一个尴尬的问题。用户说“我要一杯中杯少糖的拿铁”,然后补了一句“对了,把糖换成代糖”,系统居然卡住了。老周说:“这就是多轮交互——你要学会把对话里的信息像拼图一样收集起来。”
多轮交互管理解决的是“跨句信息整合”的问题。它的四个关键技术:槽位填充(Slot Filling),把用户分散在对话中的关键信息(杯型、甜度、温度、数量)填进预设的表单;指代消解,理解“这个”“刚才那个”“它”指的是什么;澄清确认,当信息有歧义时主动复述一遍(“您说的是中杯拿铁,少糖,对吗?”);话题转移,用户突然变换需求时,平滑地切换任务上下文而不是强行拉回来。
槽位填充是多轮管理的骨架。假设点咖啡需要 4 个槽位:杯型、甜度、温度、数量。用户在第一轮说出“中杯”(填 1 格),第二轮说“少糖,热的”(填 2 格),第三轮说“一杯”(填 1 格):
小林给老周打了个比方:槽位填充就像客服接电话时手里有一张订单表格,用户每说一句,他就填一格。填满了复述一遍让用户确认,没填满就继续追问。好的 VUI 多轮交互,就是让用户觉得“电话那头的人记得我说过什么”。
- 分子已填充槽位数:每一轮对话中,系统从用户话语里抽取并写入表单的信息格数。用户说“中杯”,杯型槽被填充,计 1 格;说“少糖,热的”,甜度和温度两个槽各计 1 格。
- 分母总槽位数:完成一个任务需要的最小必要信息量。点咖啡的四个槽位缺一不可,少一个都会导致订单无法执行。
- 计算完整度比率全部填满得 100%,此时系统有足够的底气问最后一句话:“确认下单吗?”
容错处理:信号不好时的救场艺术
第一轮内测,小林遇到了“翻车现场”。一位用户说“我要中杯拿铁”,系统听成了“大杯拿铁”,用户发现后愤怒地挂了电话。老周看着数据说:“你不可能让机器永远听对,但你可以让听错之后的世界不那么糟。”
容错处理是 VUI 的保险丝,包含四条铁律。识别兜底:当置信度低时,不要硬猜,要主动承认“我没听清,您能再说一遍吗”;打断机制:用户说“算了”或“不对”时必须能立刻中止当前流程,就像电话里的“等一下”——用户在对话中有随时改口的权力;超时处理:用户长时间沉默时给出提示(“您还在吗?”)而不是无限等待;失败重试:连续失败两次后要切换策略,比如从开放提问切换到选项式提问(“您是想要拿铁、美式,还是卡布奇诺?”)。
衡量容错能力的指标是纠错成功率——识别出错后,通过澄清、重试最终达成目标的概率。假设有 50 次对话发生了识别错误,其中有 42 次通过后续挽回到了正轨:
老周总结了一句让小林记到现在的话:“容错不是让机器不出错,而是让出错后的对话还能继续。”就像打电话信号不好时,你不会怪对方,而是会说“你再说一遍”——前提是对方愿意承认自己没听清,而不是假装听见了。
- 分子错误后最终成功的对话数:系统听错后,通过承认错误、复述确认、提供选项等手段,最终帮用户达成目标的次数。用户没发火,订单成功,计入分子。
- 分母出错对话数:凡是机器识别结果与用户真实意图不符的对话都计入。分母越大,说明识别引擎越弱,容错压力的来源就越明确。
- 除法与百分比将挽回率可视化。如果这个数字低于 70%,说明容错话术本身有问题,该回去检查兜底句型了。
语音反馈设计:让用户知道你还活着
又是一个深夜,小林窝在沙发里测试自己设计的点餐流程。他对着空气说了一句“来杯拿铁”,音箱沉默了 4 秒,然后突然开始播报订单详情。这 4 秒里,他三次以为设备死机了。老周说:“反馈!反馈!用户需要听到'我在工作'的声音。”
语音反馈设计是 VUI 的“存在感工程”——用户看不到进度条,必须靠声音知道系统状态。核心原则有四条。反馈及时性:用户说完话后 300~500 毫秒内必须有回应,哪怕只是一声“嗯”;听觉化表达:用提示音代表状态(短促上扬音=收到,柔和双音=完成),比语音播报更轻量;进度感知:处理长任务(如“帮我搜一下附近餐厅”)时要播放中间提示音,告诉用户“正在搜索,请稍候”,避免死寂;双模态协同:在有屏幕的设备上,用字幕、动画与语音同步呈现,降低纯听觉负担。
反馈设计里有个朴素却关键的指标——平均响应时延。假设系统收到了 5 次用户指令,响应用时分别为 0.4s、0.3s、0.6s、0.5s、0.2s:
小林关掉测试设备,把当年那通凌晨两点的电话想了起来——用户要的不是“完美对话”,而是“确定有人听见了我”。VUI 设计师的终极任务,就是让电话那头永远有声音,哪怕只是轻轻的一声“嗯”。
- 分子单次响应耗时求和:把每一次从用户说完话到系统给出反馈的间隔累加起来。注意要排除用户自己停顿、周围噪声干扰的时间,只统计系统侧延迟。
- 分母响应次数:参与统计的指令总数。样本量越大,平均时延越稳定,一般建议至少采集 30 次以上再下结论。
- 求平均值得出单次响应的平均耗时。0.4 秒是合格线,能与 TTS 播报无缝衔接,让对话像真人一样流畅。
AI 应用场景
智能家居语音助手
阶段:对话流程设计 + 唤醒词设计
解决的问题:用户在家中的场景极其碎片化——可能正在做饭、拖地、哄孩子,双手和眼睛都被占用。传统 GUI 需要用户走到音箱前低头操作,而 VUI 用“小方小方”唤醒词 + 多轮槽位填充,让用户在 3 米外就能完成“开空调、26 度、卧室”这样多意图叠加的操作。
具体案例:某个智能音箱品牌通过把唤醒词从四音节缩短为三音节,并将开场白从“我可以帮你控制家居设备”改为“空调调到多少度”,使首次使用任务完成率从 67% 提升到 84%。最受欢迎的话术是用户在厨房喊“小方小方,定时 20 分钟”,系统回“好的,已定时 20 分钟”——一个槽位一句话,干净利落。
车载语音导航系统
阶段:免唤醒模式 + 容错处理 + 超时处理
解决的问题:驾驶场景容错率极低——司机眼睛必须看路,手不能离方向盘,说错话还要承担安全风险。传统 GUI 需要点击多级菜单,VUI 则通过“免唤醒直接说指令”减少交互负担,并通过打断机制让用户随时改口:“导航到人民广场——不对,改成陆家嘴。”
具体案例:某车企车载系统接入“免唤醒+纠错”设计后,导航设置时延从 12.6 秒降至 4.1 秒。当识别置信度低时,系统会用选项式提问“您是去人民广场还是人民公园?”而不是重复让用户再说一遍,避免用户在驾驶中重复组织语言。
银行客服语音机器人
阶段:多轮交互管理 + 意图引导 + 能力边界
解决的问题:银行客服电话的痛点在于用户需求高度标准化(查余额、挂失、转账),但用户表达能力参差不齐。传统 IVR 菜单键层级深、等待长,VUI 通过槽位填充一次性收集“卡号+身份证号+查询类型”三个槽位,配合澄清确认“您是要查询尾号 1234 这张卡的余额,对吗?”降低误操作。
具体案例:某银行上线语音客服后,挂失业务从原来平均 4 分钟缩短到 1 分 20 秒。当用户说“我卡丢了”时,系统不会机械地列菜单,而是直接进入挂失流程,并在能力边界内声明“我可以立即帮您挂失,补办新卡需要去柜台”。
Python 演示
"""VUI对话流程模拟器:演示槽位填充与容错处理模拟一次"点咖啡"的多轮语音对话,跟踪槽位状态""" class VoiceOrderSimulator: def __init__(self): # 任务所需的槽位定义 self.slot_schema = { "cup_size": "杯型", "sweetness": "甜度", "temperature": "温度", "quantity": "数量" } # 已填充的槽位表 self.filled_slots = {} # 待追问的槽位队列 self.pending_queue = list(self.slot_schema.keys()) # 统计用计数 self.turn_count = 0 self.error_count = 0 self.retry_count = 0 def parse(self, raw_text): """解析用户语句并提取槽位信息""" slot_map = {} if "大杯" in raw_text: slot_map["cup_size"] = "大杯" elif "中杯" in raw_text: slot_map["cup_size"] = "中杯" if "少糖" in raw_text: slot_map["sweetness"] = "少糖" elif "正常糖" in raw_text: slot_map["sweetness"] = "正常糖" if "热" in raw_text: slot_map["temperature"] = "热饮" elif "冰" in raw_text: slot_map["temperature"] = "冰饮" for token in raw_text.split(): if token.isdigit(): slot_map["quantity"] = int(token) return slot_map def fill(self, slot_map): """填充槽位,返回本轮新增了哪些信息""" added = [] for key, value in slot_map.items(): if key not in self.filled_slots: self.filled_slots[key] = value added.append(key) self.pending_queue.remove(key) return added def do_turn(self, raw_text): """执行一轮对话,返回系统回复话术""" self.turn_count += 1 slot_map = self.parse(raw_text) if not slot_map: # 容错处理:没提取到任何槽位信息 self.error_count += 1 self.retry_count += 1 return "抱歉,我没听清您的要求,您能再说一遍吗?" added = self.fill(slot_map) if not self.pending_queue: return self.confirm_reply() msg = "好的,已记录:" msg += "、".join([self.slot_schema[k] + "为" + str(self.filled_slots[k]) for k in added]) missing = self.slot_schema[self.pending_queue[0]] return msg + "。请问" + missing + "要选哪种?" def confirm_reply(self): """槽位全部填满,发起最终确认""" detail = "、".join([self.slot_schema[k] + str(self.filled_slots[k]) for k in self.slot_schema]) return "您点的订单是:" + detail + ",确认下单吗?" def fill_rate(self): """计算当前槽位填充率""" return len(self.filled_slots) / len(self.slot_schema) def main(): sim = VoiceOrderSimulator() user_lines = [ "我要一杯中杯拿铁", "少糖,热饮", "2杯" ] for line in user_lines: reply = sim.do_turn(line) print("用户:", line) print("助手:", reply) print("槽位填充率: %.1f%%" % (sim.fill_rate() * 100)) print("轮次:", sim.turn_count, "出错次数:", sim.error_count) if __name__ == "__main__": main()
self.slot_schema = {"cup_size": "杯型", ...}预先定义点咖啡任务需要的全部信息槽位,相当于客服手里的订单表格。def parse(self, raw_text):将用户的自然语言拆解为结构化槽位信息,用关键词匹配模拟真实 NLU 的意图理解。if "中杯" in raw_text:用最简单的关键词匹配演示意图提取,真实产品中此处是 ASR + NLU 模型的输出。if key not in self.filled_slots:只填充尚未填写的槽位,避免用户重复说的话覆盖已有信息。self.pending_queue.remove(key)已填好的槽位从待追问队列中移除,系统就知道下一步该问什么了。if not slot_map:容错处理:一句话没提取到任何槽位时,主动承认没听清并引导用户重说。missing = self.slot_schema[self.pending_queue[0]]找出第一个尚未填写的槽位,生成追问话术。def confirm_reply(self):全部槽位填满后,复述完整订单并请求确认,对应“澄清确认”设计原则。return len(self.filled_slots) / len(self.slot_schema)实时计算槽位填充率,用来量化对话进度。
常见误区
误区语音交互就是把图形界面的按钮换成语音命令,菜单层级照样保留,用户说“返回上一级”就能回去。
正解VUI 根本没有“上一级”——声音是瞬态的,用户记不住树形菜单结构。设计语音对话要像写电话客服脚本,用提问引导代替菜单导航,用上下文承接代替页面跳转。把 GUI 的“返回”做成语音交互,等于让用户凭记忆在电话里走迷宫。
为何常见:设计师熟悉 GUI 的信息架构,容易把“层级”本能地带入语音设计,忽略了听觉通道的记忆瓶颈。
误区唤醒词越长越独特,误唤醒率越低。比如“小方同学请开始工作”比“小方小方”更不容易被误触发。
正解长唤醒词虽然降低了误唤醒率,但大幅抬高了唤醒成本——用户想用语音助手时还要背一句绕口令。好的唤醒词是“短而响亮”与“误唤醒率低”的平衡,与其堆长度,不如在唤醒反馈和声纹验证上做文章。
为何常见:把误唤醒率当作唯一指标,忽略了唤醒率和使用意愿这两个更前置的体验指标。
误区系统回复应该把信息一次性说全,避免用户追问。比如查天气时播报“今天晴,最高温度 28 度,最低温度 19 度,湿度 60%,北风 3 级……”直到把整屏数据显示念完。
正解语音是瞬态的,长播报等于让用户听写,前说后忘。好的 VUI 回复遵循“短句 + 确认 + 关键信息”结构,例如“今天最高 28 度,晴”。详细内容留给屏幕或用户主动追问,正如电话客服不会一口气背完整个套餐表。
为何常见:设计师默认用户需要所有信息,却忽略了听觉通道的信息承载上限远低于视觉。
误区容错处理就是设计一句万能的“抱歉,我没听清,请再说一遍”,所有识别失败都可以用它兜底。
正解重复让用户重说等于把沟通成本转嫁给用户。成熟的容错策略是逐级降级:先复述猜测内容(“您说的是中杯拿铁吗?”),再提供选项(“大杯还是中杯?”),最后才请求重说。连续失败两次必须切换交互策略,而不是让用户无限复读。
为何常见:把容错当成单点防护,忽视了它应该是一套“递减用户负担”的渐进式方案。
误区误唤醒率应该无限趋近于零,最好一年只误唤醒一次,这样用户就不会觉得被偷听。
正解压低误唤醒率往往伴随着漏唤醒率上升——用户真的叫它时它反而不答应。就像电话客服为了不接错线而故意不接所有来电,这是因噎废食。设计目标是“在唤醒率与误唤醒率之间取平衡”,像设置一道有宽容度的门,宁可偶尔多开一次,也不能让用户叫门没人应。
为何常见:把“隐私安全”直观等同于“少打扰”,忽略了语音助手的产品价值恰恰在于“随时可用”。
面试题
Q1. 语音交互中“瞬态性”指的是什么?
- A.语音数据在传输中会丢失
- B.声音说完就消失,用户无法回看← 正确答案
- C.语音识别的结果不稳定
- D.用户的注意力会实时转移
答案:B。瞬态性指语音信息播放完即消失,不像 GUI 的文字可以停留、回看。用户必须依赖短时记忆,因此话术要短、重点要前移。A 是传输问题,C 是识别精度问题,D 是注意力问题,都与“信息不可回看”的本质无关。
Q2. 一个好的唤醒词通常具备什么特征?
- A.音节越少越好,一个字最佳
- B.音节短、发音响亮、语义独立← 正确答案
- C.选用罕见生僻词降低误唤醒
- D.越长越能避免误触发
答案:B。唤醒词需要 2~4 个音节、元音占比高发音响亮、避免高频生活词汇。一字词在嘈杂环境难以被捕捉,生僻词和长词虽然误唤醒低但唤醒成本高,所以 B 正确。
Q3. 槽位填充在多轮对话中的作用是什么?
- A.把多轮对话中的关键信息收集到预设表单← 正确答案
- B.将用户语音转换为文本存储
- C.把对话内容压缩成摘要
- D.自动生成下一轮的回复话术
答案:A。槽位填充如同客服在订单表上逐格填写,把用户分散在不同轮次里的关键信息(杯型、甜度等)汇总进结构化的槽位。B 是语音识别(ASR)的工作,C 是对话摘要,D 是话术生成,都不是槽位填充。
Q4. 用户说“导航到人民广场——不对,改成陆家嘴”,系统应如何处理?
- A.忽略后半句,按第一次指令导航
- B.自动启用打断机制,以最新指令为准← 正确答案
- C.询问用户到底想去哪一个
- D.停止响应并等待用户重新唤醒
答案:B。这属于典型的“打断+改口”场景。VUI 设计应支持用户随时中断当前流程并以最新意图为准,正如电话里说“等等,我说错了”时话务员会立即更正记录。A 忽略更新,C 增加多余负担,D 放弃服务。
Q5. 下列哪项是“误唤醒率”的正确含义?
- A.用户叫了设备却没反应的概率
- B.设备没有被呼叫却自行启动的频率← 正确答案
- C.设备听错用户指令的概率
- D.语音识别引擎的出错频率
答案:B。误唤醒率指平均每小时设备被环境声音(电视、闲聊)意外唤醒的次数,如同电话总机频繁接错线。A 描述的是漏唤醒率,C 是语义理解错误,D 是 ASR 错误率,三者各不相同。
Q6. 对话流程设计中“意图引导”的常见手段有哪些?
- A.用封闭式提问降低用户回答难度← 正确答案
- B.开场白给出一个具体行动入口← 正确答案
- C.一次播报全部功能菜单
- D.用选项式追问缩小意图范围← 正确答案
答案:ABD。意图引导的核心是“帮用户轻松说出口”:封闭式提问(大杯还是中杯)、开场白给行动入口(想吃什么)、选项式追问(拿铁还是美式)都是有效手段。C 枚举全部功能会拉长播报、加剧记忆负担,应避免。
Q7. 关于 VUI 的容错处理,下列做法正确的是?
- A.识别失败时复述猜测内容请用户确认← 正确答案
- B.连续失败后切换为选项式提问← 正确答案
- C.每次失败都用“请再说一遍”兜底
- D.用户沉默超过阈值时主动询问← 正确答案
答案:ABD。容错讲究“逐级降级”:复述猜测、给选项、才请求重说,并处理超时。A、D 是正确的兜底手段,B 是连续失败后的策略切换,也正确。C 让用户无限复读是典型的错误容错。
Q8. 某音箱将唤醒词从四音节缩短为三音节后,误唤醒率从 0.4 次/小时升至 0.8 次/小时,但用户日均唤醒次数从 15 次增至 30 次。从产品角度应如何评价?
- A.误唤醒率翻倍,必须回退原方案
- B.唤醒率提升明显,改动是值得的← 正确答案
- C.两个指标都在恶化,重新设计
- D.误差较大,需再测 24 小时
答案:B。VUI 设计追求的是唤醒率与误唤醒率的平衡。唤醒次数翻倍说明“用户更愿意用了”——产品价值提升了,而 0.8 次/小时仍在行业可接受范围。单独看误唤醒率上升就回退,属于用指标绑架体验。A、C 缺乏全局观,D 偏离权衡问题的本质。
Q9. VUI 中“多轮交互管理”需要解决哪些核心问题?
- A.用户说“刚才那个”时理解指代对象← 正确答案
- B.信息分散在多句话中需要归拢收集← 正确答案
- C.识别结果有歧义时主动复述确认← 正确答案
- D.用户切换话题时平滑转移上下文← 正确答案
答案:ABCD。四个选项分别对应多轮交互的四大技术:指代消解、槽位填充、澄清确认、话题转移。多轮交互的本质是让机器具备“记住前文、追踪目标”的对话记忆,四个能力缺一不可,所以全选。
Q10. 用户对语音助手说“来杯拿铁”,系统沉默了 2 秒后才回复,最可能带来的后果是?
- A.用户没有感觉,继续等待
- B.用户认为设备死机,重复说话或放弃← 正确答案
- C.系统识别精度自动提升
- D.用户对回复内容更信任
答案:B。VUI 的反馈时延超过 1 秒后,用户会因缺乏进度感知而怀疑设备失效。2 秒沉默在电话场景中等同于“断线”,用户会重复指令或挂断。这正是“反馈及时性”原则要解决的体验问题,而非技术精度问题。所以 B 正确。