老虎机和插槽类型概述

老虎机是话语中的特定信息,可帮助了解用户的意图。 例如,考虑一下这样的话 :“我想预订两个房间。” 这种说法允许机器人识别特定的信息或插槽: 需要房间。

机器人识别出一个插槽后,它会将该插槽映射到插槽类型。 插槽类型定义了机器人如何处理已识别槽中的可用信息。 确保将每个插槽映射到插槽类型。 插槽类型可以帮助机器人定义机器人在尝试在话语中找到插槽时要查找的信息。 插槽类型必须至少包含一个值。

在前面的话中,插槽是 “需要房间”,插槽映射到数字槽类型。 虽然本文与 Genesys Dialog Engine Bot Flows 和 Genesys Digital Bot Flows 有关,但这段视频描述了 Genesys Dialog Engine Bot Flows 中的插槽和

全球插槽可用性

管理员和联络中心经理可以从任何意图访问任何时段。 由于老虎机不受特定意图的约束,因此它们可以用于多种意图。 此增强功能可提高效率并减少构建机器人流程的工作量。

你可以从任何意图访问任何插槽。 老虎机不受特定意图的约束。 从多种意图访问插槽的能力提高了效率并减少了构建机器人流程所需的工作量。 例如,以前,如果您想从支票账户和关闭账户意图中引用客户的账号,则必须在每个 Intent 中创建一个账户槽。 你也可以在没有意图的情况下使用插槽。 当您必须在自助机器人中进行识别和验证时,此功能很有用。 例如,在询问客户的意图之前,您可以预先询问客户的帐号和 PIN。

此外,如果您在全球插槽可用性之前创建了插槽,则共享名称的现有插槽会合并,从而使它们独一无二且更易于引用。

槽位类型

Architect 机器人支持两种插槽类型:内置插槽和自定义插槽。

插槽支持性

使用插槽时,请考虑以下支持的功能:

  • 槽位类型 每流最多 500
  • 与单个插槽类型相关的插槽(实体): 每个流量最多 10 个
  • 列表插槽类型: 每个流量最多 50
  • 正则表达式插槽类型: 每个流量最多 20 个

内置插槽

当您从 Natural Language Understanding 菜单创建槽时,您可以使用内置槽类型创建槽。

默认情况下,Architect 包括以下内置插槽类型:

NLU 插槽类型 架构师数据类型 用户输入示例 解析的格式示例 注释
内置:金额 货币 “$30.23” 或 “四十美元”

30.23| 美元
40.00| 美元

  • 将表示货币的单词转换为数字金额。
内置:date 日期 “6 月 15 日” 或 “下周二”

2021-06-15

  • 将日期值传入或传出机器人流程时,请确保以扩展 ISO-8601 格式的字符串形式传递该值。 例如,2021-02-16。
内置:数字 小数 “23” 或 “三点五”

23.0

