你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

设计机器人导航

适用于: SDK v4

用户可以使用面包屑导航网站、利用菜单导航应用,以及通过前进和后退按钮来操作 Web 浏览器。 但是,这些成熟的导航技术都无法完全满足机器人中的导航要求。 如 设计和控制聊天流中所述,用户通常以非线性方式与机器人交互,因此设计始终提供出色用户体验的机器人导航具有挑战性。

请考虑以下困境:

  • 如何确保用户不会在与机器人的对话中迷失?
  • 用户是否可以在与机器人的对话中导航回去?
  • 用户在与机器人聊天期间如何导航到“主菜单”?
  • 用户在与机器人的聊天过程中如何“取消”作?

机器人导航设计的具体细节在很大程度上取决于机器人支持的特性和功能。 无论开发的机器人类型如何,你都希望避免设计不佳的对话界面的常见陷阱。 本文在五个人格方面描述了这些陷阱:“顽固机器人”、“无知机器人”、“神秘机器人”、“显而易见的机器人”和“无法忘记的机器人”。

小窍门

通常可以通过正确 处理用户中断来缓解机器人的每种个性。

“顽固的机器人”

顽固的机器人坚持保持当前的对话过程,即使用户试图引导事情走向不同的方向。

请考虑以下方案:

顽固的机器人反复询问同一问题的示例。

用户经常改变主意,决定取消或有时他们希望完全开始。

小窍门

执行:设计机器人以考虑用户可能随时尝试更改对话过程。

不要:设计机器人以忽略用户输入,并在无限循环中继续重复相同的问题。

防止机器人无休止地询问同一问题的方法之一是为每个问题指定最大重试次数。 如果以这种方式设计,机器人不会执行 任何智能 作来理解用户输入,但它确实避免在无休止的循环中提出相同的问题。

“无线索机器人”

当机器人不理解用户尝试访问某些功能时,会毫无头绪地做出不合逻辑的回应。 用户可能会尝试常见的关键字命令,例如“help”或“cancel”,并期望机器人做出适当的响应。

请考虑以下方案:

一个糊涂的机器人把“帮助”当作产品代码接受。

尽管你可能很想设计机器人中的每个对话来侦听并相应地响应某些关键字,但不建议使用此方法。

小窍门

执行:实现中间 ,用于检查你指定的关键字的用户输入(例如:“help”、“cancel”、“start over”等)并相应地做出响应。

不要:设计每个对话框以检查用户输入的关键字列表。

通过在中间件中定义逻辑,可以使每次与用户的交互都能够访问这些逻辑。 然后,可以根据需要进行单个对话和提示来安全地忽略关键字。

“神秘机器人”

神秘机器人无法以任何方式立即确认用户的输入。

请考虑以下方案:

未响应任何用户消息的神秘机器人示例。

在某些情况下,这种情况可能表明机器人出现故障。 但是,它可能只是机器人正忙于处理用户的输入,并且尚未完成其响应编译。

小窍门

执行:设计机器人以立即确认用户输入,即使在机器人可能需要一些时间来编译其响应的情况下也是如此。

请勿:将机器人设计为推迟确认用户输入,直到机器人完成编译其响应。

通过立即确认用户的输入,可以消除对机器人状态造成混淆的可能性。 如果响应需要很长时间才能编译,请考虑发送“键入”消息来指示机器人的工作,然后跟进 主动消息

“明显队长机器人”

明显船长机器人提供了未经请求的显而易见的信息,因此对用户毫无用处。

请考虑以下方案:

机器人陈述许多对用户来说显而易见的事情的示例。

小窍门

:设计机器人以提供对用户有用的信息。

不要:设计机器人以提供不太可能对用户有用的未经请求的信息。

通过将机器人设计为提供有用信息,可以增加用户与机器人互动的可能性。

“无法忘记的机器人”

无法遗忘的机器人不当地将过去对话中的信息整合到当前对话中。

请考虑以下方案:

一个坚持完成几个月前交互的机器人的示例。

小窍门

请做到:设计你的机器人来保持当前对话主题,除非用户表达了想要重新讨论之前话题的愿望。

请勿:设计机器人在不相关的情况下插入过去对话中的信息。

通过维护当前对话主题,可以降低混淆和沮丧的可能性,并增加用户继续与机器人互动的可能性。

后续步骤

通过设计机器人以避免设计不佳的对话界面的这些常见陷阱,你正在朝着确保出色的用户体验迈出重要一步。

接下来,详细了解机器人最常依赖的 UX 元素 来与用户交换信息。