百度UNIT意图和实体

UNIT是百度的自然语言处理产品,支持简体中文。 全部文件 可以在UNIT网站上获取。

在尝试使用UNIT的实体之前,请确保您对 插槽意图和实体映射 工作有深入的了解。

在链接您的意图和实体之前,请务必先将 百度 UNIT 代理的云配置连接到您的机器人。

第一步是获取代理的意图名称。 要执行此操作,请启动UNIT,选择您正在使用其意图的代理,然后单击侧面导航中的 Intents

UNIT Intents list

*一个有7个意图的UNIT代理。*

在这里,您可以看到与此代理关联的所有意图。 这些是您需要在Stackchat机器人创建器中使用的意图名称。

要在检测到此意图时触发导航到Stackchat流程,请打开您想要导航到的 配置AI 对话 流程

UNIT AI Configuration Location

*列表视图中的配置AI按钮。*

在叠加层中,从UNIT添加要映射到Flow的意图名称。 请务必完全复制,因为它区分大小写。 所有UNIT意图都是全部上限。

UNIT Copy Intent from UNIT

*需要完全匹配包括案例。*

将意图名称粘贴到Stackchat中的所需位置。

Dialogflow Paste Intent to Stackchat

*完全匹配。*

现在,您可以输入与该意图关联的实体。 您可以通过在UNIT中单击它来查看与意图关联的所有实体。

虽然意图表示用户在他们的话语中的总体意图,但实体代表我们想要提取的话语中的关键词。 UNIT中有三种类型的实体,自定义实体(由您创建的实体),系统实体(UNIT提供的预构建实体,以便于处理最常用的常见概念),以及混合实体,它们是系统的组合 和自定义实体。

自定义和混合实体并不比处理意图困难,因为它是Dialogflow和Stackchat之间的一对一映射。 例如,在上面使用的天气内容中,有一个自定义实体, @user_forecast_type.

A UNIT Custom Entity

*您可以为自定义实体指定任何名称。*

复制UNIT的词槽名称列中找到的文本,用于您要映射的实体。

并将该值粘贴到Stackchat中,然后选择要将其映射到的Stackchat插槽。 在此示例中,Stackchat插槽与Dialogflow实体具有相同的名称,以防止混淆。

UNIT Entity Connection to Slot

*UNIT词槽名称粘贴到Stackchat。*

UNIT系统实体遵循与自定义或混合实体相同的命名约定,即所有名称以“user_”开头,其余名称由用户自行决定。 用户在创建实体时选择他们希望使用的系统实体库或库。

对于许多系统实体,UNIT返回原始值和标准化值。 原始值正是用户输入的值,而标准化值将该数据转换为标准格式。 例如,如果代理提取实体“星期二”,则原始值将是“星期二”,而标准化值将是“年 - 月 - 日”。

对于某些系统实体(如位置),Stackchat返回原始值,但是有一些特定情况,如上面的日期示例,原始值无用。 在这些情况下,Stackchat返回标准化值。

为了使Stackchat能够识别您希望使用规范化值,必须遵循固定的命名约定,如下表所示。 不遵循此约定将导致UNIT返回原始值。

一般惯例是user_ <SYS_ENTITY_NAME>:<MEANINGFUL_NAME>其中MEANINGFUL_NAME可以由您自行决定或完全省略(尽管如果您有多个实体使用相同的话,我们强烈推荐使用它)。 UNIT实体名称只能是16个字符,不包括user_,因此有意义名称的空间是有限的。

System Entity Name for Use in Stackchat
time user_sys_time:MEANINGFUL_NAME
user_sys_date:MEANINGFUL_NAME
time_unit user_sys_time_unit:MEANINGFUL_NAME
time_interval user_sys_interval:MEANINGFUL_NAME
unit user_sys_unit:MEANINGFUL_NAME
money_unit user_sys_money_unit:MEANINGFUL_NAME

系统时间实体涵盖时间和日期。

所有其他系统实体返回其原始值。

一旦您有了命名约定,只需将意图名称复制并粘贴到_Configure AI_对话框中,就像使用自定义或混合实体一样。

UNIT System Entities

*正确格式化的两个系统实体没有“MEANINGFUL_NAME”。*

UNIT System Entities in Stackchat

*两个系统实体插入到Stackchat中。*