0
点赞
收藏
分享

微信扫一扫

天猫精灵语音技能单轮对话表达式的参数定义

下图是天猫精灵的意图编辑界面。

天猫精灵语音技能单轮对话表达式的参数定义_显式

我们观察到了在意图的单轮对话表达式维护界面里,​​杭州​​​ 和 ​​今天​​​ 这两个词都通过特殊的颜色进行高亮。这代表它们是对话表达式里的​​参数​​。显然,天气预报业务要针对具体的城市和日期才有意义,因此这些参数也需要被发送到应用开发人员编写的服务接口中去。

天猫精灵语音技能单轮对话表达式的参数定义_开发人员_02

下图是 ​​weather​​,天气预报意图的参数列表页面,其中 ​​城市​​ 的 id 为 ​​city​​,我们可以在应用接口的代表中使用该 id,获取用户语音请求中包含的 ​​城市​​ 名称。

天猫精灵语音技能单轮对话表达式的参数定义_高亮_03

上图 ​​参数名称​​​ 右边的一列,叫做 ​​关联实体​​。实体(Entity)是自然语言处理领域里中表示一类短语的集合,包含了应用所在领域的关键词和术语。

比如天气预报领域,关键词为时间,地点,天气状况。在智能应用平台的处理流程里,实体负责告诉平台,当从用户语音请求中解析出参数时,这些参数的可能取值范围。语音技能支持自定义实体或者引用平台提供的公共实体。

上图定义的参数,都有一个一一对应的实体,界面如下:

天猫精灵语音技能单轮对话表达式的参数定义_开发人员_04

如果用户发起的请求里,并没有显式说明想知道哪一个城市的天气状况,此时我们可以使用 ​​精灵追问​​​ 功能,向用户发起一个新的提问,比如:​​你问的是哪一个城市​​?从而获取 city 参数的值。

天猫精灵语音技能单轮对话表达式的参数定义_开发人员_05

意图编辑页面里的多轮对话编辑也是一个很有用的功能:

天猫精灵语音技能单轮对话表达式的参数定义_开发人员_06

上图的例子是,如果用户当前的请求已经位于 ​​weather​​​ 意图的处理上下文,在这个情况下用户再次追问:​​那北京呢​​​?此时智能平台会判断出,这一轮的对话仍旧属于天气预报的意图,因此会将 ​​city = 北京​​ 这个参数串,发送给用户定义的业务实现接口。

举报

相关推荐

0 条评论