3.5
  • 将数字单词(“five”)转换为数字(例如 “5")。
  • 此功能目前不支持序数(第一个、第二个等)。
内置:time 持续时间 “下午 3 点” 或 “下午三点半”

15:00:00 .000

15:30:00 .000

  • 将表示时间的单词(“凌晨四点”、“凌晨两点”)转换为时间值(“04:00”、“14:00”)。
内置:任意 字符串 “Stratocaster”

Stratocaster

有关详细信息,请参阅 在机器人流程中使用内置槽类型.

自定义插槽

自定义插槽类型允许您定义插槽类型并使用它们来映射插槽。 例如,你可以为你的旅行机器人创建一个位置栏来表示城市。 您可以定义自定义插槽类型,然后使用该位置槽来映射话语中的位置。

Architect 支持三种自定义插槽类型:

  • 列表类型
  • 动态列表类型
  • 正则表达式 (regex) 类型
注意: 如果您将自然语言理解 (NLU) 与正则表达式一起使用,那么 NLU 配置可能会影响您的结果。

列出插槽类型

如果您的自定义插槽类型数据是话语中的一组预定义单词,例如位置名称,请使用列表槽类型。列表槽类型可帮助您定义机器人必须识别才能捕获插槽的单词集。

您还可以为插槽类型添加同义词,以便 Architect 可以识别同一插槽的多个单词和短语。 例如,New York 的 slot 类型值可以具有同义词: 大苹果或纽约。 这些同义词使机器人能够理解,当用户说 NYC 时,它会映射到纽约。

有关详细信息,请参阅 在机器人流程中使用自定义列表槽类型.

动态列表槽类型

如果您在创建机器人流程时不知道允许的槽值,请在您的机器人流程中配置一个动态列表。 然后使用数据操作或其他源在机器人对话期间检索值并将它们存储在字符串集合变量中。  

如果您的机器人包含许多插槽类型的值,并且您不想在 Genesys Dialog Engine Bot Flows 或 Genesys Digital Bot Flows 中手动单独配置它们,则动态列表会很有用。 如果槽值对每个用户都是动态的,这些动态列表也很有用。

有关详细信息,请参阅 在机器人流程中使用自定义动态列表槽类型.

    正则表达式(正则表达式或正则表达式)槽类型

    您可以使用正则表达式(regex 或 regexp)来识别话语中与特定字符序列匹配的模式。 如果您的机器人必须识别话语中的复杂内容,则正则表达式模式在定义槽类型时更有用。 例如,如果您想为您的旅行机器人匹配航班代码,您必须知道处理任何取消的航班号。 正则表达式模式 ^[A-Z]{2}\d{3,4}$ 匹配话语中与此模式匹配的任何短语作为航班号。 有关详细信息,请参阅 在机器人流程中使用自定义正则表达式槽类型 和 正则表达式语言快速参考.

    注意: 如果您将自然语言理解 (NLU) 与正则表达式一起使用,那么 NLU 配置可能会影响您的结果。

    从老虎机菜单向你的机器人流程添加一个插槽

    要在机器人流程中添加插槽,请按照以下步骤操作:

    1. 在 “ 自然语言理解” 下,单击 “ 老虎机”
    2. 点击 添加插槽
    3. 为插槽提供一个有意义的名称。
    4. 在 “ 槽类型” 下,要并行创建槽和槽类型,请选择可用槽类型之一:
      • 现有。 包括现有的自定义插槽类型或内置插槽类型。
      • 新名单。 列表槽类型与列表中的项目匹配。
      • 新的正则表达式。 RexEx 插槽类型匹配一系列字符。
      • 新动态。 动态插槽类型是可配置的。
    5. 如果选择 “现有”,请单击 “选择”, 然后选择现有的自定义插槽类型或内置插槽类型。
    6. 如果选择 “新建列表”、“新建 RegEx” 或 “新建动态”,请输入槽类型名称。 
    7. 单击 “ 保存”

    Architect 会返回一条消息,确认新槽已创建,对于 New List、New RegEx 和 New Dynamic,则确认已创建槽类型。

    在此示例中,机器人作者想要为架子鼓制造商添加插槽和插槽类型。

    1. 在 “ 自然语言理解” 下,单击 “ 老虎机”
    2. 点击 添加插槽
    3. 将插槽命名为 DrumKi t。
    4. 在 “ 插槽类型” 下,选择 “新建列表”。
    5. 将槽类型命名为 “ 制造商”。 
    6. 单击 “ 保存”

    点击图片放大。

    添加一个并行插槽

    Architect 创建了插槽和插槽类型并返回一条消息,表明已创建插槽 “DrumKit” 和插槽类型 “制造商”。

    点击图片放大。

    创建并行槽和槽类型

    现在,您可以将槽类型值添加到槽类型中。

    注意: 有关如何为支持的语言添加插槽类型的信息,请参见在流程中为支持的语言添加插槽类型和语句。

    1. 在 “ 自然语言理解” 下,单击 “ 槽类型”
    2. 单击 “ 制造商” 插槽类型。
    3. 在下面槽类型值在这里输入雅马哈然后按 Enter。
    4. 对要添加的每一个架子鼓制造商重复步骤 4。

    点击图片放大。

    槽位类型

    现在你可以将插槽映射到话语了。 

    注意: 有关如何为支持的语言添加话语的信息,请参见在流程中向支持语言的意图中添加插槽类型和语句。

    要将插槽映射到语音,请执行以下步骤:

    1. 在 “ 自然语言理解” 下,单击 “ 意图”
    2. 在 Intents 页面中,添加名为 “购买沃尔沃” 的意图。
    3. 单击新意图。 此时将打开 “说话” 页面。
    4. 话语下,点击术语 “沃尔沃”。 此时将显示 “选择槽” 列表。
    5. “选择时段” 列表中,选择 “鼓”

    slot 已成功映射到语音。

    地图话语