语音交互方法及相关装置
文献发布时间:2024-04-18 20:02:18
技术领域
本申请涉及终端技术领域,尤其涉及语音交互方法及相关装置。
背景技术
目前越来越多的设备可以提供语音交互功能,方便用户通过语音来控制设备。例如,用户可以向设备下达语音指令“播放音乐”。设备可以在识别出该语音指令后,播放音乐。但用户每次向设备下达语音指令时,都需要先通过唤醒词唤醒设备中的语音交互应用,然后再说出语音指令。这就导致用户与设备进行语音交互的过程不流畅,用户需要频繁说唤醒词来实现语音控制设备的目的,用户体验较差。
发明内容
本申请提供语音交互方法及相关装置。上述方法可以在节约电子设备功耗的基础上,给用户带来全时免唤醒的语音交互体验。用户可以无需唤醒语音助手,随时下达语音指令指示电子设备执行相应的操作。
第一方面,本申请提供一种语音交互方法。该方法应用于电子设备。电子设备包含语音助手。其中,电子设备可以在语音助手处于睡眠态的情况下,接收第一语音。电子设备可以确定第一语音与第一列表中的第一意图匹配,第一列表中包含一个或多个语音指令对应的意图。电子设备可以执行第一意图对应的操作。电子设备可以唤醒语音助手。在语音助手处于唤醒态的情况下,电子设备可以接收第二语音。电子设备可以识别第二语音中的第二意图,执行第二意图对应的操作。
由上述方法可知,在未唤醒语音助手的情况下,电子设备可以实时检测用户说出的语音是否与第一列表中的意图匹配。当检测到用户说出的语音与第一列表中的意图匹配,电子设备可以直接执行该意图对应的操作。其中,第一列表包含与语音指令对应的意图。也即是说,用户可以直接向电子设备下达与第一列表中的意图对应的语音指令,而无需先唤醒语音助手。且在下达语音指令后,电子设备除了执行该语音指令对应的操作,还可以唤醒语音助手。这样,用户还可以进一步向电子设备下达更多的语音指令,从而在不进行唤醒操作的情况下与电子设备进行多轮语音交互。
结合第一方面,在一些实施例中,上述第一列表可以是本申请中的执行意图列表。第一列表中包含的意图可以称为执行意图。第一列表可包含用户常用语音指令对应的意图。上述常用语音指令可以包括使用频率高、误识率低、没有歧义的语音指令。上述误识率可以指将用户说出的不包含语音指令的语音误识别为语音指令的概率。这样可以方便用户在不进行唤醒操作的情况下,直接下达常用语音指令来控制电子设备执行相应的操作。
结合第一方面,在一些实施例中,第一语音和第二语音均不包含用于唤醒语音助手的唤醒词。
结合第一方面,在一些实施例中,电子设备可包含第一语音识别模型和第二语音识别模型。其中,第二语音识别模型的大小大于第一语音识别模型的大小。上述第一语音识别模型的大小和第二语音识别模型的大小可以指语音识别模型所需要的存储空间的大小。语音识别模型的大小越大,可以表示语音识别模型的算力越高。算力可以表示语音识别模型处理、运算数据的能力。即第二语音识别模型的算力高于第一语音识别模型的大小。语音识别模型的算力越低,语音识别模型的功耗越低,所需的计算资源越少。也即是说,在同样的运行条件下,第二语音识别模型的功耗高于第一语音识别模型的功耗。第二语音识别模型所需的计算资源多于第一语音识别模型所需的计算资源。其中,语音识别模型的算力越低,语音识别模型所使用的参数量可能更少。即第二语音识别模型所使用的参数量多于第一语音识别模型所使用的参数量。
在语音助手处于睡眠态的情况下,电子设备可以实时运行第一语音识别模型。其中,电子设备可以利用第一语音识别模型确定第一语音与第一列表中的第一意图匹配。
当唤醒语音助手,在语音助手处于唤醒态的情况下,电子设备可以运行第二语音识别模型。其中,电子设备可以利用第二语音识别模型识别第二语音中的第二意图。电子设备利用第二语音识别模型识别接收到的语音中的意图时,无需使用上述第一列表。
由于第一语音识别模型的功耗低,电子设备在未唤醒语音助手的情况下实时运行低算力语音识别模型通常不会产生过高的功耗,从而也不会导致电子设备发热、运行卡顿等问题。电子设备在语音助手未被唤醒时持续运行低算力语音识别模型,可以实现用尽可能少的功耗,给用户带来全时免唤醒的体验。当识别出检测到的语音与第一意图匹配,电子设备除了执行第一意图对应的操作,还可以唤醒语音助手。这样,电子设备在语音助手唤醒后可以更加准确地是识别用户后续的请求,给用户提供更好的语音交互体验。
结合第一方面,在一些实施例中,唤醒语音助手之后,电子设备还可以在第一时间段内未接收到语音的情况下,将语音助手从唤醒态切换到睡眠态。
其中,上述第一时间段可以是以语音助手处于唤醒态时,电子设备最后一次接收到语音的时刻为起始时刻,时长为预设时长(如5秒、10秒等等)的一段时间。或者,上述第一时间段可以是以语音助手处于唤醒态时,电子设备最后一次从接收到的语音中识别出语音指令的时刻为起始时刻,时长为预设时长的一段时间。或者,上述第一时间段可以是以语音助手处于唤醒态时,电子设备最后一次响应接收到的语音指令执行相应操作的时刻为起始时刻,时长为预设时长的一段时间。
例如,电子设备在接收到上述第二语音之后的一段时间内未检测到环境中有语音。那么,上述第一时间段可以是以电子设备接收到第二语音的时刻为起始时刻,时长为预设时长的一段时间。再例如,电子设备在执行上述第二语音中的第二意图对应的操作后未检测到环境中有语音。那么,上述第一时间段可以是以电子设备执行完成第二意图对应的操作的时刻为起始时刻,时长为预设时长的一段时间。
上述实施例可以避免用户在语音助手被唤醒后没有下达语音指令的情况下,电子设备长时间运行高算力语音识别模型功耗过高,从而节约电子设备的功耗。
结合第一方面,在一些实施例中,第一列表对应第一句式列表和第一实体列表,第一句式列表包含一个或多个句式,第一实体列表包含一个或多个实体,第一列表中的一个或多个意图由第一句式列表中的句式与第一实体列表中的实体组成。电子设备可以在语音助手处于睡眠态的情况下,接收第三语音。电子设备可以确定第三语音的句式与第一句式列表中的第一句式匹配,且第一实体列表中没有与第三语音的第一实体匹配的实体。电子设备可以唤醒语音助手。在语音助手处于唤醒态的情况下,电子设备可以识别第三语音中的第三意图,并执行第三意图对应的操作,第三意图由第一句式和第一实体组成。
其中,第一列表中的意图可以根据意图中有无实体划分为有实体意图和无实体意图。实体可以指一种事物类别下的具体实例。例如,实体对应的事物类别可以包括以下一项或多项:歌名、歌手名、地点名、电影名、电视剧名、图书名、火车车次、航班号、电话号码、邮箱等等。上述实体对应的事物类别也可称为实体类别。有实体意图即为包含实体的意图。其中,有实体意图可以由句式和实体组成。句式可以包含句式主体结构和实体占位符。实体占位符用于确定句式中用于放置实体的位置。有实体意图的句式可以支持在实体占位符所在的位置放置同一种事物类别下的任意实体。无实体意图即为不包含实体的意图。
在语音助手处于睡眠态,电子设备可以利用第一语音识别模型确定第三语音的句式与第一句式列表中的第一句式匹配,且第一实体列表中没有与第三语音的第一实体匹配的实体。然后,在语音助手处于唤醒态,电子设备可以用第二语音识别模型识别第三语音中的第三意图。
由上述实施例可知,即便用户在下达语音指令时,说出的语音与第一列表当前包含的意图不匹配,电子设备仍可以对该语音进行响应,来执行用户下达语音指令对应的操作。上述方法可以更好地为用户提供全时免唤醒的语音交互体验。
结合第一方面,在一些实施例中,当确定出上述第三语音的句式与第一句式列表中的第一句式匹配,且第一实体列表中没有与第三语音的第一实体匹配的实体,电子设备可以提示用户重复上述第三语音(例如,电子设备可以语音播报“我没听清,请再说一遍”),并唤醒语音助手。用户可以根据电子设备的提示重复上述第三语音。在语音助手处于唤醒态的情况下,电子设备可以接收到用户重复上述第三语音的语音,并利用第二语音识别模型对该语音进行识别,识别出该语音中的第三意图。然后,电子设备可以执行该第三意图对应的操作。
结合第一方面,在一些实施例中,当确定出上述第三语音的句式与第一句式列表中的第一句式匹配,且第一实体列表中没有与第三语音的第一实体匹配的实体,电子设备还可以在第一实体列表添加第三语音的第一实体。这样,当用户再次说出与第三语音相同的语音,电子设备可以在语音助手处于睡眠态时,利用第一语音识别模型确定出该语音与第一列表中的意图匹配,从而直接执行该意图对应的操作。
可以看出,电子设备在进行语音交互的过程中还可以通过自学习对第一实体列表进行调整,使得第一实体列表中包含更多用户常用的实体,从而使得第一列表中包含的意图更贴近用户的常用语音指令对应,提升用户与电子设备进行语音交互的使用体验。
结合第一方面,在一些实施例中,电子设备在第一实体列表添加第三语音的第一实体之后,在语音助手处于睡眠态的情况下,接收第四语音。电子设备可以确定第四语音的句式与第一句式列表中的第一句式匹配,且第四语音的实体与第一实体列表中的第一实体匹配,其中,第四语音与第三意图匹配。电子设备可以执行第三意图对应的操作。电子设备可以唤醒语音助手。
可以看出,经过自学习,电子设备可以在第一实体列表添加第一实体。其中,上述第一实体和第一句式可以组成上述第三意图。那么,电子设备在第一实体列表添加第一实体,可以相当于在第一列表中添加了上述第三意图。这样,用户可以直接向电子设备下达与第三意图对应的语音指令,而无需先唤醒语音助手。且在下达与第三意图对应的语音指令,电子设备除了执行该第三意图对应的操作,还可以唤醒语音助手。用户还可以进一步向电子设备下达更多的语音指令,从而在不进行唤醒操作的情况下与电子设备进行多轮语音交互。
结合第一方面,在一些实施例中,电子设备可以在语音助手处于睡眠态的情况下,接收第五语音。电子设备可以确定第五语音与第二列表中的第四意图匹配,第二列表中的一个意图与第一列表中的一个或多个意图关联,其中,第四意图与第一列表中的第五意图关联。电子设备可以提供第一提示,第一提示用于提示用户说出与第五意图匹配的语音。
其中,上述第二列表可以是本申请实施例中的扩展意图列表。第二列表中的意图可以称为扩展意图。第二列表可包含用户在表达常用语音指令时所说的非直接、有较高误识率的语音对应的意图。电子设备可以根据第二列表,检测接收到的语音是否与第二列表中的扩展意图匹配。用户说出的语音与扩展意图匹配可以表示用户说出的语音存在疑义。当检测到接收到的语音与扩展意图匹配,电子设备可以根据扩展意图关联的执行意图,向用户提供上述第一提示,以便确认用户是否想要实现与该扩展意图关联的执行意图。在确定用户想要实现与该扩展意图关联的执行意图后,电子设备可以进行该执行意图对应的操作,与用户进行语音交互。上述实施例可以在不唤醒语音助手的情况下,实现既不会漏识别用户可能下达的语音指令,也不会对用户所说的非语音指令的语音误响应,提高用户的语音交互体验。
结合第一方面,在一些实施例中,电子设备提供第一提示之后,还接收第六语音。电子设备可以确定第六语音与第五意图匹配,执行第五意图对应的操作。电子设备可以唤醒语音助手。
可以看出,通过扩展意图列表,电子设备还可以在响应用户说出的存在疑义的语音,提示用户说出更加直接且毫无疑义的语音指令(即与扩展意图关联的执行意图匹配的语音),从而确定用户是否下达语音指令。用户根据上述第一提示说出与执行意图匹配的语音,可以表示用户想要下达语音指令。这样,电子设备可以在执行用户下达的语音指令对应的操作。上述实施例可以在不唤醒语音助手的情况下,减少漏识别用户可能下达的语音指令的情况,提高用户的语音交互体验。
结合第一方面,在一些实施例中,电子设备提供第一提示之后,在第二时间段内未接收到与第五意图匹配的语音,电子设备可以取消第一提示,保持语音助手处于睡眠态。
其中,上述第一提示可以在电子设备的用户界面中显示第五意图对应的文字信息。电子设备取消第一提示可以为在用户界面上取消显示第五意图对应的文字信息。或者,上述第一提示可以为通过语音播报提示用户说出与第五意图匹配的语音。电子设备取消第一提示可以为停止语音播报提示用户说出与第五意图匹配的语音。
上述第二时间段可以是以电子设备提供第一提示的时刻为起始时刻,时长为预设时长的一段时间。
可以看出,用户说出与第二列表中的第四意图匹配的第五语音后,未在上述第一提示下说出更加直接且毫无疑义的语音指令。那么,用户说出上述第五语音可能并不是想下达语音指令(例如可能是在与他人聊天时说出上述第五语音)。那么,电子设备可以保持语音助手处于睡眠状态。上述实施例可以在不唤醒语音助手的情况下,减少对用户所说的非语音指令的语音误响应的情况,并且上述第一提示并不会对用户产生过多干扰,这可以提高用户的语音交互体验。
结合第一方面,在一些实施例中,第一列表包括第六意图。当确定第六意图的误识率高于第一阈值,电子设备可以在第一列表中移除第六意图,并在第二列表中添加第六意图。
可以看出,将上述误识率较高的第六意图从第一列表移动至第二列表后,电子设备检测到与第六意图匹配的语音时可以先向用户确认是否下达语音指令。在确认用户是下达语音指令的情况,电子设备可以执行与第六意图对应的操作。上述方法可以减少在不唤醒语音助手而下达语音指令的场景中,将非语音指令的语音当做语音指令而导致的误识别情况,提升用户与电子设备进行语音交互的使用体验。
第二方面,本申请提供一种语音交互方法,该方法应用于电子设备。电子设备包含语音助手。其中,电子设备在语音助手处于睡眠态的情况下,接收第一语音。响应于第一语音,电子设备可以提供第一提示,第一提示用于提示用户说出第一指令。电子设备可以接收第二语音,并确定第二语音与第一指令匹配,执行第一指令对应的操作。
由上述方法可知,在未唤醒语音助手的情况下,电子设备可以实时检测用户说出的语音是否与预设的指令关联,并在用户说出的语音与预设的指令关联的情况下,提示用户说出上述预设的指令,从而执行上述预设的指令对应的操作。也即是说,在上述方法中,用户可以直接向电子设备下达语音指令,而无需先唤醒语音助手,这可以提高用户的语音交互体验。
结合第二方面,在一些实施例中,第一语音和第二语音均不包含用于唤醒语音助手的唤醒词。
结合第二方面,在一些实施例中,上述第一提示可以为在电子设备的用户界面中显示第一指令对应的文字信息。或者,上述第一提示可以为通过语音播报提示用户说出与第一指令匹配的语音。
结合第二方面,在一些实施例中,电子设备可包含第一语音识别模型和第二语音识别模型。其中,第二语音识别模型的大小大于第一语音识别模型的大小。上述第一语音识别模型的大小和第二语音识别模型的大小可以指语音识别模型所需要的存储空间的大小。语音识别模型的大小越大,可以表示语音识别模型的算力越高。算力可以表示语音识别模型处理、运算数据的能力。即第二语音识别模型的算力高于第一语音识别模型的大小。语音识别模型的算力越低,语音识别模型的功耗越低,所需的计算资源越少。也即是说,在同样的运行条件下,第二语音识别模型的功耗高于第一语音识别模型的功耗。第二语音识别模型所需的计算资源多于第一语音识别模型所需的计算资源。其中,语音识别模型的算力越低,语音识别模型所使用的参数量可能更少。即第二语音识别模型所使用的参数量多于第一语音识别模型所使用的参数量。
在语音助手处于睡眠态的情况下,电子设备可以实时运行第一语音识别模型。
当唤醒语音助手,在语音助手处于唤醒态的情况下,电子设备可以运行第二语音识别模型。
结合第二方面,在一些实施例中,上述响应于第一语音,提供第一提示的方法具体可以为,响应于第一语音,电子设备可以利用第一语音识别模型确定第一语音与第一指令关联。电子设备可以根据第一语音与第一指令的关联关系,提供第一提示。
其中,电子设备可存储有第一列表。上述第一列表可以是本申请中的执行意图列表。第一列表中可包含一个或多个语音指令对应的意图。第一列表中包含的意图可以称为执行意图。第一列表可包含用户常用语音指令对应的意图。上述常用语音指令可以包括使用频率高、误识率低、没有歧义的语音指令。上述误识率可以指将用户说出的不包含语音指令的语音误识别为语音指令的概率。这样可以方便用户在不进行唤醒操作的情况下,直接下达常用语音指令来控制电子设备执行相应的操作。
第一列表可对应第一句式列表和第一实体列表,第一句式列表包含一个或多个句式,第一实体列表包含一个或多个实体,第一列表中的一个或多个意图由第一句式列表中的句式与第一实体列表中的实体组成。
在一种可能的实现方式中,上述第一指令对应的意图由第一句式和第一实体组成。上述第一语音与第一指令关联可以指:第一语音的句式为上述第一句式,第一语音的实体为上述第一实体。第一句式列表中包含第一句式。第一实体列表中不包含上述第一实体。在语音助手处于睡眠态的情况下,电子设备可以利用第一语音识别模型确定上述第一语音的句式与第一句式列表中的第一句式匹配,且第一实体列表中没有与第一语音的第一实体匹配的实体。然后,电子设备可以提供第一提示。上述第一提示可以为通过语音播报提示用户说出与第一指令匹配的语音。上述与第一指令匹配的语音即为上述第一语音。也即是说,上述第一提示可用于提示用于重复上述第一语音。
进一步的,电子设备还可以将上述第一实体添加至第一实体列表。这样,电子设备在进行语音交互的过程中还可以通过自学习对第一实体列表进行调整,使得第一实体列表中包含更多用户常用的实体,从而使得第一列表中包含的意图更贴近用户的常用语音指令对应,提升用户与电子设备进行语音交互的使用体验。
示例性地,用户说出的第一语音为“播放歌曲2”。第一语音的第一句式为“播放[歌名]”。第一语音的第一实体为“歌曲2”。上述第一句式列表中包含第一句式。上述第一实体列表中不包含第一实体。当接收到第一语音,电子设备可以确定出第一语音命中第一句式列表中的句式(即第一句式),未命中第一实体列表中的实体。电子设备可以提供第一提示,来提示用户重复上述第一语音(也即上述第一指令)。例如,电子设备可以语音播报“我没听清,请再说一遍”。用户可以根据第一提示说出第二语音“播放歌曲2”。第二语音是对上述第一语音的重复。响应于第二语音,电子设备可以播放歌曲2。
由上述实施例可知,即便用户在下达语音指令时,说出的语音与第一列表当前包含的意图不匹配,电子设备仍可以对该语音进行响应,来执行用户下达语音指令对应的操作。上述方法可以更好地为用户提供全时免唤醒的语音交互体验。
电子设备可存储有第二列表。上述第二列表可以是本申请实施例中的扩展意图列表。第二列表中的意图可以称为扩展意图。第二列表中的意图可以与第一列表中的一个或多个意图关联。第二列表可包含用户在表达常用语音指令时所说的非直接、有较高误识率的语音对应的意图。
在另一种可能的实现方式中,在语音助手处于睡眠状态的情况下,电子设备可以利用第一语音识别模型确定第一语音与第二列表中的第一扩展意图匹配。第一扩展意图与第一列表中的第一执行意图关联。该第一执行意图为上述第一指令对应的意图。上述第一语音与第一指令关联可以指:第一语音与第一扩展意图匹配。然后,电子设备可以提供第一提示,来提示用户说出与第一执行意图(即第一指令)对应的语音。
示例性地,用户说出的第一语音为“我好热”。第二列表中包含的第一扩展意图为“我好热”。第一扩展意图与第一列表中的第一执行意图“打开空调”关联。电子设备可以确定第一语音与上述第一扩展意图匹配。电子设备可以提供第一提示,来提示用户说出第一执行意图“打开空调”。例如,电子设备可以在屏幕上显示:可以对我说“打开空调”。若用户想打开空调,则可以根据第一提示说出第二语音“打开空调”。若用户不想打开空调,则可以不理会上述第一提示。若在提供第一提示后,电子设备接收到与上述第一扩展意图匹配的第二语音,电子设备可以响应第二语音,打开空调。
可以看出,上述实施例可以在不唤醒语音助手的情况下,实现既不会漏识别用户可能下达的语音指令,也不会对用户所说的非语音指令的语音误响应,提高用户的语音交互体验。
结合第二方面,在一些实施例中,在识别出第一语音与第二列表中的第一扩展意图匹配的情况下,电子设备可以保持语音助手处于唤醒状态。当接收到上述第二语音,电子设备可以利用第一语音识别模型确定第二语音与第一指令(也即与第一扩展意图关联的第一执行意图)匹配。然后,响应于第二语音,电子设备可以执行第一指令对应的操作。
并且,在确定第二语音与第一指令匹配的情况下,电子设备还可以唤醒语音助手,以便用户进一步向电子设备下达更多的语音指令,从而在不进行唤醒操作的情况下与电子设备进行多轮语音交互。
示例性地,在语音助手处于唤醒态的情况下,电子设备接收第三语音,并利用第二语音识别模型识别第三语音中的第二指令,执行第二指令对应的操作。
结合第二方面,在一些实施例中,在识别出第一语音命中第一句式列表中的句式,未命中第一实体列表中的实体的情况下,电子设备可以唤醒语音助手。在语音助手处于唤醒态的情况下,电子设备接收上述第二语音,并利用第二语音识别模型识别第二语音中的第一指令。由于电子设备唤醒了语音助手,用户在不进行唤醒操作的情况下,可以继续向电子设备下达更多的语音指令,从与电子设备进行多轮语音交互。
结合第二方面,在一些实施例中,唤醒语音助手之后,电子设备还可以在第一时间段内未接收到语音的情况下,将语音助手从唤醒态切换到睡眠态。
其中,上述第一时间段可以是以语音助手处于唤醒态时,电子设备最后一次接收到语音的时刻为起始时刻,时长为预设时长(如5秒、10秒等等)的一段时间。或者,上述第一时间段可以是以语音助手处于唤醒态时,电子设备最后一次从接收到的语音中识别出语音指令的时刻为起始时刻,时长为预设时长的一段时间。或者,上述第一时间段可以是以语音助手处于唤醒态时,电子设备最后一次响应接收到的语音指令执行相应操作的时刻为起始时刻,时长为预设时长的一段时间。
上述实施例可以避免用户在语音助手被唤醒后没有下达语音指令的情况下,电子设备长时间运行高算力语音识别模型功耗过高,从而节约电子设备的功耗。
结合第二方面,在一些实施例中,在语音助手处于睡眠态的情况下,电子接收第四语音。电子设备可以确定第四语音与第三指令匹配,执行第三指令对应的操作。
其中,上述第三指令是与第一列表中的第二执行意图对应的语音指令。电子设备可以利用第一语音识别模型确定第四语音与第三指令(即第二执行意图)匹配。然后,电子设备可以执行第三指令对应的操作。
由上述方法可知,在未唤醒语音助手的情况下,电子设备可以实时检测用户说出的语音是否与第一列表中的意图匹配。当检测到用户说出的语音与第一列表中的意图匹配,电子设备可以直接执行该意图对应的操作。其中,第一列表包含与语音指令对应的意图。也即是说,用户可以直接向电子设备下达与第一列表中的意图对应的语音指令,而无需先唤醒语音助手。这可以提供用户的语音交互体验。
第三方面,本申请提供一种电子设备,该电子设备可包括麦克风、存储器、一个或多个处理器,其中,该麦克风可用于采集语音,该存储器可用于存储计算机程序,该一个或多个处理器可用于调用该计算机程序,使得该电子设备执行如第一方面或第二方面中任一可能的实现方法。
第四方面,本申请提供一种计算机可读存储介质,包括指令,当该指令在电子设备上运行,使得该电子设备执行如第一方面或第二方面中任一可能的实现方法。
第五方面,本申请提供一种计算机程序产品,该计算机程序产品可包含计算机指令,当该计算机指令在电子设备上运行,使得该电子设备执行如第一方面或第二方面中任一可能的实现方法。
第六方面,本申请提供一种芯片,该芯片应用于电子设备,该芯片包括一个或多个处理器,该处理器用于调用计算机指令以使得该电子设备执行如第一方面或第二方面中任一可能的实现方法。
可以理解地,上述第三方面提供的电子设备、第四方面提供的计算机可读存储介质、第五方面提供的计算机程序产品、第六方面提供的芯片均用于执行本申请实施例所提供的方法。因此,其所能达到的有益效果可参考对应方法中的有益效果,此处不再赘述。
附图说明
图1是本申请实施例提供的一种电子设备100的结构示意图;
图2是本申请实施例提供的一种电子设备100的软件结构框图;
图3是本申请实施例提供的一种语音交互系统30的框架图;
图4A~图4C是本申请实施例提供的一些语音交互的场景示意图;
图5A和图5B是本申请实施例提供的另一些语音交互的场景示意图;
图6是本申请实施例提供的一种语音交互方法的流程图;
图7A和图7B是本申请实施例提供的另一些语音交互的场景示意图;
图8是本申请实施例提供的一种调整执行意图列表方法的示意图;
图9是本申请实施例提供的一种调整执行意图列表方法的示意图。
具体实施方式
下面结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请实施例的描述中,以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请以下各实施例中,“至少一个”、“一个或多个”是指一个或两个以上(包含两个)。术语“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。术语“连接”包括直接连接和间接连接,除非另外说明。“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。
在本申请实施例中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。
本申请以下实施例中的术语“用户界面(user interface,UI)”,是应用程序(application,APP)或操作系统(operating system,OS)与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面是通过java、可扩展标记语言(extensible markup language,XML)等特定计算机语言编写的源代码,界面源代码在电子设备上经过解析,渲染,最终呈现为用户可以识别的内容。用户界面常用的表现形式是图形用户界面(graphic user interface,GUI),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的文本、图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。
在一些实施例中,电子设备可以实现“一次唤醒,连续对话”的语音交互方案。具体的,电子设备可以实时检测采集到的声音中是否包含唤醒词。当检测到唤醒词,电子设备可以唤醒语音助手,通过语音助手对在唤醒词之后采集到的语音进行意图识别和动作执行。例如,用户说出唤醒词“小艺小艺”之后,进一步说出了语音指令“播放音乐”。电子设备检测到唤醒词后,可以唤醒语音助手来识别上述语音指令。当识别出上述语音指令对应的意图为播放音乐,电子设备可以播放音乐。
上述语音助手即为语音交互应用。上述语音助手还可以称为语音识别应用等名称。本申请实施例对此不作限定。
上述语音指令可以指用于控制电子设备执行一项或多项操作的语音。
其中,在唤醒语音助手之后,电子设备可以通过语音助手持续检测环境中的人声,并进行意图识别和动作执行。当在预设时间段内未检测到人声,电子设备可以将语音助手退出唤醒状态。语音助手退出唤醒状态后,需要再次响应唤醒操作而唤醒。上述唤醒语音助手的唤醒操作可以包括通过唤醒词唤醒、通过电子设备上的实体按键或虚拟按键唤醒等。本申请实施例对上述用于唤醒语音助手的唤醒操作不作限定。
也即是说,用户通过唤醒词唤醒语音助手后,可以连续向电子设备下达多条语音指令。电子设备可以识别这多条语音指令,并执行这多条语音指令对应的操作。在上述用户连续下达多条语音指令的期间,用户无需在下达每一条语音指令之前先说唤醒词。在用户在预设时间段内不再发声后,用户再次想要通过语音指令控制电子设备,则需要再次说出唤醒词唤醒语音助手。
可以看出,用户在唤醒语音助手后,可以与电子设备连续对话,实现与电子设备之间的多轮语音交互。这可以提高用户与电子设备进行语音交互的流畅性。但是在连续对话超时后,用户仍然需要先唤醒语音助手,再与电子设备进行语音交互。用户仍然无法在不说出唤醒词或者进行其它唤醒操作的情况下,随时通过语音控制电子设备。用户使用语音交互功能的体验较差。
在另一些实施例中,电子设备中可存储一个或多个固定命令词,例如,暂停播放、继续播放、上一首、下一首、上一集、下一集等。当检测到与上述固定命令词匹配的语音,电子设备可以执行上述固定命令词对应的操作。例如,电子设备正在播放音乐。当检测到语音“暂停播放”,电子设备可以确定该语音与固定命令词“暂停播放”匹配。那么,电子设备可以暂停播放当前正在播放的音乐。这样,用户不进行唤醒操作即可下达语音指令控制电子设备。
但在上述实施例中,电子设备存储的固定命令词通常是有限的。上述固定命令词通常是在指定场景中才能使用,例如视频播放场景、音乐播放场景。当用户下达的语音指令不与固定命令词匹配,电子设备将无法在语音助手未被唤醒时响应用户的语音指令。也即是说,用户下达固定命令词涵盖范围之外的语音指令时,仍然需要先唤醒语音助手。
本申请提供一种语音交互方法,实施该方法,用户可以无需唤醒语音助手,随时下达语音指令指示电子设备执行相应的操作。其中,电子设备中可存储有执行意图列表。该执行意图列表可包含用户常用语音指令对应的意图。电子设备可以在语音助手未被唤醒时运行低算力语音识别模型,来检测接收到的语音是否与执行意图列表中的意图匹配。当检测到接收到的语音与执行意图列表中的意图匹配,电子设备可以执行该语音匹配的意图对应的操作。另外,电子设备还可以唤醒语音助手,运行高算力语音识别模型,以便响应用户后续下达的语音指令。当检测到接收到的语音与执行意图列表中的意图不匹配,电子设备可以继续运行低算力语音识别模型,而不唤醒语音助手。
由上述方法可知,在未唤醒语音助手的情况下,电子设备可以实时运行低算力语音识别模型来检测用户是否说出常用语音指令。当检测到用户说出常用语音指令,电子设备可以直接执行该常用语音指令对应的操作。也即是说,用户可以直接向电子设备下达一些常用语音指令,而无需先唤醒语音助手。且在下达常用语音指令后,用户还可以进一步向电子设备下达更多的语音指令,在不进行唤醒操作的情况下与电子设备进行多轮语音交互。
在一些实施例中,电子设备中还可存储有扩展意图列表。该扩展意图列表可包含用户在表达常用语音指令时所说的非直接、有较高误识率的语音对应的意图。其中,扩展意图列表中的任意一个意图可以与执行意图列表中的一个或多个意图关联。扩展意图列表中的意图可以称为扩展意图。执行意图列表中的意图可以称为执行意图。例如,扩展意图列表中包含扩展意图:“我好热”。执行意图列表中包含执行意图:“打开空调”。扩展意图“我好热”可以与执行意图“打开空调”关联。当检测到接收到的语音与执行意图不匹配,电子设备可以检测接收到的语音是否与扩展意图匹配。当检测到接收到的语音与扩展意图匹配,电子设备可以提示用户说出与上述匹配的扩展意图关联的执行意图,以确认用户是否下达语音指令。进一步的,当接收到与上述执行意图匹配的语音,电子设备可以进行该执行意图对应的操作,并唤醒语音助手。
可以看出,在不唤醒语音助手的情况下,除了响应用户下达的直接且毫无疑义的常用语音指令,电子设备还可以利用扩展意图列表分析用户所说的可能存在疑义的语音,判断用户是否想要下达语音指令。在确认用户想要下达语音指令后,电子设备可以执行用户想要下达的语音指令对应的操作。上述实施例可以提高在未唤醒语音助手的情况下识别用户语音指令的识别率,从而提高全时免唤醒场景下用户通过语音控制电子设备的使用体验。上述全时免唤醒即为用户在任意时刻下达语音指令都无需先进行唤醒语音助手的唤醒操作。
其中,上述低算力语音识别模型的算力等级低,功耗也低。电子设备在未唤醒语音助手的情况下实时运行低算力语音识别模型通常不会产生过高的功耗,从而也不会导致电子设备发热、运行卡顿等问题。本申请提供的语音交互方法可以在实现全时免唤醒的基础上,节约电子设备的功耗。
为了便于理解,下面对本申请涉及的一些概念进行介绍。
1、低算力语音识别模型和高算力语音识别模型
低算力语音识别模型和高算力语音识别模型均可用于进行语音识别,以便于电子设备在识别出语音指令后执行语音指令对应的操作,从而完成与用户的语音交互。
上述低算力语音识别模型的算力低于高算力语音识别模型的算力。上述算力可以指语音识别模型对数据进行处理、运算的能力。电子设备利用低算力语音识别模型进行语音识别的复杂度要低于利用高算力语音识别模型进行语音识别的复杂度。由于算力较低,电子设备利用低算力语音识别模型进行语音识别的识别率相较于利用高算力语音识别模型进行语音识别的识别率更低。并且,在同样的条件下,电子设备运行低算力语音识别模型产生的功耗要少于运行高算力语音识别模型产生的功耗。即低算力语音识别模型为低功耗语音识别模型。高算力语音识别模型为高功耗语音识别模型。低算力语音识别模型的大小通常小于高算力语音识别模型。即高算力语音识别模型在电子设备中需要占据更多的存储空间。
可以理解的,上述低算力和高算力表示的是相对的概念,不对本申请中语音识别模型的计算能力的大小构成具体限定。在一些实施例中,根据算力大小的不同,语音识别模型还可划分为更多算力等级的语音识别模型。通常的,语音识别模型的算力越高,语音识别模型的功耗也越高。
在一种可能的实现方式中,上述低算力语音识别模型和高算力语音识别模型均为基于神经网络的模型。神经网络可以包括输入层、隐藏层和输出层,且各层具有一个或多个节点。相比于高算力语音识别模型,低算力语音识别模型的隐藏层的层数和/或隐藏层的节点数更少。
在本申请中,电子设备可以通过低算力语音识别模型来检测用户的语音是否与预设的意图匹配,并在意图匹配的情况下执行该匹配的意图对应的操作。电子设备可以通过高算力语音识别模型来识别用户语音中的意图,判断用户是否下达语音指令,从而实现语音交互。
在一些实施例中,上述低算力语音识别模型可以部署在端侧,即电子设备上。上述高算力语音识别模型可以部署在端侧,还可以部署在云侧,即云服务器上。例如,语音交互的所有过程均可在电子设备上完成。当电子设备唤醒语音助手后,电子设备可以利用本地的高算力语音识别模型进行语音识别,来进行语音交互。再例如,语音交互可以通过端云结合的方案来完成。在未唤醒语音助手的情况下,电子设备可以利用本地的低算力语音识别模型进行语音识别,来进行语音交互。当电子设备唤醒语音助手后,电子设备可以与云服务器通信,利用云服务器上的高算力语音识别模型进行语音识别,来进行语音交互。
2、执行意图列表
执行意图列表可包含用户常用语音指令对应的意图。其中,意图可以表示用户想要做的事情。根据用户所说的一段语音来识别这一段语音对应的意图可以表示,识别用户说这一段语音想要做什么。例如,用户说出“打开空调”,用户的意图即为希望电子设备能够打开空调。电子设备识别出用户说出“打开空调”的意图后,可以打开空调。
电子设备可以根据执行意图列表,在未唤醒语音助手时快速响应用户说出的常用语音指令。上述常用语音指令可以包括使用频率高、误识率低、没有歧义的语音指令。上述误识率可以指将用户说出的不包含语音指令的语音误识别为语音指令的概率。
例如,在电子设备为车载电脑的场景中,用户可能经常会通过语音指令指示车载电脑开启/关闭车窗、开启/关闭空调、播放音乐、音量调节、导航等等。那么,常用语音指令可包括打开车窗、关闭车窗、打开空调、关闭空调、播放歌曲1、播放歌手1的歌、系统音量调大、导航去地点1等等。包含上述常用语音指令对应的意图的执行意图列表可以参考下述表1:
表1
上述表1仅为本申请实施例对执行意图列表的示例性说明,不应对执行意图列表构成限定。执行意图列表中还可以包含更多或更少的意图。在一些实施例中,上述执行意图列表中的意图还可以根据应用场景进行分类。例如,意图按应用场景可分类为车控类、设置类、音乐类、导航类等等。上述表1中的“打开车窗”、“关闭车窗”、“打开空调”、“关闭空调”可属于车控类的意图。“系统音量调大”可属于设置类的意图。“播放歌曲1”、“播放歌手1的歌”可属于音乐类的意图。“导航去地点1”可属于导航类的意图。本申请实施例对上述意图按应用场景划分的类别不作限定。在一种可能的实现方式中,在进行意图识别时,电子设备可以利用语音识别模型(如低算力语音识别模型、高算力语音识别模型)先识别接收到的语音对应哪个类别的意图,然后根据语音中的关键词确定该语音表达的含义。
可以看出,上述常用语音指令(即与执行意图匹配的语音指令)通常是毫无疑义的,能够明确指示电子设备执行某一项操作。上述常用语音指令也可以称为高频语音指令。
在一些实施例中,上述执行意图列表中的意图可以根据意图中有无实体划分为有实体意图和无实体意图。
实体可以指一种事物类别下的具体实例。例如,实体对应的事物类别可以包括以下一项或多项:歌名、歌手名、地点名、电影名、电视剧名、图书名、火车车次、航班号、电话号码、邮箱等等。示例性地,歌名的具体实例可以包括歌曲1、歌曲2、歌曲3等等。歌手名的具体实例可以包括歌手1、歌手2、歌手3等等。一种事物类别下的具体实例包含的范围较大,可能包含几个到几百万个实体不等。本申请实施例对上述实体对应的事物类别不作限定。上述实体对应的事物类别也可称为实体类别。
有实体意图即为包含实体的意图。其中,有实体意图可以由句式和实体组成。句式可以包含句式主体结构和实体占位符。实体占位符用于确定句式中用于放置实体的位置。有实体意图的句式可以支持在实体占位符所在的位置放置同一种事物类别下的任意实体。
示例性地,“播放歌手1的歌”为有实体意图。该有实体意图的句式可以为“播放[歌手名]的歌”。其中,“播放…的歌”为该句式的主体结构。“[歌手名]”为该句式的实体占位符。该实体占位符位于该句式的主体结构中“播放”与“的歌”之间。该有实体意图的句式可以支持在实体占位符所在的位置放置歌手名这一事物类别下的任意实体。例如,该实体占位符所在的位置上放置有“歌手2”,则有实体意图为“播放歌手2的歌”。该实体占位符所在的位置上放置有“歌手3”,则有实体意图为“播放歌手3的歌”。
由于有实体意图可以由句式和实体组成,上述执行意图列表可对应有句式列表和实体列表。其中,句式列表可以包括执行意图列表中有实体意图的句式。实体列表可以包括执行意图列表中有实体意图的实体。实体列表中的实体可以按照实体对应的事物类别进行分类。例如歌名类的实体、歌手名类的实体、地点名类的实体等等。
可以看出,上述表1中“播放歌曲1”、“播放歌手1的歌”、“导航去地点1”均为有实体意图。表1对应的句式列表可以参考下述表2:
表2表1对应的实体列表可以参考下述表3:
表3
无实体意图即为不包含实体的意图。其中,执行意图列表中有实体意图之外的意图均为无实体意图。可以看出,上述表1中“打开车窗”、“关闭车窗”、“打开空调”、“关闭空调”、“系统音量调大”均为无实体意图。
在一些实施例中,上述执行意图列表可以是预设的。例如,电子设备在安装语音助手时,除了获取并存储低算力语音识别模型,还可以获取并存储预设的执行意图列表。可选的,电子设备在进行语音交互的过程中还可以通过自学习对执行意图列表进行调整,使得执行意图列表中包含的意图更贴近用户的常用语音指令,从而提升用户与电子设备进行语音交互的使用体验。上述电子设备自学习对执行意图列表进行调整的实现过程将在后续实施例中介绍,这里先不展开。可选的,电子设备还可以接收用户对执行意图列表进行调整的操作,来调整执行意图列表。
上述执行意图列表也可以称为第一列表。本申请实施例对执行意图列表的名称不作限定。
3、扩展意图列表
扩展意图列表可包含用户在表达常用语音指令时所说的非直接、有较高误识率的语音对应的意图。扩展意图列表中的任意一个扩展意图可以与执行意图列表中的一个或多个执行意图关联。
可以理解的,上述执行意图列表中的执行意图匹配的语音都是直接且毫无疑义的。电子设备接收到上述执行意图匹配的语音后,可以很明确地确定用户想要做的事情。在实际的语音交互场景中,用户在向电子设备下达语音指令时还可能说出存在疑义的语音。上述存在疑义的语音可以指电子设备接收到该语音后,不能确定用户是在下达语音指令,还是在非下达语音指令的场景中(如与其他人聊天的场景中)说出该语音。也即是说,上述存在疑义的语音有较高的误识率。若电子设备直接将上述存在疑义的语音确定为用户在下达语音指令,并执行相应的操作,有可能导致用户没有下达语音指令,而电子设备频繁响应来与用户进行语音交互,用户体验较差。然而,若电子设备直接将上述存在疑义的语音确定为用户没有下达语音指令,不进行响应,有可能导致用户实际上在下达语音指令,而电子设备迟迟没有反应,用户体验也较差。
示例性地,用户说出语音“我好热”。一种情况是,用户在下达语音指令。用户说出“我好热”,希望电子设备能打开空调。另一种情况是,用户没有下达语音指令。用户在与其它人聊天的过程中说出了“我好热”。电子设备识别出接收到的语音为“我好热”,可以进一步向用户确认用户是否想要下达语音指令。
电子设备可以根据扩展意图列表,检测接收到的语音是否与扩展意图列表中的扩展意图匹配。用户说出的语音与扩展意图匹配可以表示用户说出的语音存在疑义。当检测到接收到的语音与扩展意图匹配,电子设备可以根据扩展意图关联的执行意图,向用户确认用户是否想要实现与该扩展意图关联的执行意图。在确定用户想要实现与该扩展意图关联的执行意图后,电子设备可以进行该执行意图对应的操作,与用户进行语音交互。
例如,在电子设备为车载电脑的场景中,用户在车上可能会说出我好热、音量太小了等等存在疑义的语音。包含上述存在疑义的语音对应的意图的扩展意图列表可以参考下述表4:
表4
上述表4仅为本申请实施例对扩展意图列表的示例性说明,不应对扩展意图列表构成限定。扩展意图列表中还可以包含更多或更少的意图。
扩展意图列表中的任意一个扩展意图可以与执行意图列表中的一个或多个执行意图关联。例如,执行意图列表中包含执行意图“打开空调”。表4中的扩展意图“我好热”可以与执行意图“打开空调”关联。当电子设备识别出接收到的语音为“我好热”,电子设备可以提示用户说出“我好热”关联的执行意图“打开空调”。然后,当电子设备识别出接收到的语音为“打开空调”,电子设备可以进行执行意图“打开空调”对应的操作,即打开空调。再例如,执行意图列表中包含执行意图“系统音量调大”和执行意图“导航音量调大”。表4中的扩展意图“音量太小了”可以与执行意图“系统音量调大”关联,且与执行意图“导航音量调大”关联。当电子设备识别出接收到的语音为“音量太小了”。电子设备可以提示用户说出“音量太小了”关联的一个执行意图,即“系统音量调大”或“导航音量调大”。然后,当电子设备识别出接收到的语音为“导航音量调大”,电子设备可以进行执行意图“导航音量调大”对应的操作,即调大导航音量。
在一些实施例中,上述扩展意图列表可以是预设的。例如,电子设备在安装语音助手时,可以获取并存储预设的扩展意图列表。可选的,电子设备在进行语音交互的过程中还可以通过自学习对扩展意图列表进行调整。例如,将扩展意图列表中的扩展意图添加至执行意图列表,从而将扩展意图调整为执行意图。可选的,电子设备还可接收用户对执行意图列表进行调整的操作,来调整执行意图列表。
上述扩展意图列表也可以称为第二列表。本申请实施例对扩展意图列表的名称不作限定。
4、语音助手的睡眠态和唤醒态
语音助手可以是电子设备中用于实现语音交互的应用。语音助手可以在电子设备出厂时预置在电子设备中。或者,语音助手还可以电子设备响应用户安装语音助手的操作,或电子设备系统更新时安装的。本申请实施例对电子设备安装语音助手的实现方法不作限定。
其中,电子设备在安装语音助手时,可以获取并存储于低算力语音识别模型、执行意图列表和扩展意图列表。可选的,电子设备在安装语音助手时,还可以获取并存储高算力语音识别模型。
在一些实施例中,语音助手的状态可包括睡眠态和唤醒态。在未唤醒语音助手的情况下,语音助手可以处于睡眠态。当语音助手处于睡眠态,电子设备可以运行低算力语音识别模型,来识别接收到的语音是否与执行意图匹配。当识别出接收到的语音与执行意图匹配,电子设备可以执行该执行意图对应的操作,并唤醒语音助手。其中,电子设备100在使用低算力语音识别模型识别用户语音中的意图时,可以借助上述执行意图列表和扩展意图列表。
当唤醒语音助手,电子设备可以将语音助手从睡眠态切换到唤醒态。当语音助手处于唤醒态,电子设备可以运行高算力语音识别模型,来识别接收到的语音对应的意图,从而与用户进行语音交互。其中,电子设备100在使用高算力语音识别模型识别用户语音中的意图时,可以不用借助执行意图列表和扩展意图列表。
当在预设时间段内未检测到人声或语音指令,电子设备可以将语音助手从唤醒态切换到睡眠态。
可以看出,电子设备可以在语音助手处于睡眠态时,运行低算力语音识别模型。电子设备可以在语音助手处于唤醒态时,运行高算力语音识别模型。由于低算力语音识别模型的功耗较低,电子设备在语音助手未被唤醒时持续运行低算力语音识别模型,可以实现用尽可能少的功耗,给用户带来全时免唤醒的体验。
在一些实施例中,上述睡眠态也可以称为第一状态。上述唤醒态也可以称为第二状态。本申请实施例对上述睡眠态和唤醒态的名称不作限定。
下面介绍本申请涉及的电子设备。
图1示例性示出了电子设备100的结构示意图。
如图1所示,电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些示例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。
显示屏194用于显示图像,视频等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。
摄像头193用于捕获静态图像或视频。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些示例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。耳机接口170D用于连接有线耳机。
传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
按键190包括开机键,音量键等。马达191可以产生振动提示。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
电子设备100可以是搭载
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的
图2是本申请实施例的电子设备100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将
应用程序层可以包括一系列应用程序包。
如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,短信息、语音助手等应用程序。语音助手可以参考前述实施例的介绍。
应用程序框架层为应用程序层的应用程序提供API和编程框架。应用程序框架层包括一些预先定义的函数。
如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器,活动管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏(如下拉通知栏)中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
活动管理器用于负责管理活动(activity),负责系统中各组件的启动、切换、调度以及应用程序的管理和调度等工作。活动管理器可供上层应用调用以打开对应的activity。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
本申请提供的语音交互方法可以应用在语音交互系统中。下面介绍本申请涉及的语音交互系统。
图3示例性示出了本申请提供的一种语音交互系统30的框架图。
如图3所示,语音交互系统30可包括电子设备100和云服务器200。其中,电子设备100和云服务器200之间可建立有通信连接。本申请实施例对电子设备100和云服务器200之间的通信方式不作限定。
电子设备100中可包含语音助手。语音助手可包含低算力语音识别模型和高算力语音识别模型。由前述实施例可知,语音助手还可包含执行意图列表(图3中未示出)和扩展意图列表(图3中未示出)。
云服务器200中可包含高算力语音识别模型。
在一些实施例中,语音交互的所有过程均可在电子设备100上完成。在未唤醒语音助手时,电子设备100可以运行本地的低算力语音识别模型,快速响应用户下达的语音指令。当唤醒语音助手,电子设备100可以利用本地的高算力语音识别模型进行语音识别,来进行语音交互。
在一些实施例中,语音交互可以通过端云结合的方案来完成。在电子设备100联网的情况下,电子设备100可以与云服务器200通信。例如,在未唤醒语音助手时,电子设备100可以运行本地的低算力语音识别模型,快速响应用户下达的语音指令。当唤醒语音助手,电子设备100可以与云服务器200通信(如向云服务器200发送接收到的语音,接收来自云服务器200的语音识别结果等),利用云服务器200上的高算力语音识别模型进行语音识别,来进行语音交互。再例如,当唤醒语音助手,电子设备100可以利用本地的高算力语音识别模型进行语音识别。电子设备100还可以与云服务器200通信,利用云服务器200上的高算力语音识别模型进行语音识别。电子设备100可以采用得到语音识别结果最快的语音识别结果。或者,电子设备100可以判断利用本地的高算力语音识别模型进行语音识别的准确率,与利用云服务器200上的高算力语音识别模型进行语音识别的准确率。电子设备100可以采用准确率更高的语音识别结果。本申请实施例对上述通过端云结合来实现语音交互的方法不作限定。
在一些实施例中,电子设备100中的语音助手也可不包含高算力语音识别模型。当唤醒语音助手,电子设备100可以与云服务器200通信,利用云服务器200上的高算力语音识别模型进行语音识别,来进行语音交互。
图3所示的语音交互系统30仅为本申请实施例的示例性说明。语音交互系统30还可以包含更多或更少的模块。
由上述语音交互系统30可知,在未唤醒语音助手时,电子设备100可以实时在本地运行低算力语音识别模型,以便于为用户提供无需唤醒语音助手即可下达语音指令的免唤醒体验。由于低算力语音识别模型的功耗较低,电子设备100长时间运行低算力语音识别模型对电子设备100的功耗影响较小。当语音助手处于唤醒态,电子设备100既可利用本地的高算力语音识别模型进行语音识别,还可以利用云服务器200中的高算力语音识别模型进行语音识别,以便于给用户带来无需进行唤醒操作即可与电子设备100进行多轮语音交互的体验。
本申请后续实施例中将以上述电子设备100为车载电脑作为示例,介绍车载场景下的语音交互方法。除了车载场景,本申请提供的语音交互方法还可适用于其他场景。
图4A~图4C示例性示出了本申请实施例提供的一种免唤醒的语音交互场景。
如图4A所示,在车载场景中,电子设备100中的语音助手可以处于睡眠态。电子设备100可以显示图4A所示的用户界面410。用户界面410可以为电子设备100的桌面。用户界面410可显示有应用程序图标(如导航应用图标、收音机应用图标、音乐应用图标等等)、时间控件等界面元素。本申请实施例对用户界面410上显示的内容不作限定。
当语音助手处于睡眠态,电子设备100可以运行低算力语音识别模型来识别检测到的语音是否与执行意图列表中的执行意图匹配。
如图4B所示,用户在车内向电子设备100下达语音指令“播放歌曲1”。电子设备100存储的执行意图列表中包含执行意图“播放歌曲1”。电子设备100可以检测到环境中的语音“播放歌曲1”。电子设备100可以利用低算力语音识别模型识别出该语音与执行意图“播放歌曲1”匹配。然后,电子设备100可以进行该执行意图对应的操作,即调用音乐应用播放歌曲1。另外,电子设备100还可以唤醒语音助手,将语音助手从睡眠态切换至唤醒态。
示例性地,当识别出检测到的语音与执行意图匹配,电子设备100可以语音播报“好的,为您播放歌曲1”,并开始播放歌曲1。其中,电子设备100可以显示图4B所示的用户界面420。用户界面420可包含歌曲播放组件411和唤醒标识412。歌曲播放组件411可用于指示电子设备100当前正在播放的歌曲。例如,歌曲播放组件411中显示有歌曲名“歌曲1”,可以表示电子设备100当前正在播放歌曲1。歌曲播放组件411还可包含暂停控件、下一首控件和上一首控件,以便于用户通过歌曲播放组件411中的控件对电子设备100播放的音乐进行控制。歌曲播放组件411还可包含歌词(图中未示出)。本申请实施例对歌曲播放组件411中包含的内容不作限定。唤醒标识412可用于指示电子设备100中的语音助手处于唤醒态。也即是说,在语音助手处于唤醒态时,电子设备100可以在用户界面420显示唤醒标识412。
当语音助手处于唤醒态,电子设备100可以运行高算力语音识别模型,来识别接收到的语音对应的意图,从而与用户进行语音交互。其中,电子设备100在语音助手处于唤醒态时可以运行一个或多个高算力语音识别模型。本申请实施例对高算力语音识别模型的数量不作限定。
在一些实施例中,当语音助手处于唤醒态,电子设备100可以停止运行低算力语音识别模型。即低算力语音识别模型可以仅在语音助手处于睡眠态时运行。高算力语音识别模型可以仅在语音助手处于唤醒态时运行。
可以理解的,用户在说出与扩展意图匹配的语音后,有可能还会继续下达语音指令。因此,当识别出检测到的语音与扩展意图匹配,电子设备100可以唤醒语音助手,通过高算力语音识别模型更好地响应用户的后续请求,实现与用户的多轮语音交互。
如图4C所示,在语音助手处于唤醒态时,用户在车内向电子设备100下达语音指令“关闭车窗”。电子设备100可以检测到环境中的语音“关闭车窗”。电子设备100可以通过高算力语音识别模型识别出该语音的意图,并进行该意图对应的操作,即调用控制车窗的模块关闭车窗。
示例性地,当检测到语音指令“关闭车窗”,电子设备100可以语音播放“好的,正在为您关闭车窗”,并关闭车窗。其中,电子设备100可以显示图4C所示的用户界面430。用户界面430可以包含唤醒标识412和语音播报组件413。其中,语音播报组件413中可显示有电子设备100响应于用户的语音指令而语音播报的内容。
当在预设时间段内未检测到人声或语音指令,电子设备100可以将语音助手从唤醒态切换到睡眠态。这样可以避免在用户没有下达语音指令的情况下,电子设备100长时间运行高算力语音识别模型功耗过高。
由上述图4A~图4C所示的场景可知,用户在向电子设备100下达一些常用的语音指令时,可以无需进行唤醒语音助手的唤醒操作而直接下达语音指令。这可以帮助用户实现在一些常见场景中(如控制车内的硬件设备的场景、听歌场景、导航场景等等)快速对电子设备进行语音控制。并且,用户可以连续向电子设备100下达多个语音指令,与电子设备100进行多轮语音交互。在这多轮语音交互中,用户均可无需进行唤醒语音助手的唤醒操作。上述实施例可以提高用户与电子设备进行语音交互的流畅性。
图5A和图5B示例性示出了本申请实施例提供的另一种免唤醒的语音交互场景。
如图5A所示,电子设备100中的语音助手当前处于睡眠态。用户说出语音“我好热”。电子设备100存储的扩展意图列表中包含扩展意图“我好热”。并且,扩展意图“我好热”与执行意图列表中的执行意图“打开空调”关联。
电子设备100可以检测到环境中的语音“我好热”。电子设备100可以利用低算力语音识别模型识别出执行意图列表中没有与该语音匹配的执行意图。然后,电子设备100可以判断该语音是否与扩展意图列表中的扩展意图匹配。由于扩展意图列表中包含包括意图“我好热”,电子设备100可以识别出检测到的语音与扩展意图匹配。电子设备100可以向用户确认是否下达语音指令。具体的,电子设备100可以根据与扩展意图“我好热”关联的执行意图,显示图5A所示的用户界面510。用户界面510可包括提示框421。该提示框421中的提示内容可用于引导用户说出与扩展意图“我好热”关联的执行意图匹配的语音。例如,提示框421中的提示内容可以为:可以对我说“打开空调”。
如图5B所示,用户可以根据图5A所示提示框421的提示说出语音“打开空调”。电子设备100可以检测到环境中的语音“打开空调”。电子设备100中的语音助手仍处于睡眠态。电子设备100可以利用低算力语音识别模型识别出该语音与执行意图“打开空调”匹配。然后,电子设备100可以进行该执行意图对应的操作,即调用车内控制空调的模块打开空调。另外,当识别出检测到的语音与执行意图匹配,电子设备100还可以唤醒语音助手,将语音助手从睡眠态切换至唤醒态。
示例性地,当识别出检测到的语音与执行意图匹配,电子设备100可以语音播报“好的,正在为您打开空调”,并调用控制空调的模块打开空调。其中,电子设备100可以显示图5B所示的用户界面520。用户界面520上可包含唤醒标识412。该唤醒标识412可用于指示语音助手处于唤醒态。
在一些实施例中,一个扩展意图可能关联有多个执行意图。例如,扩展意图“音量太小了”可以关联执行意图“系统音量调大”,还可关联有执行意图“导航音量调大”。当检测到的语音匹配的扩展意图关联多个执行意图,电子设备100可以提示用户说出这多个执行意图中的一个。例如,当检测到语音“音量太小了”,电子设备100可以在界面上显示提示框,提示用户说出“系统音量调大”,或说出“导航音量调大”。这样可以便于电子设备100判断用户是否想要下达语音指令,以及想要下达的语音指令对应的意图是什么。
本申请实施例对识别出检测到的语音与扩展意图匹配的情况下,电子设备100向用户确认是否下达语音指令的方式不作限定。
在一些实施例中,在电子设备100显示图5A所示的提示框421后,若电子设备100未检测到与执行意图“我好热”匹配的语音,则电子设备100可以仍保持语音助手处于唤醒态。可以理解的,用户在车内说出与扩展意图匹配的语音(如“我好热”),不一定表示用户在下达语音指令。如果用户进而按照电子设备100的提示说出相应的语音(如打开空调),则可以表示用户在车内说出与扩展意图匹配的语音是在下达语音指令。如果用户未按照电子设备100的提示说出相应的语音,则可以表示用户在车内说出与扩展意图匹配的语音不是在下达语音指令(例如可能是在与其他人聊天)。
由上述图5A和图5B所示的场景可知,通过扩展意图列表,电子设备还可以在响应用户说出的存在疑义的语音,提示用户说出更加直接且毫无疑义的语音指令(即与扩展意图关联的执行意图匹配的语音),从而确定用户是否下达语音指令。上述实施例可以在用户说出与扩展意图匹配的语音实际上是想要下达语音指令时,提示用户说出更为直接的说法,从而使得电子设备可以执行用户想要下达的语音指令对应的操作。而在用户聊天等非下达语音指令的场景中所说的语音与扩展意图列表匹配时,电子设备100的提示操作不会过度打扰用户的行为。上述实施例可以在不唤醒语音助手的情况下,实现既不会漏识别用户可能下达的语音指令,也不会对用户所说的非语音指令的语音误响应,提高用户的语音交互体验。
下面介绍电子设备100利用低算力语音识别模型来识别检测到的语音是否与执行意图匹配的方法。
在一些实施例中,低算力语音识别模型可以包括语音特征提取模型、声学模型和语言模型。电子设备100可以通过麦克风接收到语音输入。电子设备100可以利用语音特征提取模型提取该语音输入的语音特征。然后,电子设备100可以利用声学模型从上述语音特征中得到音素序列,实现从语音特征到字符的生成。可以理解的,同一个发音(即音素)可以对应多个不同的字符。通过声学模型,电子设备100可以得到与上述语音输入发音相同的多个候选字符。进一步的,基于声学模型输出的结果,电子设备100可以利用语音模型确定出最大概率的文字序列。即电子设备100可以对声学模型得到的多个候选字符进行组合,得到为上述语音输入表示的文字序列概率最大的一组文字序列。在电子设备100得到上述文字序列后,电子设备100可以判断执行意图列表中是否包含与上述文字序列匹配的执行意图。若是,则表明电子设备100检测到的语音与执行意图匹配。若否,则表明电子设备100检测到的语音不与执行意图匹配。
由前述实施例可知,执行意图可分为有实体意图和无实体意图。有实体意图可以由句式和实体组成。执行意图列表可对应有句式列表和实体列表。当电子设备100利用低算力语音识别模型对接收到的语音输入进行识别,得到最大概率的文字序列后,电子设备100可以判断该文字序列的句式是否存在于上述句式列表中。若该文字序列的句式存在于上述句式列表(即用户说出的语音命中句式),电子设备100可以判断该文字序列中的实体是否存在于上述实体列表中。其中,当判断出该文字序列的句式存在于上述句式列表,电子设备100可以根据句式中的实体占位符对应的实体类别,从实体列表中查找该实体类别下是否包含该文字序列中的实体。电子设备100可以无需将上述文字序列与执行意图列表中的全部有实体意图逐一进行比较,这可以简化电子设备100识别检测到的语音是否与执行意图匹配的过程。
在一些实施例中,用户在下达语音指令时,说出的内容不一定会与执行意图一字不差。例如,执行意图为“播放歌曲1”。用户在希望通过语音控制电子设备100播放歌曲1时,有可能使用“播放歌曲1”、“帮我播放歌曲1”、“帮我播放歌曲1吧”等等表述。可以看出,一些表述是在执行意图上增加了前缀和/或后缀。上述前缀和/或后缀并不影响上述表述所表达的意思。电子设备100中可存储有前后缀列表。例如,该前后缀列表中可包含前缀:“请”、“帮我”、“请帮我”以及后缀“了”、“吧”等等。本申请实施例对上述前缀和后缀不作具体限定。由前述实施例可知,电子设备100可以利用低算力语音识别模型对检测到的语音进行识别,得到概率最大的文字序列。电子设备100可以判断该文字序列中是否有上述前后缀列表中的前缀和后缀。若有,则电子设备100可以将该文字序列中的前缀和/或后缀去除后,再与执行意图进行比较。电子设备100可以判断执行意图列表中是否包含与上述去除前缀和/或后缀的文字序列匹配的执行意图。若是,则表明电子设备100检测到的语音与执行意图匹配。若否,则表明电子设备100检测到的语音不与执行意图匹配。通过上述实施例,用户在不进行唤醒操作而下达语音指令的情况下,可以采用多种不同的说法,无需与扩展意图一字不差。这可以更好地提升用户使用语音交互功能的体验。
电子设备100还可以利用低算力语音识别模型来识别检测到的语音是否与扩展意图匹配,具体方法可以参考上述识别检测到的语音是否与执行意图匹配的方法。这里不再赘述。
基于上述免唤醒的语音交互场景,下面介绍本申请实施例提供的一种语音交互方法。
图6示例性示出了一种语音交互方法的流程图。如图6所示,该方法可包括步骤S611~S624。其中:
S611、检测到语音1。
电子设备100可以通过麦克风实时采集周边环境中的声音。当用户在电子设备100的附近说话,电子设备100可以通过处理器在所采集的声音中检测到语音,例如语音1。
S612、判断语音1是否包含唤醒词。
当检测到语音1,电子设备100可以判断该语音1是否包含唤醒词。其中,电子设备1可以利用唤醒语音识别模型来判断语音1是否包含唤醒词。上述唤醒语音识别模型与本申请中的低算力语音识别模型可以是同一个模型,或者,也可以是不同的模型。本申请实施例对判断语音1是否包含唤醒词的具体方法不作限定。
其中,当判断出语音1包含唤醒词,电子设备100可以执行下述步骤S613。当判断出语音1不包含唤醒词,电子设备100可以执行下述步骤S616。
情况1:(S613~S614)语音1为唤醒词,电子设备100唤醒语音助手。
S613、唤醒语音助手,运行高算力语音识别模型。
当检测到唤醒词,电子设备100可以唤醒语音助手。当语音助手处于唤醒态,电子设备100可以运行高算力语音识别模型。
S614、通过高算力语音识别模型识别检测到的语音中用户的意图,并执行该意图对应的操作。
在语音助手处于唤醒态时,电子设备100可以通过麦克风采集周边环境中的声音,通过处理器检测所采集的声音中包含的语音,并通过高算力语音识别模型识别检测到的语音中用户的意图,并执行该意图对应的操作。
示例性地,上述语音1为用户说出唤醒词(如“小艺小艺”)对应的语音。电子设备100识别出语音1包含唤醒词后,可以唤醒语音助手。电子设备100检测到语音1后,还检测到用户下达语音指令“打开车窗”对应的语音。电子设备100可以运行高算力语音识别模型识别检测到的语音指令对应的意图(即打开车窗)。然后,电子设备100可以调用控制车窗的模块打开车窗。
不限于通过上述唤醒词唤醒语音助手,电子设备100还可以响应其它的唤醒操作(如作用在实体按键或虚拟按键上的操作)唤醒语音助手。
也即是说,在本申请提供的语音交互方法中,用户仍可以通过唤醒操作先唤醒语音助手,然后再向电子设备100下达语音指令。电子设备100在语音助手被唤醒后,可以通过语音助手来识别语音指令,并执行语音指令对应的操作。
S615、在预设时间段内无语音交互,将语音助手切换到睡眠态。
电子设备100唤醒语音助手后,可以实时检测用户是否与电子设备100进行语音交互。若检测到用户与电子设备100进行语音交互,电子设备100可以保持语音助手处于唤醒态,识别语音指令并执行语音指令对应的操作。若在预设时间段内未检测到用户与电子设备100进行语音交互,电子设备100可以将语音助手切换到睡眠态,从而节省电子设备100的功耗。上述预设时间段可以例如是1分钟、2分钟等等。本申请实施例对该预设时间段的取值不作限定。
其中,在一种可能的实现方式中,电子设备100可以通过检测周边环境中是否有人声,来判断用户是否与电子设备100进行语音交互。电子设备100检测到周边环境有人声,可以表示存在语音交互。在另一种可能的实现方式中,电子设备100可以通过识别检测到的语音中是否包含用于控制电子设备100的语音指令,来判断用户是否与电子设备100进行语音教会。电子设备100识别出检测到的语音中包含语音指令,可以表示存在语音交互。
可以看出,在语音助手唤醒后,若用户持续与电子设备100进行语音交互,电子设备100可以保持语音助手处于唤醒态。这样,用户在与电子设备100进行多轮语音交互时,无需频繁进行唤醒操作。
S616、判断语音助手是否处于唤醒态。
当未检测到唤醒词,电子设备100可以判断语音助手当前是否处于唤醒态。
其中,若电子设备100检测到上述语音1时,语音助手已经处于唤醒态,电子设备100可以执行上述步骤S614。具体的,电子设备100可以通过高算力语音识别模型识别语音1中用户的意图,并执行该意图对应的操作。
若电子设备100检测到上述语音1时,语音助手不处于唤醒态,电子设备100可以执行下述步骤S617。
情况2:(S617~S619)语音1为与执行意图匹配的语音。
S617、语音助手处于睡眠态,运行低算力语音识别模型。
语音助手不处于唤醒态,即语音助手处于睡眠态。
S618、通过低算力语音识别模型判断语音1是否与执行意图列表中的执行意图匹配。
电子设备100判断语音1是否与执行意图匹配的实现方法可以参考前述实施例的介绍。
若判断出语音1与执行意图列表中的执行意图匹配,电子设备100可以执行下述步骤S619。否则,电子设备100可以执行下述步骤S620。
S619、执行语音1匹配的执行意图对应的操作,唤醒语音识别模型。
示例性地,上述语音1可以是用户说出“播放歌曲1”对应的语音。执行意图列表中包含执行意图“播放歌曲1”。在检测到语音1时,电子设备100中的语音助手处于睡眠态。电子设备100可以利用低算力语音识别模型判断出语音1与执行意图“播放歌曲1”匹配。那么,电子设备100可以执行该执行意图“播放歌曲1”对应的操作,即开始播放歌曲1。
当判断出语音1与执行意图列表中的执行意图匹配,电子设备100还可以唤醒语音识别模型,以便于更准确地识别用户后续的语音。其中,唤醒语音助手后,电子设备100可以执行上述步骤S614。
上述步骤S617~S619可以参考前述图4A~图4C所示的场景。
情况3:(S620~S624)语音1为与扩展意图匹配的语音。
S620、判断语音1是否与扩展意图列表中的扩展意图匹配。
当判断出语音1与执行意图列表中的执行意图不匹配,电子设备100可以判断该语音1是否与扩展意图列表中的扩展意图匹配。其中,电子设备100可以仍然保持语音助手处于睡眠态。
若判断出语音1与扩展意图列表中的扩展意图匹配,电子设备100可以执行下述步骤S621。否则,电子设备100可以执行下述步骤S624。
S621、提示用户说出与扩展意图1关联的执行意图1,扩展意图1与语音1匹配。
电子设备100可以判断出语音1与扩展意图列表中的扩展意图1匹配。电子设备100可以在执行意图列表中确定出与扩展意图1关联的执行意图1。那么,为了确认用户说出语音1是否是在下达语音指令,电子设备100可以提示用户说出执行意图1。
示例性地,上述语音1可以为用户说出“我好热”对应的语音。扩展意图列表中包含扩展意图1“我好热”。执行意图列表中包含执行意图1“打开空调”。在检测到语音1时,电子设备100中的语音助手处于睡眠态。电子设备100可以利用低算力语音识别模型判断出语音1与上述扩展意图1匹配。为了确认用户说出语音1是否是希望电子设备100执行上述执行意图1对应的操作,电子设备100可以提示用户说出执行意图1,即提示用户说出“打开空调”。例如,前述图5A所示,电子设备100可以在屏幕上显示提示框421。
S622、检测到语音2。
电子设备100可以通过麦克风持续采集周边环境的声音。在经过上述步骤S621中提示用户说出执行意图1后,电子设备100检测到语音2。
S623、通过低算力语音识别模型判断出语音2与执行意图列表中的执行意图1匹配,进行执行意图1对应的操作,唤醒语音助手。
电子设备100中的语音助手仍然处于睡眠态。电子设备100可以通过低算力语音识别模型判断语音2是否与执行意图1匹配。
当判断出语音2与执行意图1匹配,电子设备100可以执行上述执行意图1对应的操作,并且唤醒语音助手。其中,唤醒语音助手后,电子设备100可以执行上述步骤S614。
当判断出语音2与执行意图1不匹配,电子设备100可以保持语音助手处于睡眠态。
这里仍以语音1为“我好热”,扩展意图1为“我好热”,执行意图1为“打开空调”作为示例进行说明。若在上述步骤S621之后,用户根据电子设备100的提示说出“打开空调”,则可以表示用户说出上述语音1是希望电子设备100打开空调。之后,电子设备100可以在检测到与执行意图1匹配的语音后,打开空调。这样可以减少漏识别用户可能下达语音指令的情况。若在上述步骤S621之后,用户没有理会电子设备100的提示,没有说出“打开空调”,则可以表示用户说出上述语音1并不是在下达语音指令。之后,电子设备100继续保持语音助手处于睡眠态,而不会开启空调。这样可以减少对用户所说的非语音指令的语音误响应的情况。
S624、保持语音助手处于睡眠态,运行低算力语音识别模型。
上述步骤S620~S624可以参考前述图5A和图5B所示的场景。
需要进行说明的是,在一些实施例中,上述步骤S616是可选的。例如,电子设备100中的语音助手当前处于睡眠态,电子设备100可以运行低算力语音识别模型,或者运行低算力语音识别模型和唤醒语音识别模型。当识别出检测到的语音1包含唤醒词,电子设备100可以唤醒语音助手(即步骤S613)。当识别出检测到的语音1不包含唤醒词,电子设备100可以利用低算力语音识别模型识别语音1是否与执行意图列表中的执行意图匹配(即步骤S618)。
在一些实施例中,上述步骤S618和步骤S620可以是同时执行的。本申请实施例对步骤S618和步骤S620的执行顺序不作限定。
由上述图6所示的方法可知,上述执行意图列表和扩展意图列表可以减少用户聊天的声音以及环境噪声等对电子设备100在未唤醒语音助手的情况下,准确识别语音指令的影响。这样,电子设备100在不唤醒语音助手的情况下也能快速响应用户的语音指令。用户可以无需唤醒语音助手,随时下达语音指令指示电子设备100执行相应的操作。当识别出检测到的语音与执行意图匹配,电子设备100除了执行该执行意图对应的操作,还可以唤醒语音助手。这样,电子设备100在语音助手唤醒后可以更加准确地是识别用户后续的请求,以便接受用户的语音控制。其中,电子设备100可以根据用户与电子设备100进行语音交互的情况将语音助手的状态在睡眠态和唤醒态之间进行切换。这样可以在给用户带来全时免唤醒的体验时,尽可能节约电子设备100的功耗。
在一些实施例中,电子设备100在进行语音交互的过程中还可以通过自学习对执行意图列表进行调整,使得执行意图列表中包含的意图更贴近用户的常用语音指令对应,从而提升用户与电子设备100进行语音交互的使用体验。
图7A和图7B示例性示出了本申请实施例提供的一种语音交互场景。
如图7A所示,在车载场景中,电子设备100中的语音助手可以处于睡眠态。用户在车内向电子设备100下达语音指令“播放歌曲2”。
电子设备100存储的执行意图列表中包含执行意图“播放歌曲1”,但不包含“播放歌曲2”。也即是说,执行意图列表对应的句式列表包含句式“播放[歌名]”。执行意图列表对应的实体列表包含“歌曲1”,但不包含“歌曲2”。其中,在一种可能的实现方式中,上述歌曲1可以是基于统计数据确定出的热门歌曲。上述歌曲2可以是基于统计数据确定出的非热门歌曲。一首歌曲是否为热门歌曲可以通过该歌曲的点播率来确定。实体列表中可预置有上述热门歌曲的歌名。即上述实体列表中可预置有“歌曲1”,而没有预置“歌曲2”。在另一种可能的实现方式中,电子设备100曾经响应过用户的语音指令而播放歌曲1。电子设备100可以将“歌曲1”添加至实体列表。电子设备100未曾接收到用于播放歌曲2的语音指令,则不会将“歌曲2”添加至实体列表。那么,实体列表包含“歌曲1”,但不包含“歌曲2”。在又一种可能的实现方式中,电子设备100曾经响应过用户的语音指令而播放歌曲1的次数超过预设次数,而电子设备曾经响应过用户的语音指令而播放歌曲2的次数没有超过预设次数。那么电子设备100可以将“歌曲1”添加至实体列表,而不将“歌曲2”添加至实体列表。本申请实施例对实体列表中包含的具体内容不作限定。后续实施例中以实体列表包含“歌曲1”,但不包含“歌曲2”作为示例进行说明。
电子设备100可以检测到环境中的语音“播放歌曲2”。电子设备100可以利用低算力语音识别模型识别出该语音的句式与句式列表中的句式“播放[歌名]”匹配(即该语音命中句式列表中的句式)。但是该语音中的实体与实体列表中的实体均不匹配(即该语音未命中实体列表中的实体)。根据上述识别结果,电子设备100可以指示用户再说一遍,并唤醒语音助手。
示例性地,电子设备100可以语音播报“对不起,我没听清,请再说一遍”。本申请实施例对电子设备100指示用户重复说一遍语音的方法不作限定。另外,由于唤醒了语音助手,电子设备100可以在图7A所示的用户界面710上显示唤醒标识412。
如图7B所示,用户根据图7A所示电子设备100的指示再次说出“播放歌曲2”。电子设备100可以检测到环境中的语音“播放歌曲2”。语音助手当前处于唤醒态。电子设备100可以利用高算力语音识别模型识别出该语音中用户的意图,并执行该意图对应的操作。例如,电子设备100可以语音播报“好的,为您放歌曲2”,并开始播放歌曲2。电子设备100还可以显示图7B所示的用户界面720。用户界面720可包括语音播报组件711和歌曲播放组件712。上述语音播报组件711中可显示有电子设备100与用户进行语音交互时语音播报的内容。上述歌曲播放组件712可以参考前述图4B所示歌曲播放组件411的介绍。
在一些实施例中,由于上述语音“播放歌曲2”命中执行意图列表对应的句式列表中的句式,未命中执行意图列表对应的实体列表中的实体,电子设备100可以在执行意图列表对应的实体列表添加该语音中的实体“歌曲2”。实体“歌曲2”可以属于实体列表中歌名类的实体。
那么,当电子设备100再次在语音助手处于睡眠态时检测到语音“播放歌曲2”,由于此时实体“歌曲2”已经添加进了执行意图列表对应的实体列表,因此电子设备100可以利用低算力语音识别模型确定该语音与执行意图列表中的执行意图匹配,从而可以在不唤醒语音助手的情况下直接响应用户的语音指令,开始播放歌曲2。
在一些实施例中,在语音助手处于唤醒态时,若电子设备100检测到的语音命中执行意图列表对应的句式列表中的句式,未命中执行意图列表对应的实体列表中的实体,电子设备100可以将该语音中的实体添加至执行意图列表对应的实体列表中。
例如,在上述图7B所示,电子设备100播放歌曲2后,用户想将播放的歌曲切换到歌曲3。用户可以说出语音“播放歌曲3”。由于语音助手还处于唤醒态,电子设备100可以通过高算力语音识别模型识别出该语音中用户的意图,并执行该意图对应的操作(即播放歌曲3)。另外,由于执行意图列表中不包含执行意图“播放歌曲3”(即执行意图列表对应的实体列表中不包含实体“歌曲3”),电子设备100可以在执行意图列表对应的实体列表添加该语音中的实体“歌曲3”。实体“歌曲3”可以属于实体列表中歌名类的实体。
由上述图7A和图7B所示的场景可知,即便用户下达的语音指令当前不与执行意图列表中的执行意图匹配,用户可以在电子设备100的指示下实现对电子设备100的语音控制。上述语音交互的过程中用户无需进行唤醒操作。并且,电子设备100可以通过自学习可以在语音交互的过程中通过自学习,在执行意图列表中添加与用户下达的语意指令匹配的执行意图。这样,电子设备100后续再次检测到同样的语音指令时,可以在不唤醒语音助手的情况下快速响应用户的语音指令。也即是说,用户后续再次下达同样的语音指令时,可以不进行唤醒操作。
图8示例性示出了本申请实施例提供的一种电子设备100自学习来调整执行意图列表的方法。
如图8所示,电子设备100当前存储的执行意图列表可包括以下执行意图:“关闭车窗”、“打开空调”、“系统音量调大”、“播放歌曲1”、“播放歌手1的歌”、“导航去地点1”。其中,由前述实施例对执行意图的分类可知,“关闭车窗”、“打开空调”、“系统音量调大”为无实体意图。“播放歌曲1”、“播放歌手1的歌”、“导航去地点1”为有实体意图。有实体意图可以由句式和实体组成。那么上述执行意图列表可对应有句式列表和实体列表。该句式列表可包括以下句式:“播放[歌名]”、“播放[歌手名]的歌”、“导航去[地点名]”。该实体列表可包括歌名类的实体“歌曲1”、歌手类的实体“歌手1”、地点名的实体“地点1”。
上述执行意图列表中不包含执行意图“播放歌曲2”。即实体列表中不包含实体“歌曲2”。
图8所示的执行意图列表仅为本申请实施例的示例性介绍,不应对本申请构成限定。
S81、用户说出语音“播放歌曲2”。
S82、电子设备100根据执行意图列表,检测到用户的语音命中句式,未命中实体。
电子设备100中的语音助手处于睡眠态。当检测到上述S81中用户说出的语音,电子设备100可以利用低算力语音识别模型确定该语音的句式与执行意图列表对应的句式列表中的句式“播放[歌名]”匹配,且该语音的实体与执行意图列表对应的实体列表中的实体均不匹配。也即是说,上述S81中的语音命中句式,未命中实体。
S83、电子设备100指示用户重复说语音,唤醒语音助手,运行高算力语音识别模型。
电子设备100提示用户重复说语音的场景可以参考前述图7A所示的场景。
S84、用户再次说出语音“播放歌曲2”。
S85、电子设备100通过高算力语音识别模型识别出用户语音的意图,并执行该意图对应的操作(即播放歌曲2),并将“歌曲2”添加至实体列表中。
如图8所示,经过上述自学习的过程,执行意图列表中增加了有实体意图“播放歌曲2”。该执行意图列表对应的实体列表中增加了实体“歌曲2”。电子设备100后续可以在语音助手处于睡眠态时,快速响应用户下达的语音指令“播放歌曲2”。
在一些实施例中,电子设备100可以缓存检测到的语音。当判断出检测到的语音命中句式,未命中实体,电子设备100可以从存储模块获取该语音。然后,电子设备100可以在语音助手唤醒后,利用高算力语音识别模型识别该语音中用户的意图,并执行该意图对应的操作。上述方法可以避免让用户再次说出相同的语音指令,提升用户与电子设备100进行语音交互的使用体验。
图8所示的自学习也可以称为实体自学习。可以理解的,有实体意图的句式可以支持在实体占位符所在的位置放置同一实体类别下的任意实体。电子设备100可以在用户使用语音助手的过程中检测用户下达的语音指令包含哪些实体,并将用户提及的实体添加至实体列表中。这样可以方便用户在不进行唤醒操作的情况下快速执行用户常用语音指令对应的操作,例如,播放用户常听的歌曲、导航去用户常去的地点等等。
可以看出,上述自学习对执行意图列表进行调整的方法可以使得执行意图列表中包含的意图更贴近用户的常用语音指令,从而提升用户与电子设备进行语音交互的使用体验。
在一些实施例中,用户在下达语音指令时所说的语音指令可能经常与扩展意图列表中的扩展意图匹配。由前述实施例可知,用户在说出与扩展意图匹配的语音后,用户还需要按照提示说出与该扩展意图关联的执行意图,才能控制电子设备100执行相应的操作。那么,当用户说出与扩展意图匹配的语音,并在电子设备100的提示下说出与该扩展意图关联的执行意图的频率超过预设频率,电子设备100可以将上述扩展意图移动至执行意图列表,从而将该扩展意图调整为执行意图。
图9示例性示出了本申请实施例提供的一种电子设备100自学习来调整执行意图列表的方法。
如图9所示,电子设备100当前存储的执行意图列表包括以下执行意图:“关闭车窗”、“打开空调”、“系统音量调大”、“播放歌曲1”、“播放歌手1的歌”、“导航去地点1”。其中,由前述实施例对执行意图的分类可知,“关闭车窗”、“打开空调”、“系统音量调大”为无实体意图。“播放歌曲1”、“播放歌手1的歌”、“导航去地点1”为有实体意图。
电子设备100当前存储的扩展意图列表包括以下扩展意图:“我好热”、“音量太小了”。
其中,扩展意图“我好热”与执行意图“打开空调”关联。扩展意图“音量太小了”与执行意图“系统音量调大”关联。
图9所示的执行意图列表、扩展意图列表,以及执行意图和扩展意图之间的关联关系仅为本申请实施例的示例性介绍,不应对本申请构成限定。
由前述图5A和图5B所示的场景可知,用户在电子设备100的附近说出语音“我好热”。电子设备100中的语音助手处于睡眠态。电子设备100可以利用低算力语音识别模型识别出检测到的语音与扩展意图“我好热”匹配。电子设备100可以提示用户说出与扩展意图“我好热”关联的执行意图“打开空调”。当检测到语音“打开空调”,电子设备100可以调用控制空调的模块打开空调。
在一些实施例中,当电子设备100检测到用户说“我好热”(即与扩展意图“我好热”匹配的语音),并在电子设备100的提示下说出“打开空调”(即与扩展意图“我好热”关联的执行意图)的频率超过预设频率,电子设备100可以将扩展意图“我好热”添加至执行意图列表,并将该扩展意图从扩展意图列表中移除。这样,该扩展意图“我好热”转化为执行意图。当电子设备100后续在语音助手处于睡眠态时检测到语音“我好热”,可以直接调用控制空调的模块打开空调。
如图9所示,经过上述自学习的过程,执行意图列表中增加了无实体意图“我好热”。扩展意图列表中移除了扩展意图“我好热”。
可以看出,上述自学习的方法可以将用户在下达语音指令场景中经常所说的语音匹配的扩展意图转化为执行意图,从而使得扩展意图列表中包含更多贴近用户在下达语音指令时习惯用语的意图。利用上述自学习后得到的执行意图列表和扩展意图列表,电子设备100可以更好地响应用户不进行唤醒操作而直接下达的语音指令,提升用户与电子设备100进行语音交互的使用体验。
在一些实施例中,若在用户使用电子设备100的语音交互功能的过程中发现执行意图列表中的一个或多个执行意图误识率较高,则可以将这一个或多个执行意图移动至扩展意图列表,从而将这一个或多个执行意图调整为扩展意图。
其中,电子设备100可以检测执行一个执行意图对应的操作之后的预设时间段内,响应于用户操作将上述被执行的操作撤回或取消的频率。若该频率高于预设频率,则表示上述一个执行意图误识率较高。电子设备100可以将上述一个执行意图调整为扩展意图。或者,上述语音助手的运营人员可以在上述低算力语音识别模型的测试过程中发现一个或多个执行意图误识率较高。或者,上述语音助手的运营人员可以收集用户的反馈,根据用户的反馈确定一个或多个执行意图误识率较高。本申请实施例对上述确定执行意图是否误识率较高的实现方法不作限定。
将上述误识率较高的执行意图调整为扩展意图后,电子设备100检测到与该扩展意图匹配的语音时可以先向用户确认是否下达语音指令。在确认用户是下达语音指令的情况,电子设备100可以执行与该扩展意图对应的操作。上述方法可以减少在不唤醒语音助手而下达语音指令的场景中,将非语音指令的语音当做语音指令而导致的误识别情况,提升用户与电子设备100进行语音交互的使用体验。
可以理解的,在本申请实施例中描述的各个用户界面仅为示例界面,并不对本申请方案构成限定。在其它实施例中,用户界面可以采用不同的界面布局,可以包括更多或更少的控件,可以增加或减少其它功能选项,只要基于本申请提供的同一发明思想,都在本申请保护范围内。
需要说明的是,在不产生矛盾或冲突的情况下,本申请任意实施例中的任意特征,或任意特征中的任意部分都可以组合,组合后的技术方案也在本申请实施例的范围内。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
- 一种LED产品封装结构及其封装方法
- 一种量子点LED封装结构及其制造方法
- 一种LED贴片支架注塑封装机构及封装方法
- 一种LED光源封装胶和室内显示屏的封装方法
- 一种封装基板、LED器件、LED模组及其制作方法
- LED封装结构、封装方法及具有该LED封装结构的LED灯
- LED封装方法、封装结构及使用该封装结构的LED灯