View a markdown version of this page

Amazon Lex V2 核心概念 - Amazon Lex

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon Lex V2 核心概念

借助 Amazon Lex V2,您可以构建聊天应用程序(机器人),以从用户那里获取信息来完成任务。例如,您可以创建一个聊天机器人来提供客户支持、回答常见问题或预约。以下是使用 Amazon Lex V2 的典型步骤:

快速入门学习路径

Amazon Lex V2 的新手? 按照这条渐进式学习路径快速入门:

  1. 从@@ 模板开始(5 分钟)— 从预先构建的聊天机器人模板中进行选择,例如 Customer Support 常见问题解答、预约预订或订单状态。模板包括预先配置的意图、插槽和语句示例。

  2. 自定义您的聊天机器人(15 分钟)-修改模板以匹配您的特定用例。添加您自己的意图,更新示例话语并为您的域名配置插槽类型。

  3. 测试和优化(10 分钟)— 使用内置的测试控制台与聊天机器人进行对话。启用 Assisted NLU,以最少的训练数据增进理解。

  4. 部署和集成(20 分钟)-发布您的聊天机器人并将其与您的首选平台(Slack、Web 应用程序或移动应用程序)集成。

使用聊天机器人的总时间:约 50 分钟

要获得更全面的理解,请继续下面的详细开发过程。

详细的开发流程

对于更复杂的机器人或从头开始构建时,请遵循以下全面的开发流程:

  1. 创建机器人并添加一种或多种语言。配置机器人,使其了解用户的目标,与用户进行对话以引发信息,并实现用户的意图。

  2. 测试自动程序。您可以使用由 Amazon Lex V2 控制台提供的测试窗口客户端。

  3. 发布版本和创建别名

  4. 部署机器人。您可以在自己的应用程序或消息收发平台(如 Facebook Messenger 或 Slack)上部署机器人。

核心概念和术语

开始之前,请熟悉以下 Amazon Lex V2 核心概念和术语:

  • 机器人:机器人执行自动化任务,如订购披萨、预定酒店、订花等。Amazon Lex V2 机器人由自动语音识别(ASR)和自然语言理解(NLU)功能提供支持。

    Amazon Lex V2 机器人可理解通过文本或语音提供的用户输入并支持自然语言交流。

  • 语言:Amazon Lex V2 机器人可以用一种或多种语言进行交流。每种语言都独立于其他语言,您可以将 Amazon Lex V2 配置为使用本地单词和短语与用户交流。有关更多信息,请参阅 Amazon Lex V2 支持的语言和区域设置

  • 意图:意图表示用户要执行的操作。您创建机器人以支持一个或多个相关意图。例如,您可以创建一个披萨和饮料订购意图。对于每个目的,您需要提供以下必要信息:

    • 意图名称:意图的描述性名称。例如 OrderPizza

    • 示例言语:用户表达意图的可能方式。例如,用户可能会说“我能订购披萨吗”和“我想订购披萨”。

    • 如何履行意图:在用户提供必要的信息后,您希望如何履行意图。建议您创建一个 Lambda 函数来履行意图。

      您可以选择对意图进行配置,使 Amazon Lex V2 将履行意图所需的必要信息返回给客户端应用程序。

    此外,Amazon Lex V2 还提供内置意图来快速设置您的机器人。有关更多信息,请参阅 内置意图

    Amazon Lex 始终包含每个机器人的回退意图。每当 Amazon Lex 无法推断出用户的意图时,就会使用回退意图。有关更多信息,请参阅 AMAZON.FallbackIntent

  • 槽位:一个意图可能需要零个或零个以上的槽位或参数。您可以添加槽,作为意图配置的一部分。在运行时,Amazon Lex V2 提示用户提供特定的槽位值。用户必须为所有必需槽位提供值,然后 Amazon Lex V2 才能履行意图。

    例如,OrderPizza 意图需要诸如尺寸、饼皮类型和披萨数量等槽位。对于每个槽位,您需要提供槽位类型和一个或多个提示,以便 Amazon Lex V2 发送到客户端来从用户那里引发值。用户可以回复包含额外词的槽位值,如“请来一张大号披萨”或“我还是吃小号的吧”。Amazon Lex V2 仍然可以理解该槽位值。

  • 槽位类型:每个槽位都具有一种类型。您可创建您自己的槽位类型或使用内置槽位类型。例如,您可针对 OrderPizza 目的创建并使用以下槽类型:

    • 大小:使用枚举值 SmallMediumLarge

    • 馅饼皮:使用枚举值 ThickThin

    Amazon Lex V2 还提供了内置槽位类型。例如,AMAZON.Number 是可用于订购披萨数量的内置槽类型。有关更多信息,请参阅 内置意图

  • 版本:版本是您工作的带编号快照,您可以发布版本以用于您的工作流的不同阶段,如开发、测试部署和生产。创建版本后,您可以使用创建版本时存在的机器人。创建版本之后,在您继续使用应用程序时它将保持不变。

  • 别名:别名是指向机器人特定版本的指针。通过别名,您可以更新您的客户端应用程序正在使用的版本。例如,您可以将别名指向您机器人的版本 1。当您准备更新机器人时,您可以发布版本 2,然后更改别名以指向新版本。由于您的应用程序使用的是别名而不是特定版本,因此您的所有客户端无需进行更新即可获得新功能。

Amazon Lex V2 高级功能

除了上述核心概念外,Amazon Lex V2 还包括增强机器人功能的高级功能:

  • 辅助的 NLU — 使用大型语言模型 (LLMs) 来改善意图分类和插槽分辨率。此功能可帮助您的机器人更准确地理解用户请求,即使他们使用的措辞与您的训练示例不同。辅助的 NLU 在您配置的意图和时段内工作,无需大量训练数据即可提供更好的理解。

  • 多回合对话 — Amazon Lex V2 可以在多个对话回合中保持背景信息,从而实现自然 back-and-forth互动。用户可以在不丢失对话背景的情况下逐步提供信息、改变主意或提出澄清问题。

  • 上下文切换-高级机器人可以处理对话中的主题更改。例如,用户可能会开始询问账户信息,然后切换到下订单,然后返回到原始主题。Amazon Lex V2 可以优雅地管理这些上下文切换。

  • 回退策略 — 当 Amazon Lex V2 无法理解用户的请求时,您可以配置复杂的回退行为,包括澄清问题、建议提示或向人工代理上报。这样可以确保用户在对话中始终有前进的道路。

  • 对话流管理-使用条件分支和对话流控件,无需编写代码即可创建复杂的对话模式。您可以根据用户响应、时段值或外部数据路由对话。

区域可用性

有关提供 Amazon Lex V2 的 AWS 区域列表,请参阅《亚马逊网络服务通用参考》中的 Amazon Lex V2 终端节点和配额