功能概述
概念:意图可理解为是不同表达形式的同一类型的内容。如用户说:“你真棒啊、太厉害了、你好专业、你语气太温柔了吧”等都可以归于“用户表扬意图”。
作用:通过新建意图可配置用户可能输入的信息。以查天气为例,设置“查天气意图”和对应意图的回复内容,当用户输入信息是有关查天气,则将触发匹配“查天气意图”,机器人将输出对应的回复内容。
具体操作
进入多轮对话管理主界面后,选择意图管理TAB,进入意图管理界面,可在此对意图进行增删改查等操作。
意图新建
单个意图新增
进入意图管理界面后,点击“新增意图”按钮即可进行单个意图新增;
根据实际业务需求,填写有关意图信息后,点击“创建”按钮,即可完成意图创建;
意图名称:即意图名字。
意图code:意图code是意图的唯一标识,新建后不能修改。
多个意图导入新增
进入意图管理界面后,选择“导入意图”,进入意图批量导入界面后,根据实际业务需求上传Excel文件后,即可完成意图的批量导入。
意图编辑
意图编辑主要包括意图名称、意图别名和意图问法的内容编辑配置,具体界面如下图所示:
意图名称与别名编辑
意图名称:即意图名字,意图创建后可根据实际业务需求进行编辑修改。
意图别名:意图面向用户可理解的一种表述,当机器人识别到两个相近的意图时,会主动用意图别名澄清访问。机器人澄清示例:请问您是要申请公积金贷款,还是使用公积金支付房贷?
意图问法
意图问法包括两类:用户问法和问法模板。在意图的问法配置中,给意图添加用户问法和问法模板。输入完成后,按“enter”键可快捷添加问法。
用户问法
用户问法:用户表达该意图的各种不同的表述方式,用户问法应更多覆盖多类不同的表述方式。
相似的表达方式,比如:我要买火车票、买火车票、买一张火车票;
不同表达的方式,比如:我要买火车票、我要坐火车出行、坐火车到xx去玩;
每个意图的用户问法建议5条以上。
问法模板
基本元素说明
问法模板(LGF):通过模板匹配来表示用户的问法。问法模板支持以下元素
元素 | 说明 | 示例 |
${} | 引用实体参数 |
说明
|
[] | 可选符 |
|
() | 必选符 |
|
| | 或 |
|
.{下限,上限} | 指定数量的文本 |
|
元素里面使用到的符号都是英文符号
问法模板(LGF)配置实践
最简单的LGF
最简单的LGF就是普通的文本,比如下面的“今天的北京天气”,在勾选严格匹配的情况下,这个LGF表达仅仅能匹配一个输入,也就是原封不动的“今天的北京天气”
可选部分
使用“[]“可以表明,文本中的某个部分是可有可无的,比如下面的“的”,在这样的LGF表达下,能匹配两个输入,“今天北京天气”和“今天北京的天气”;我们可以在不同的地方加入可选标记,能让句子的表达能力翻倍(x2),比如“今天北京[的]天气[预报]”表达就能匹配4个输入:1.今天北京天气 2.今天北京的天气预报 3今天的北京天气 4.今天北京天气预报
逻辑或
使用“|“可以表达某个部分“逻辑或关系”,比如下面的时间部分,可以表达3个时间中的任意一个,使得总共可以匹配的输入数量扩展到了12(xn,n表示候选的个数)需要注意的是,使用“|”的时候为了避免表达歧义,建议使用“()”做隔离表达,如下所示:(今天|明天|后天)北京[的]天气[预报];除了可以使用“()”来隔离外,如果逻辑或部分同时也是可选部分,那么使用“[]”也能形成天然的隔离,如下所示:(今天|明天|后天)北京[的]天气[预报|情况|状况]
参数表达
以上的例子都属于LGF的文本表达,但是在对话工厂构建对话的过程中,会有很多的参数填充,比如上述的天气的例子,需要知道“时间”和“地点”2个参数在LGF中可以使用“${}”引用具体的参数(注意:是参数名,而不是来源名词),那么如下表达就能命中非常多具体表达如:“明天杭州的天气情况”,“2号广州天气”,“大后天深圳天气状况”等等,${date}${city}[的]天气[预报|情况|状况]
通配符泛化
LGF的“可选部分”和“逻辑或”等手段都是对表达能力的一种增强,但在一些应用中仍无法满足泛化能力的需求,比如下面的表达中,开发者想覆盖更多的多样的前后缀[请问|查下|告诉我]${date}${city}[的]天气[预报|情况|状况][如何|怎么样|好不好]为了对应这样的需求,LGF也支持通配符,表示方式是“.{下限,上限}”,例子如下:.{0,3}${date}${city}[的]天气[预报|情况|状况].{0,3}比如“.{0,3}”表示能匹配0个(没有)到3个任意字符(UTF字符,中文字算一个),上述的表述方式能兼容一些前后缀的情况。但是,切记这样的泛化是很不可控的,可能会导致一些其他表述被误识别,通配符泛化建议在10个字以内。
常见错误
错误类型 | 错误配置 | 错误说明 | 正确配置 |
语法错误 | 我想听刘德华[的歌 | 只有“[”,没有对应的“]” | 我想听刘德华[的歌] |
我想听<歌手>的歌 | 引用参数应该使用${参数名} | 我想听${歌手}的歌 | |
引用的参数没有定义 | 我想听${歌手}的歌 | 在意图基础配置中,没有定义“歌手”参数 | 在意图基本信息配置中完成参数定义 |
模板中只有可选部分 | [我想听][${歌手}][的歌] | 模板内容全是可选部分,意味着用户不输入也能匹配到这个模板,不是符合模板的配置 | 我想听[${歌手}][的歌] 模板中包含“我想听”这种非可选部分 |
意图发布、导出与删除
进入意图管理界面后,在有关意图“操作”栏中,选择“更多”列表后,可进行意图的发布、导出、删除操作,具体界面如下图所示:
发布:将意图的配置发布到线上环境(发布对话机器人的时候,会同步发布意图;只有单独修改问法配置的时候可使用此发布功能)。
导出:支持单个意图导出,批量导出和全量导出。导入意图包括意图的基本信息,意图的问法配置。基本信息不推荐在导出文件中编辑修改,问法配置可以在导入文件中增加。
删除:即删除有关意图。
系统意图干预
对于系统意图,在未满足识别要求后,可以进行效果干预,有关干预方式与具体操作界面如下:
添加用户问法,新增的用户问法会提升系统意图的识别效果
添加问法模板(LGF):为系统意图配置模板提升匹配,模板与普通意图模板规则一致