关于导航的连续意图识别的解决方案 百度UNIT

来源:互联网 发布:淘宝 深圳远望数码手机 编辑:程序博客网 时间:2024/06/15 01:45

需求是这样的:

打开APP里的导航模块(集成第三方),打开语音,说“我要去人民大学”,程序通过接口获取与人民大学匹配的列表。

 

 

这时候需求就来了,

1. 允许用户手动点击选择(很常见的功能,不做讨论)

2. 允许用户说 “第几个”,比如说第一个,则开启导航到中国人民大学,如果说第二个,则开启导航到人民大学地铁站。

3. 允许用户说出列表中的其中一个地点,比如说“地铁站”,则开启导航到人民大学地铁站,如果说东门,则开启导航到人民大学东门。

 

这样的功能百度地图其实已经实现,跟百度AI的PM大牛请教了一下,总结如下:

首先需要建立两个意图:

1. 导航意图,词槽为地点location

2. 选择意图,词槽为第几个。

当用户说出“我要去人民大学”,首先UNIT识别出导航的意图,找出location这个词槽值,调用第三方接口,获取与人民大学相似的列表数据,展现在客户端页面。

然后页面等待用户再次说话(可以给用户友好的语音提示,比如说,请选择第几个,或请说出您要到的具体位置),这时候就会有两种情况,

(一)用户说“选择第二个”,这时候,UNIT进行意图识别,识别出选择意图,然后把“第二个”这个值返回给客户端,客户端根据上一个意图的结果进行这次意图的选择。选中第二个,开启导航。

 

(二)用户说“我要去地铁站”,这时候,UNIT进行意图识别,再次识别出导航意图,把地铁站这个词槽的值返回给客户端,客户端需要做业务上的处理,把地铁站与上一个意图结果进行文本匹配,如果匹配上,就是用户所要去的地方,相当于(人民大学 + 地铁站),找到最终位置。

 

 

     如果没有匹配上的话,则重新调用第三方列表接口,查询出列表,再次让用户选择,直到用户选中结果集的其中一个,否则,这个过程是循环往复的。

    这样的好处是,用户想改变导航的目的地提供简单的解决方案,比如说用户第一次说“我要去人民大学”,可是他不想去了,想去北京大学,那只要继续说出“我要去北京大学” 即可。

 

 

这样的需求就需要定义多个意图同时完成,需要业务上进行特殊处理。

 


相关阅读:

如何站在巨人的肩膀上,将自己的产品赋予AI的能力?百度UNIT

深度机器学习56G视频资源分享


知识分享:现在是资源共享的时代,同样也是知识分享的时代,如果你觉得本文能学到知识,请把知识与别人分享

一码不扫,
何以扫天下?

长按关注我们