亚马逊AWS官方博客
使用应答增强 Amazon Lex 聊天自动程序的功能
现在,您可以直接从 AWS 管理控制台将应答添加到 Amazon Lex 聊天自动程序中。可以使用应答与用户建立动态、有趣的交互。
使用应答
应答是自动程序意图的最终元素,将在意图实现之后显示给用户。 从简单的告别消息到图片轮播 (带有触发另一意图的不同按钮),再到提示等等,都可以成为应答。 对于某些使用案例,应答甚至可以是意图 (例如帮助引导用户使用不同自动程序功能的意图) 的主元素。
应答由动态选择的消息组成,这些消息来自开发人员创建的预定义消息组。 例如,在预订服务自动程序中,第一个消息组可以包含自动程序问候用户的不同方式:“您好”、“嗨”和“欢迎您”。第二个消息组可以包含不同形式的介绍:“我是预订服务自动程序”和“这是预订服务自动程序”。 第三个消息组可以讲述自身的功能:“我可以帮助您租车和预订酒店”等等。 Amazon Lex 在对话中使用每个消息组中的消息动态创建应答。例如,某对话可能包含以下消息:
另外一个对话可能包含以下消息:
应答可以像上面所述那样简单,表明用户回复的话语将触发另一个意图。 例如,用户可能会回复“租车”。如果“租车”与让某个意图帮助租车的话语匹配,则会无缝触发该意图。
应答最多可以包含三个组成部分:
- 消息 (每个应答至少要包含一条消息)
- 结束消息 (如果用户对应答中的问题回答“否”)
- 应答卡
可以在 Amazon Lex 控制台中和通过 Amazon Lex SDK 使用应答。 我们逐一研究这三个组成部分,看看如何创建应答。
消息
在 Amazon Lex 控制台中,Responses (应答) 部分的第一个组成部分是消息或消息组。在编辑器中,消息组如下所示:
您可以为应答创建一个或多个消息组,这可能有助于设计出更自然的对话流程。 消息发送给消息组 (消息组一、消息组二等等) 标记的客户端,因此,每个消息组均自动显示在支持的 Amazon Lex 渠道 (例如 Facebook Messenger、Slack 和 Kik) 的各行上。 要在自定义客户端上以类似方式显示消息,您可以选择通过编写逻辑使这种行为保持一致。
应答消息也接受自定义格式,这可让您按照应用程序需求来定义消息负载。 在控制台上,为消息组标题中的每个消息组选择 Message (消息) 或 Custom Markup (自定义标记) 格式。 选择 Custom Markup (自定义标记) 会打开一个编辑器,供您输入消息负载:
要借助 Amazon Lex 开发工具包应用自定义格式,请使用 CustomPayload 参数。 可以单独为每个消息组设置格式,从而能在格式之间切换。
结束应答
可以将自动程序设置为在应答中提出后续问题。 例如,在前面的预订服务自动程序示例中,可以创建第四个消息组,使其包含如下所示的问题:
对于回复“否”的应答,您可以创建结束消息。 这也是在用户完成交互时结束对话的不错方式。
要创建结束消息,请在控制台上的 Responses (应答) 部分选择 Wait for user reply (等待用户回复)。系统会提示您输入消息内容,或在用户对另一交互回复“否”时发送给用户的消息。例如,在旅程预订意图中,您可以提供如下所示的消息:
利用 Amazon Lex 开发工具包,在创建应答中的后续提示时,可以指定在用户回复“否”时发送给用户的消息。
应答卡
应答卡是 Amazon Lex 控制台上 Responses (应答) 部分的下一个组成部分。 应答卡包含一组供用户选择的合适应答以及图像或图形。 应答卡可以丰富交互内容和并为用户简化体验,同时提高自动程序的准确性。
例如,在酒店预订应用程序中,可以将应答卡中的每个按钮配置为对应不同的房型。 在用户选择这些按钮中的某一个时,对应房型的按钮值会返回给 Amazon Lex,触发新的意图。
要允许用户滚动浏览选项,您可以启用应答卡轮播。 在酒店预订示例中,轮播的每张卡都可以代表不同的酒店、城市或旅游胜地。
预览模式
可以使用预览模式来查看应答。
例如,在通过前面的示例构建预订服务自动程序之后,您可以立即预览应答:
如果消息组包含多条消息,则可以通过选择 Refresh response (刷新应答) 查看其他应答。 要返回编辑器,请选择 Exit preview (退出预览)。
开始使用
应答在 Facebook Messenger、Slack 和 Kik 等 Amazon Lex 支持的渠道 (消息收发平台) 上直接可用。 您也可以编写自定义客户端和移动应用程序,以使用包括应答卡在内的应答。
要在控制台中创建应答,请选择自动程序或新建一个自动程序,然后填写每个意图底部的 Responses (应答) 部分。 所有应答都至少要有一个消息组,而且消息组至少要包含一条消息。
有关在 Amazon Lex 中创建应答的更多信息,请参阅 Amazon Lex 文档和常见问题。
想了解更多关于使用 Amazon Lex 开发聊天自动程序的信息?了解如何使用我们的两部分式教程创建更出色的自动程序!
作者简介
John Reed 是 AWS Deep Learning 和 AI 控制台高级产品经理。他从事 AWS AI 技术研究工作,以改善用户和开发人员的体验。他在空闲时喜欢鼓捣小玩意、滑雪、背包旅行和进行其他户外活动。