• 基于华为云对话机器人技能平台的规则模板概述


    华为云对话机器人服务中的技能平台,向机器人服务提供了一系列即插即用的技能,可为对话机器人增加了用户配置机器人的灵活度。

    在邀测的过程中,我们总结了在技能平台上使用的规则配置上的一些功能和想法,与大家分享。

    1.     规则定义

    当前,基于华为云对话机器人技能平台的规则模板定义如下:

    W表示通配符(wildcare), S表示槽(slot), D表示词典(Dictionary),(除了一些内置的用户常用问法之外,我们不允许用户将槽位内的词典加入规则模板中)C为普通片段(Common)支持或与等正则规则。

    2.      接口说明

    rules:

    intention:

    意图

    rule:

    W:

    0-4

    通配符片段(Widcard)

    S:

    a625e5ed-c55b-4244-a971-74f2f963cf8a

    槽位片段(Slot)

    C:

    从|由|起始站是

    普通片段(Common)

    D:

    sys.china_trainStation

    字典片段(Dict)

    isOrdered:

    规则是否按顺序(当前为true),这里按顺序是指匹配的时候每个片段是否有序。我们当前设计中只支持规则中的片段有序,但是如果后续用户有需求想要片段在任意位置匹配皆可,那么我们的接口也可以向后兼容而不需要修改接口。

    3.      功能实现

    一次完成意图识别和槽抽取。

    之前预测实例上槽填充和意图预测是两个接口,而规则模板其实一次提取就可以把意图识别和槽抽取都完成。因为在之前设计的规则模板当中我们复用了原有的词典抽取的接口,将规则按片段解析,每解析完成一个片段,就通过begin index还有end index从原有的query删除匹配到的这个词,然后继续做剩余子串的匹配,相当于是一个递归调用。

    再加入一个接口,允许传入intent name即意图名称。

    接口参数:   intent_name: 意图名称

                 content:内容

                 slot_ids:词槽列表

                 model_first:冲突时是否模型优先

    接口内部自己完成意图匹配,槽位填充的逻辑,其中匹配的优先级按照规则>词典>模型来进行,模型作为兜底。而model_first参数则是一个选择项,可以提升模型优先级,默认为false。

    4.     规则模板展望

    l  对话设置。机器人检测到用户静音、打断、要求停止、要求重述、无意图回复等行为时,根据用户行为给出相应的反馈。例如,用户静音时,需要询问用户是否还在;用户打断时,需要响应用户,请用户讲话;用户要求停止时,需要表示歉意进行安抚,并在超过一定次数时进入挂断流程。在技能平台与客户的对接过程中,包括意图澄清失败设置, 槽位澄清设置,是否允许从识别到的一个槽位的多个值进行区分(您想要的slot1的值是XX还是YY),是否允许返回提取到的槽位的所有值(适用多选场景)。对话设置最终会和多轮的会话能力息息相关,如何把设置做的简明易用也是一个需要仔细考虑的地方。

    l  意图跳转。我们现在的技能平台只能支持平行意图,但是无论是外呼场景或者体检问卷,政府办事指南,其实很多场景都是树状的,我们将在未来进行支持。

    l  将QA能力带入到技能平台。需要将QA知识库和将KBQA的能力集成到技能平台,提升连续对话的能力。

    欢迎大家讨论和指正。

  • 相关阅读:
    Fix Installing .NET Framework 3.5 failed Error Code 0x800F0954 on Windows 10
    RHEL8安装五笔输入法
    Enable EPEL and Local Repository on RHEL8
    Why is Yum Replaced by DNF?
    检查Linux服务器是否被攻击的常用命令及方法
    IDEA 主题
    IDEA 如何显示一个类中所有的方法
    Appium 安装以及安装过程中遇到的问题
    Maven 如何发布 jar 包到 Nexus 私库
    java泛型的基本使用
  • 原文地址:https://www.cnblogs.com/2020-zhy-jzoj/p/13165505.html
Copyright © 2020-2023  润新知