意图&话术

意图

意图的定义:代表使用技能过程中用户可以进行的操作。

 第一步,创建意图:

以航班预定进行简单地演示。为技能创建一个意图“订机票(Booking)”,除了订票为可以进行的操作,在航班预定服务中还需要创建其他与业务有关的意图“查询 (Inquire)”“退订(Unsubscribe)”,以及系统配置的内置意图“取消(Alpha.CancelIntent)”“帮助(Alpha.HelpIntent)”

话术

话术的定义:指定用户可以说的话来命中对应的意图。

 第二步,配置话术:

用户可能用“我要订机票”来表达想要订机票的意图,把这个语句添加到“订机票(Booking)”的意图话术中。用户说了这句话就能命中订机票意图。

槽位

槽位的定义:意图在执行操作前需要获取的关键参数。

 第三步,配置槽位:

从订机票这件事中筛选出“时间、出发地、目的地、舱位”4个关键参数,对应添加”date, fromwhere, towhere,seat”4个槽位。

接着,用配置好的槽位替代话术中对应字段,明天→date 北京→fromwhere上海→towhere, 机票→seat 。操作方法包含:用鼠标左键选定需要替换的字段即可调用槽位,通过输入“{”也可以调用槽位。

槽位类型

槽位类型定义:具有相同特征的短语组成的集合。如时间、城市、数字等。

平台提供了一些常用的槽位类型:

内置槽位类型无法满足特定的业务需要时,开发者可以自己创建槽位类型,来维护自己想要的值。

 第四步,创建槽位类型:

槽位seat调用开发者创建的自定义槽位类型Seat_type。在Seat_type维护经济舱、公务舱、头等舱等值,我们命名这些值为槽值。

交互模型

意图集合与话术集合的映射关系形成了交互模型,用于控制技能的对话流程。他们构成了如图所示的关系:

依赖上图的关系,我们定义了下面的规则:

1.意图与话术的映射

为技能配置了意图、话术、槽位等信息后,用户对着智能设备说话,如果能匹配到某一话术,我们将命中其后的意图,并从用户说的话中解析出槽位信息。

2.槽位的会话

会话用于对必填槽位缺失时进行询问。如果你的某一个槽位是必填项,但是无法从用户说的话中解析出槽位,你可以配置槽位的会话来询问用户。