CN117334183A - 语音交互的方法、电子设备和语音助手开发平台 - Google Patents

语音交互的方法、电子设备和语音助手开发平台 Download PDF

Info

Publication number
CN117334183A
CN117334183A CN202210730938.3A CN202210730938A CN117334183A CN 117334183 A CN117334183 A CN 117334183A CN 202210730938 A CN202210730938 A CN 202210730938A CN 117334183 A CN117334183 A CN 117334183A
Authority
CN
China
Prior art keywords
interface
voice
application
voice assistant
intention
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210730938.3A
Other languages
English (en)
Inventor
苏庆
周剑辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202210730938.3A priority Critical patent/CN117334183A/zh
Priority to PCT/CN2023/100373 priority patent/WO2023246609A1/zh
Publication of CN117334183A publication Critical patent/CN117334183A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请实施例提供了一种语音交互的方法、电子设备和语音助手开发平台。该方法应用于语音交互***,该方法包括:获取用户输入的第一语句;根据第一语句获取用户的第一意图;确定与第一意图对应的应用程序交互的目标接口,目标接口为同步接口、异步接口或界面接口中的一种或多种;调用目标接口执行与第一意图相关的操作。该技术方案可以为应用程序提供一种接入语音的标准规范,从而可以降低语音交互***中语音助手与不同应用程序对接的复杂性。

Description

语音交互的方法、电子设备和语音助手开发平台
技术领域
本申请实施例涉及语音技术领域,并且更具体地,涉及一种语音交互的方法、电子设备和语音助手开发平台。
背景技术
随着语音技术的发展,用户通过语音和应用程序(application,App)进行交互的场景非常普遍。在用户通过语音和应用程序进行交互时,需要语音助手识别到用户的意图,并调用相应的应用服务,为用户提供良好的人机交互体验。
然而,不同的语音助手提供商可能会提供不同的方案与应用程序对接,增加了语音助手与不同应用程序对接的复杂性。
发明内容
本申请实施例提供一种语音交互的方法、电子设备和语音助手开发平台,该技术方案可以为应用程序提供一种接入语音的标准规范,从而可以降低语音助手与不同应用程序对接的复杂性。
第一方面,提供了一种语音交互的方法,所述方法应用于语音交互***,所述方法包括:获取用户输入的第一语句;根据所述第一语句获取用户的第一意图;确定与所述第一意图对应的应用程序交互的目标接口,所述目标接口为同步接口、异步接口或界面接口中的一种或多种;调用所述目标接口执行与所述第一意图相关的操作。
应理解,该目标接口可以是***接口,也可以是自定义接口,本申请实施例不予限定。
应理解,该语音交互***可以包括电子设备和服务器,该电子设备和服务器可以用于执行上述语音交互的方法中相应的步骤。该语音交互***还可以包括电子设备,该电子设备用于执行上述语音交互的方法中相应的步骤。该语音交互***还可以包括服务器,该服务器用于执行上述语音交互的方法中相应的步骤。
本申请实施例中,可以根据用户的第一语句获取用户的第一意图,并根据配置文件确定与应用程序交互的接口,之后调用该接口执行与用户的第一意图相关的操作。该技术方案中,当用户希望应用程序提供服务时,可以根据配置文件确定与应用程序交互的接口,从而调用该接口执行与用户的意图相关的操作。从而可以降低语音交互***中语音助手与不同应用程序对接的复杂性。
在一些实施例中,该方法也可以应用于车机、机器人等,本申请实施例不予限定。
结合第一方面,在第一方面的某些实现方式中,所述语音交互***还包括配置文件,所述配置文件中包括所述第一意图与所述目标接口的映射关系,所述确定与所述第一意图对应的应用程序交互的目标接口,包括:根据所述配置文件确定与所述第一意图对应的应用程序交互的目标接口。
应理解,该配置文件可以是预定义的。该配置文件可以是目标应用程序的开发人员编写的,该配置文件中可以定义目标应用程序使用的目标接口和交互的内容。
本申请实施例中,配置文件中可以预存储在语音交互***中,该配置文件可以包括第一意图与目标接口的映射关系,从而可以确定与第一意图对应的应用程序交互的目标接口。
结合第一方面,在第一方面的某些实现方式中,所述目标接口为同步接口或异步接口,所述调用所述目标接口执行与所述第一意图相关的操作,包括:调用所述同步接口或异步接口将所述第一意图和所述第一意图对应的槽位信息传递给所述应用程序;根据所述配置文件和所述应用程序返回的第一结果确定输出的第一方式;根据所述第一方式输出所述第一意图的执行结果。
示例性地,该第一方式可以是文本显示,语音播报或者卡片显示中的一种或多种。
该第一结果可以是返回结果码,还可以是返回结果码和对应的内容等,还可以是占位符等,该第一结果中包括的内容可以在配置文件中定义。
本申请实施例中,当目标接口为同步接口或异步接口时,可以调用该同步接口或异步接口将用户的第一意图和第一意图对应的槽位信息传递给应用程序,并根据应用程序的返回结果确定输出的第一方式,并以第一方式向用户呈现该第一意图的执行结果,从而可以为用户提供相应服务。
结合第一方面,在第一方面的某些实现方式中,当所述目标接口为同步接口时,在所述根据所述配置文件和所述应用程序返回的第一结果确定输出的第一方式之前,所述方法还包括:拒绝调用目标接口执行与第二意图相关的操作,其中,所述第二意图为根据用户输入的第二语句确定的。
本申请实施例中,当目标接口为同步接口时,在第一意图对应的操作执行结束之前,语音***不能够同步执行用户的第二意图,从而可以避免语音交互出现顺序错乱,影响用户体验。
结合第一方面,在第一方面的某些实现方式中,当所述目标接口为异步接口时,在所述根据所述配置文件和所述应用程序返回的第一结果确定输出的第一方式,所述方法还包括:调用目标接口执行与第二意图相关的操作,其中,所述第二意图为根据用户输入的第二语句确定的。
在一些实施例中,当用户的第一意图为控制设备的相关意图时,例如,设置空调温度,打开或关闭车窗,控制窗帘等,一般情况下会调用异步接口执行该第一意图。
本申请实施例中,当目标接口为异步接口时,在第一意图对应的操作执行结束之前,用户可以继续发布语音指令,语音***可以同步执行用户的第二意图,从而提升语音交互的效率。
结合第一方面,在第一方面的某些实现方式中,所述第一结果中包括第一信息,所述第一信息用于指示所述应用程序对所述第一意图的执行结果,所述根据所述第一方式输出所述第一意图的执行结果,包括:根据所述配置文件和所述第一信息确定所述执行结果;以第一方式输出所述执行结果。
示例性地,该第一信息可以是返回结果码,例如,0对应执行成功;1对应执行失败等。该第一信息可以在配置文件中定义。
本申请实施例中,语音交互***可以根据配置文件和第一信息确定执行结果,并向用户呈现所述执行结果,从而可以向用户提供相应服务。
结合第一方面,在第一方面的某些实现方式中,所述第一结果中包括占位符信息,所述根据所述第一方式输出所述第一意图的执行结果,包括:所述根据所述配置文件和所述占位符信息确定所述执行结果;所述以第一方式输出所述执行结果。
本申请实施例中,应用程序返回的第一结果中可以包括占位符信息,则语音交互***可以根据配置文件中设置的内容和该占位符信息共同确定完整的执行结果,并向用户呈现该执行结果,从而可以向用户提供相应服务。
结合第一方面,在第一方面的某些实现方式中,所述第一结果中包括所述第一方式的内容,所述根据所述第一方式输出所述第一意图的执行结果,包括:以第一方式输出所述执行结果。
本申请实施例中,在一些情况下,用户的意图对应的内容是实时变化的(如天气),则目标应用程序返回的第一结果中还可以执行结果的具体内容(如实时天气情况),则语音交互***可以向用户呈现该第一结果,从而可以向用户提供相应服务。
结合第一方面,在第一方面的某些实现方式中,所述第一方式包括如下中的至少一项:文本显示;语音播报;卡片显示。
结合第一方面,在第一方面的某些实现方式中,所述目标接口为界面接口,所述调用所述目标接口执行与所述第一意图相关的操作,包括:调用所述界面接口将所述第一意图和所述第一意图对应的槽位信息传递给所述应用程序;显示所述应用程序的目标显示界面,所述目标显示界面为所述第一意图和所述第一意图对应的槽位信息对应的显示界面。
本申请实施例中,当目标接口为界面接口时,该第一意图和第一意图对应的槽位信息可以是一个显示界面的接入地址,从而电子设备可以根据该接入地址打开相应的显示界面。
结合第一方面,在第一方面的某些实现方式中,所述备根据所述第一语句获取用户的第一意图,包括:向云服务器发送所述第一语句;接收所述云服务器根据所述第一语句解析得到的所述第一意图。
本申请实施例中,电子设备在获取到第一语句后可以向云服务器发送该第一语句,由云服务器进行解析,得到第一意图,并发送给电子设备,从而可以降低电子设备的处理第一语句的复杂度。
结合第一方面,在第一方面的某些实现方式中,所述配置文件为预定义的。
本申请实施例中,应用程序的开发人员可以根据应用程序能够提供的服务编写配置文件,以接入语音助手中,该技术方案可以为应用程序接入语音提供便利。
第二方面,提供了一种语音助手开发平台,包括:所述语音助手开发平台,用于接收第一文件,所述第一文件包括应用程序和配置文件,其中,所述配置文件包括第一意图与目标接口的映射关系,所述目标接口为语音助手与所述应用程序交互的接口,所述目标接口为同步接口、异步接口或界面接口中的一种或多种;所述语音助手开发平台,还用于当确定所述第一文件满足预设条件时,向语音助手云服务器发送所述第一文件或所述配置文件,用于语音交互服务。
该预设条件可以是配置文件中的话术或语言表达方式是否合法合规,该预设条件还可以是应用程序是否是经过正规平台审核的应用程序等。
本申请实施例中,用户或开发人员可以将包含应用程序和配置文件的第一文件上传至语音助手开发平台中,语音助手开发平台可以对该第一文件进行测试,以确定其是否满足要求,从而完成对第一文件的审核,以保证应用程序提供服务的合规性。
在一些实施例中,该第一文件也可以仅包括应用程序,该配置文件可以包括在应用程序中。
结合第二方面,在第二方面的某些实现方式中,所述配置文件用于语音助手确定与所述第一意图对应的应用程序交互的目标接口,以使得所述语音助手调用所述目标接口执行与所述第一意图相关的操作。
本申请实施例中,语音助手可以根据配置文件来确定与第一意图对应的应用程序交互的目标接口,以使得语音助手可以调用目标接口执行与第一意图相关的操作。
在一些实施例中,语音助手开发平台还可以对发布的第一文件进行下线处理。
结合第二方面,在第二方面的某些实现方式中,所述语音助手开发平台还用于:响应于用户的第一操作,编辑所述配置文件。
本申请实施例中,用户可以在语音助手开发平台中对配置文件进行修改,以使得可以对配置文件进行更新,无需重新上传配置文件,提升了效率。
结合第二方面,在第二方面的某些实现方式中,所述语音助手开发平台具体用于:在所述配置文件中添加第二意图与目标接口的映射关系;或者,在所述配置文件中修改所述第一意图与所述目标接口的映射关系。
本申请实施例中,用户可以开发平台中对配置文件进行修改,例如增加新的意图和目标接口的映射关系,或者,改变原有意图与目标接口的映射关系等等,从而可以提升开发的灵活性。
在一些实施例中,用户还可以在开发平台中自定义应用程序以及对应意图、使用的接口,或者交互的内容等等。
结合第二方面,在第二方面的某些实现方式中,所述语音助手开发平台还用于:响应于用户的第二操作,删除所述第一文件。
本申请实施例中,例如,当第一文件不满足平台要求时,根据用户或管理者的操作,语音助手开发平台还可以删除第一文件。
第三方面,提供了一种电子设备,包括一个或多个处理器;一个或多个存储器;所述一个或多个存储器存储有一个或多个计算机程序,所述一个或多个计算机程序包括指令,当所述指令被所述一个或多个处理器执行时,使得如第一方面及其任一种可能的实现方式中所述的语音交互的方法被执行。
第四方面,提供了一种电子设备,包括用于实现如第一方面及其任一种可能的实现方式中所述的语音交互的方法的模块。
第五方面,提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口用于接收信号,并将所述信号传输至所述处理器,所述处理器处理所述信号,使得如第一方面及其任一种可能的实现方式中所述的语音交互的方法被执行。
第六方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机指令,当所述计算机指令在计算机上运行时,使得如第一方面及其任一种可能的实现方式中所述的语音交互的方法被执行。
第七方面,提供了一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得如第一方面及其任一种可能的实现方式中所述的语音交互的方法被执行。
第八方面,提供可一种语音交互***,所述语音交互***用于执行如第一方面及其任一种可能的实现方式中所述的语音交互的方法。
附图说明
图1是本申请实施例提供的一种应用程序的框架图。
图2本申请实施例提供的一组GUI的示意图。
图3是本申请实施例提供的另一组GUI的示意图。
图4是本申请实施例提供的一种用户与车机语音交互的示意图。
图5是本申请实施例提供的一种语音交互的方法的示意性流程图。
图6是本申请实施例提供的另一种语音交互的方法的示意性流程图。
图7是本申请实施例提供的一组GUI的示意图。
图8是本申请实施例提供的一种语音交互的方法的示意性流程图。
具体实施方式
下面将结合附图,对本申请实施例中的技术方案进行描述。
本申请实施例的技术方案可以应用于手机、平板、可穿戴设备等电子设备中,还可以应用于车机中等。
在介绍本申请实施例提供的转换文件格式的方法的技术方案之前,首先简单介绍一下本申请可能涉及的一些技术术语。
同步接口:用于阻塞式调用的***接口。在当前调用执行未结束时,不能够执行下一个调用。
异步接口:用于非阻塞式调用的***接口。在当前调用执行未结束时,可以执行下一个调用。
界面接口:用于根据接入地址访问接入地址对应的显示界面的***接口。
软件开发工具包(software development kit,SDK):是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作***等创建应用软件的开发工具的集合。SDK还经常包括示例代码、支持性的技术注解或者其他的为基本参考资料澄清疑点的支持文档。
深度链接(deeplink):通过该deeplink,可以直接链接到应用程序内部页面。例如,通过一个deeplink,可以打开应用程序某个固定的页面。
意图和槽位:在语音助手中,需要理解一句话中用户的意图,并且提取其中的关键词(即槽位),比如:用户对语音助手说“今天会下雨吗”,这句话中意图为:天气查询;槽位为:时间:今天;天气类型:下雨。
随着语音技术的发展,用户通过语音和应用程序进行交互的场景非常普遍。在用户通过语音和应用程序进行交互时,需要语音助手识别到用户的意图,并调用相应的应用服务,为用户提供良好的人机交互体验。
然而,不同的语音助手提供商可能会提供不同的方案与应用程序对接,增加了语音助手与不同应用程序对接的复杂性。
图1提供了一种应用程序集成语音助手SDK的方式接入语音的技术方案。
图1是本申请实施例提供的一种应用程序的框架图。如图1所示,该App100可以包括该App本身的代码110部分和语音助手SDK120部分。
应理解,该语音助手提供商可以为应用程序提供语音助手SDK,从而应用可以支持语音功能,使得用户可以通过语音与应用程序进行交互。
那么,该App100的开发人员在开发该App100时,可以集成该语音助手SDK120。
在应用程序集成了语音助手SDK的情况下,应用程序和语音助手耦合,当语音助手SDK更新时,该应用程序需要重新同步进行更新。此外,应用程序在使用语音助手时,对于应用程序提供的服务,缺少审核,无法保证应用服务的质量。
在另一些方案中,应用程序可以为语音助手提供一些deeplink,支持通过语音助手打开该deeplink对应的显示界面。然而,该技术方案中,语音助手只能打开固定的页面,无法实现从应用程序获取信息在语音助手内展示。同样的,对于应用程序提供的deeplink对应的页面,缺少审核,无法保证应用服务的质量。
有鉴于此,本申请实施例提供一种语音交互的方法、电子设备和语音助手开发平台,该技术方案中语音助手可以通过调用不同的***接口实现不同的交互内容,且可以对应用程序提供的服务进行审核,保证应用服务的质量。
图2是本申请实施例提供的一组图形用户界面(graphical user interface,GUI)的示意图。其中,从图2中的(a)至(c)示出了用户和电子设备语音交互的过程。
参见图2中的(a),该GUI为电子设备的桌面510,该桌面510中可以包括电子设备上安装的多个应用程序,当电子设备检测到用户点击语音助手的图标511时,可以显示如图2中的(b)所示的GUI。
在一些实施例中,用户也可以通过语音指令使电子设备显示图2中的(b)所示的GUI。例如,用户可以对着电子设备说“小艺小艺”,电子设备也可以显示图2中的(b)所示的GUI。
在一些实施例中,用户还可以通过长按电源键使电子设备显示图2中的(b)所示的GUI。
参见图2中的(b),该GUI可以为语音助手的显示界面520,该显示界面520中可以包括语音输入控件522,还可以包括其他功能控件523、524。该显示界面520中还可以包括多个推荐输入521。当电子设备检测到用户点击语音输入控件522时,电子设备可以显示如图2中的(c)所示的GUI。
参见图2中的(c),该GUI为用户输入语音指令“西安今天的天气怎么样”,电子设备返回的查询结果显示界面530。该显示界面530中可以包括用户输入的对话框531,该对话框中531显示文字“西安今天的天气怎么样”,该对话框531中还可以包括编辑控件532,当用户点击该编辑控件532时,可以对该对话框中的文字进行编辑;该显示界面530中还可以包括语音助手的对话框533和天气卡片534,该对话框533中可以显示天气类应用程序返回的查询结果“西安今天阴,14℃到27℃”,该天气卡片534中可以显示当前的温度、今天的最高温度和最低温度,以及未来几个小时的天气情况和温度等等信息。
应理解,该电子设备在显示显示界面530的同时,可以语音播报查询到的天气情况,播报内容可以是“西安今天阴,14℃到27℃”。
应理解,本申请实施例中,当用户向语音助手发布语音指令“西安今天的天气怎么样”时,该语音助手可以获取到用户的意图为“查询天气”,槽位为地点:“西安”;时间:“今天”。则该语音助手可以调用***接口(如同步接口)将该用户的意图和语音指令中的槽位信息传递给天气类应用程序(如华为天气),并根据天气类应用程序返回的信息将查询结果以语音播放和/或文本显示、卡片展示等方式呈现给用户。
图3是本申请实施例提供的另一组GUI的示意图。其中,从图3中的(a)至(c)示出了用户和电子设备语音交互的过程。
其中,图3中的(a)至(b)可以参见图2中的(a)至(b)的相关描述,为了简洁不再赘述。
参见图3中的(c),该GUI为电子设备识别用户的语音指令为“打开华为音乐”的显示界面540。其中,该显示界面540中可以显示识别到的用户的语音指令“打开华为音乐”的对话框541,之后,电子设备可以显示图3中的(d)所示的GUI。
参见图3中的(d),该GUI为华为音乐的首页的显示界面550。
应理解,本申请实施例中,当用户向语音助手发布语音指令“打开华为音乐”时,该语音助手可以获取到用户的意图为打开应用程序,槽位为打开华为音乐应用程序,则该语音助手可以调用界面接口将该槽位传递给华为音乐应用程序,从而电子设备启动华为音乐,显示华为音乐的显示界面。
图4是本申请实施例提供的一种用户与车机语音交互的示意图。其中,从图4中的(a)至(b)示出了用户与车机进行语音交互的过程。
参见图4中的(a),车机600可以正处在行驶过程中,用户希望打开副驾车窗。此时,用户可以唤醒车载语音助手,当用户输入语音指令“打开副驾车窗”时,车机600的中控屏的显示界面610中可以显示对话框611,该对话框611可以显示语音指令“打开副驾车窗”。
此时,车载语音助手可以调用车载控制***去执行用户的语音指令,当执行成功后,车机600的中控屏可以显示显示界面620。
参见图4中的(b),车机600的显示界面620中可以显示对话框611和对话框612,该对话框612中可以显示内容“已为您打开副驾车窗”。同时,车载语音助手还可以语音播报“已为您打开副驾车窗”。
应理解,上述用户通过语音指令打开车窗的过程中,当用户向车载语音助手发布语音指令“打开副驾车窗”时,车载语音助手可以获取到用户的意图为打开车窗,槽位为副驾位置,则该车载语音助手可以调用异步接口将该意图和槽位信息传递给车载控制***,车载控制***去执行打开副驾车窗的动作,当执行成功后,可以向车载语音助手返回相应信息,车载语音助手根据车载控制***返回的相应信息向用户语音播放“已为您打开副驾车窗”和/或文本显示“已为您打开副驾车窗”。
还应理解,车载控制***在执行用户的指令打开车窗时,其过程可能会耗费几秒钟的时间,在这个过程中,用户还可以继续向车载语音助手发布其他语音指令。例如,用户继续发布语音指令“将空调调节到25度”等。
图5是本申请实施例提供的一种语音交互的方法的示意性流程图。如图5所示,该方法200可以包括步骤201至步骤211。
本申请实施例中提供的方法可以适用于多种操作***下的应用程序中,如安卓操作***下的安卓应用程序,或者,鸿蒙操作***下的鸿蒙应用程序,或者其他操作***下的应用程序中,本申请实施例不予限定。
201,开发应用程序。
在一些实施例中,该方法200也可以不包括步骤201,即可以在应用程序已经开发完成的情况下执行步骤202。
202,编写配置文件。
示例性地,该配置文件可以是voiceabilities.json文件。
在一些实施例中,语音助手开发平台可以为应用程序开发人员提供集成开发环境(Integrated development environment,IDE)插件,应用程序开发人员可以在该IDE插件中编写配置文件。
应理解,该配置文件可以是语音能力与应用服务之间的映射关系。该配置文件中可以定义意图和槽位到应用程序服务的对应关系。该配置文件中还可以定义语音调用***接口时,应用程序返回给语音助手的内容,以及语音助手应用程序的返回的内容所执行的动作。
在一个示例中,用户可以在配置文件中定义打开界面使用的***接口,通过调用该打开界面的***接口,可以打开应用程序的界面。
在另一个示例中,用户可以在配置文件中定义同步接口和交互的内容,通过调用该同步接口可以与应用程序进行交互。
应理解,在语音助手调用该同步接口与应用交互时,语音助手向应用程序输入语音指令后,需要等待应用程序的反馈结果,才能执行用户的下一条语音指令。
例如,语音助手通过调用该同步接口可以与天气类App进行交互,以查询天气。当用户输入语音指令“查询天气”时,语音助手可以调用同步接口向天气类App发送查询天气的指令,并接收天气类App的返回结果,并将该结果反馈给用户。应理解,上述查询天气的过程可能耗时较短,当用户发送“查询天气”指令后,语音助手会一直等待天气类App的返回结果。
在另一个示例中,用户可以在配置文件中定义异步接口和交互的内容,通过调用该异步接口可以与应用程序进行交互。
应理解,在语音助手调用该异步接口与应用交互时,应用程序根据语音指令提供相应功能,可能是比较耗时的,此时语音助手向应用程序输入语音指令后,可以不用等待应用程序的反馈结果,即可输入下一条语音指令。
例如,该语音助手可以是车载语音助手,用户通过该车载语音助手调用该异步接口可以控制车辆,如车内空调,汽车车窗等。当用户输入语音指令“打开天窗”时,车载语音助手可以调用异步接口将该语音指令发送给车载控制***,车载控制***根据该指令打开汽车天窗,由于打开汽车天窗的过程比较耗时,可能会花费几秒钟的时间,车载控制***在执行成功或失败时,可以返回结果给车载语音助手,车载语音助手可以将相应的结果语音播报给用户。
在一些实施例中,当鸿蒙应用程序接入语音时,该配置文件的基础配置可以参见表1。
表1
标签名 标签类型 M/O 默认值 描述(服务生效范围)
voiceConfig JsonObject M 配置文件的最外层标签
bundleName string M 鸿蒙应用包名
moduleName string M 鸿蒙应用模块名
label string M 鸿蒙模块信息描述
packageVersion string O 包的版本号
示例性地:
在一些实施例中,当安卓应用程序接入语音时,该配置文件的基础配置可以参见表2。
表2
标签名 标签类型 M/O 默认值 描述(服务生效范围)
voiceConfig JsonObject M 配置文件的最外层标签
packageName string M 应用程序包名
appName string M 应用程序名
packageVersion string M 包的版本号
示例性地:
在一些实施例中,该配置文件的同步接口服务配置可以参见表3。
表3
/>
示例性地,
/>
在一个示例中,开发人员在配置文件中配置displayText和speakText时,其具体的内容可以选择语音助手官方提供的标准话术,从而可以保证话术的质量。该displayText和speakText的具体内容也可以由开发人员自行进行编辑,但需要语音助手开发平台进行审核,以保证话术的质量。
在另一个示例中,displayText和speakText的具体内容可以不再配置文件中配置,而是在调用***接口与应用程序交互时,由应用程序实时返回,语音助手根据应用程序返回的内容进行文本显示和/或语音播报。
在一些实施例中,该配置文件的异步接口服务配置可以参见表4。
表4
示例性地:
/>
203,编译打包。
开发人员可以将开发好的应用程序和编写好的配置文件进行编译打包,形成应用程序包。
204,将应用程序包和配置文件上传至语音助手开发平台。
示例性地,开发人员可以在语音助手开发平台进行注册并登录,然后可以将自己的应用程序包和编写好的配置文件上传至语音助手开发平台中,从而可以在语音助手开发平台中对应用程序提供的服务进行审核。
205,对应用程序和配置文件进行测试。
示例性地,该语音助手开发平台提供测试功能,当用户点击测试时,可以自动对应用程序和配置文件进行测试,并可以生成相应的测试报告。
206,对应用程序和配置文件进行发布。
应理解,在应用程序和配置文件测试通过后,可以在语音助手开发平台对该应用程序和配置文件进行发布,或者,可以只发布该应用程序,用于告知用户该应用程序和配置文件测试通过。
在另一些实施例中,也可以对发布的应用程序和配置文件进行下线。
在另一些实施例中,用户还可以删除上传的应用程序和配置文件,或者,语音助手开发平台的管理人员确定该应用程序和配置文件不符合规定,也可以删除该应用程序和配置文件。
通过该语音助手开发平台可以对开发人员开发的应用程序和编写的配置文件进行审核,从而可以为应用程序接入语音提供一种监管机制,进而保证语音服务的质量,避免出现不合规不合法的现象。
207,用户向语音助手发送语音指令。相应的,语音助手接收该语音指令。
示例性地,用户希望查询天气,则可以向语音助手发送查询天气的语音指令,例如该语音指令可以是“西安今天的天气怎么样”。
208,语音助手根据该语音指令,获取用户的意图和语音指令中的槽位信息。
示例性地,该语音指令为“西安今天的天气怎么样”,则语音助手可以识别出用户的意图为“查询天气”,该语音指令中的槽位信息为地点:“西安”;时间:“今天”。
在另一些实施例中,该步骤208中,语音助手可以将语音指令发送至语音助手云服务器,由云服务器识别用户的意图和语音指令中的槽位信息,然后将该意图和槽位信息发送至语音助手。
例如,该语音指令为“西安今天的天气怎么样”,语音助手将该语音指令发送至语音助手云服务器,云服务器识别出用户的意图为“查询天气”,该语音指令中的槽位信息为地点:“西安”;时间:“今天”,并将该意图和槽位信息发送至语音助手。
209,语音助手调用同步接口或异步接口将获取到的槽位信息发送给应用程序。
示例性地,当语音指令为“西安今天的天气怎么样”,可以确定用户的意图为“查询天气”,该语音指令中的槽位信息为地点:“西安”;时间:“今天”。则语音助手可以调用同步接口将识别到的槽位信息发送给天气类应用程序(如华为天气)。
应理解,应用程序可以向语音助手提供其支持的服务,例如,天气类应用程序可以向语音助手提供其支持查询天气的服务,当语音助手识别到用户的意图为查询天气时,可以与该天气类应用程序进行交互。
示例性地,当语音指令为“打开副驾的车窗”,可以确定用户的意图为“打开车窗”,该语音指令中的槽位信息为位置:“副驾驶”。则语音助手可以调用异步接口将识别到的槽位信息发送给车载控制***。
在一些实施例中,语音助手可以通过参数将应用程序定义的处理函数和槽位信息传递给应用程序。
例如,语音助手可以通过调用如下同步接口和应用程序进行交互。
与鸿蒙应用程序交互的同步接口:Bundle result=DataAbilityHelper.call(Uri uri,String method,String arg,PacMap extras);
其中,Uri由应用程序提供。语音助手将处理函数和槽位信息通过成对控制流形逼近(pairwise controlled manifold approximation,pacMap)结构的extras参数传递给应用程序。
与安卓应用程序交互的同步接口:Bundle result=context.getContentResolver.call(Uri uri,String method,String arg,Bundleextras);
其中,Uri由应用程序提供。语音助手将处理函数和槽位信息通过Bundle结构的extras参数传递给应用程序。
需要说明的是,上述extras参数的参数名由开发人员在配置文件中定义,对应的值由语音助手从语音指令中识别。该extras参数可以定义如表5。
表5
示例性地,语音助手向应用程序传递的参数如下:
在上述示例中,可以确定函数名为:设置空调;参数名为:温度;温度值为:25;语言为:简体中文。
语音助手将上述参数传递给应用程序,则应用程序可以确定用户希望将空调调整到25度,从而可以根据上述参数调整空调的温度。
在一些示例中,语音助手可以通过调用异步接口(service ability)和鸿蒙应用程序进行交互,语音助手向鸿蒙应用程序传递的参数可以参见表1-4。
在一些示例中,语音助手可以通过调用异步接口(service)和安卓应用程序进行交互,语音助手向安卓应用程序传递的参数可以参见表1-4。
210,应用程序向语音助手返回相应信息。
在一些实施例中,在执行成功时,应用程序可以向语音助手返回0;在执行失败时,应用程序可以向语音助手返回1;在类型不支持时,应用程序可以向语音助手返回3;
在另一些实施例中,应用程序可以向语音助手返回执行的结果,例如,将查询到的天气的信息发送给语音助手,约定语音助手以文本方式展示该天气信息;或者,将查询到的天气的信息发送给语音助手,约定语音助手以语音播报方式播报该天气信息;或者,将查询到的天气的信息发送给语音助手,约定语音助手以卡片形式展示该天气信息。
应理解,该返回值和对应的含义可以是开发人员在配置文件中定义的。该语音助手向用户呈现结果的方式也可以是开发人员在配置文件中定义的。
在一些实施例中,鸿蒙或安卓应用程序通过同步接口或异步接口向语音助手的返回值可以参见表6。
表6
示例1:在设置空调温度的场景中,语音播报话术和文本显示内容由开发人员在配置文件中已定义。应用程序设置温度成功,只需要向语音助手返回配置文件中定义的返回结果码。
当应用程序为鸿蒙应用程序时,示例1的部分代码示例如下:
当应用程序为安卓应用程序时,示例1的部分代码示例如下:
该示例1中,应用程序向语音助手返回的返回结果码为“0”,则语音助手可以向用户播报执行成功。
示例2:在设置空调温度的场景中,语音播报话术和文本显示内容由开发人员在配置文件中已定义。应用程序设置温度成功,需要向语音助手返回配置文件中定义的占位符。
当应用程序为鸿蒙应用程序时,示例2的部分代码示例如下:
当应用程序为安卓应用程序时,示例2的部分代码示例如下:
该示例2中,假设用户希望将空调温度调高至35度,应用程序判断35度的温度过高,可能会对用户带来不适,则应用程序可以将空调实际生效温度temp1调整到25度,然后可以向语音助手返回结果码0和占位符25,语音助手将该占位符25补充到话术“空调温度已为您调到{temp1}度”,并播报给用户。
在另一些示例中,假设用户希望将正在播放的视频的进度条调整到19.5,而视频类应用程序支持的进度条最小调整单位为1,则应用程序可以将进度条的实际值调整到19,然后向语音助手返回结果码0和占位符19,语音助手将该占位符19补充到话术“视频进度条已为您调到{jindu}”,并播报给用户。
示例3:在设置空调温度的场景中,语音播报话术和文本显示内容在配置文件中未定义,而是在应用程序执行语音指令时实时返回。
当应用程序为鸿蒙应用程序时,示例3的部分代码示例如下:
当应用程序为安卓应用程序时,示例3的部分代码示例如下:
该示例3中,假如用户的语音指令为“将空调调节至25度”。应用程序设置空调温度成功后,将播报话术“空调已为您调节到25度”或者文本显示内容“空调已为您调节到25度”或者卡片显示的内容返回给语音助手。语音助手根据应用程序返回的结果,在需要语音播报时,向用户播报“空调已为您调节到25度”;在需要显示文本内容时,在显示屏中显示文本内容“空调已为您调节到25度”;在需要展示卡片时,展示相关内容。
示例4:在设置空调温度的场景中,语音播报话术和文本显示内容由开发人员在配置文件中已定义。应用程序设置温度失败,只需要向语音助手返回配置文件中定义的返回结果码。
当应用程序为鸿蒙应用程序时,示例4的部分代码示例如下:
该示例4中,应用程序向语音助手返回的返回结果码为“1”,则语音助手可以向用户播报执行失败。
示例5:在设置空调温度的场景中,应用程序设置温度失败,且错误类型超出了语音助手官方的定义语音,则播报话术和文本显示内容由开发人员在配置文件中自由定义。
当应用程序为鸿蒙应用程序时,示例5的部分代码示例如下:
当应用程序为安卓应用程序时,示例5的部分代码示例如下:
该示例5中,用户在配置文件中可以定义当返回结果码"retCode"为“18”时,语音助手文本显示的内容为“空调滤芯需要更换”,语音播报的内容为“空调滤芯需要更换”。当应用程序向语音助手返回结果码“18”时,语音助手可以根据配置文件配置的内容,文本显示“空调滤芯需要更换”和/或语音播报“空调滤芯需要更换”。
211,语音助手提供相应服务。
示例性地,语音助手将应用程序返回的信息反馈给用户。例如,用户的语音指令为“西安今天的天气怎么样”,则语音助手根据天气类应用程序返回的信息“西安今天多云、气温15-20度”。则语音助手可以向用户语音播放“西安今天多云、气温15-20度”,或者语音助手可以在电子设备的屏幕上显示文字“西安今天多云、气温15-20度”,或者语音助手可以在电子设备的屏幕上显示天气卡片,可以包括上述“西安今天多云、气温15-20度”的信息。
示例性地,参见图2中的(c),当用户输入语音指令“西安今天的天气怎么样”时,语音助手将用户的意图和语音指令中的槽位信息通过同步接口传递给天气类应用程序,并可以根据天气类应用程序返回的结果向用户文本显示“西安今天阴,14℃到27℃”,并显示天气卡片534,还可以语音播报“西安今天阴,14℃到27℃”等。
在另一个示例中,用户的语音指令为“将空调调节至25度”,则语音助手根据控制类应用程序返回的占位符的值“25”。则语音助手将该“25”填充到话术“空调已为您调节到{}度”,并可以在电子设备的屏幕上显示文字“空调已为您调节到25度”,或者,语音助手可以向用户语音播放“空调已为您调节到25度”,或者语音助手可以在电子设备的屏幕上显示卡片,卡片上的内容可以包括上述“空调已为您调节到25度”的信息。
应理解,语音助手向用户反馈结果的方式可以是预先定义好的,例如,可以是开发人员在配置文件中定义的。
在一些实施例中,对于该步骤201至步骤211的执行顺序不予限定。该步骤201至步骤211中的某些步骤可以被删除、不执行、替换或者对调等,本申请实施例对此不予限制。
本申请实施例中,在语音交互的技术方案中,开发人员可以编写配置文件,该文件中可以定义意图和槽位到应用程序服务的对应关系,该配置文件中还可以定义语音调用***接口时,应用程序返回给语音助手的内容,以及语音助手根据应用程序返回的内容所执行的动作。
本申请实施例中,为开发人员提供了语音助手开发平台,从而可以对开发人员开发的应用程序和配置文件进行审核,从而可以保证语音服务的质量。
本申请实施例中,开发人员可以在配置文件中可以定义语音助手调用的三种不同的***接口与应用程序进行交互,以及交互的内容,从而为应用程序提供一种接入语音的标准规范,从而可以降低语音助手与不同应用程序对接的复杂性。
上文结合图5介绍了语音交互时,语音助手调用同步接口和异步接口与应用进行交互的技术方案。下文将结合图6介绍语音交互时,语音助手调用***打开应用程序的界面的技术方案。
图6是本申请实施例提供的另一种语音交互的方法的示意性流程图。如图6所示,该方法300可以包括步骤301至步骤310。
301,开发应用程序。
应理解,该步骤301可以参见步骤201的相关描述,为了简洁,不再赘述。
302,编写配置文件。
示例性地,该配置文件可以是voiceabilities.json文件。
在一些实施例中,语音助手开发平台可以为应用程序开发人员提供IDE插件,应用程序开发人员可以在该IDE插件中编写配置文件。
该配置文件中可以包括用户定义的界面接口,以及语音助手通过该界面接口与应用程序交互的内容,例如,可以语音助手通过调用该界面接口打开某个应用程序的显示界面。
303,编译打包。
304,将应用程序包和配置文件上传至语音助手开发平台。
305,对应用程序和配置文件进行测试。
306,对应用程序和配置文件进行发布。
307,用户向语音助手发送语音指令。相应的,语音助手接收该语音指令。
308,语音助手根据该语音指令,获取用户的意图和语音指令中的槽位信息。
应理解,该步骤303-308可以参见步骤203-208的相关描述,为了简洁,不再赘述。
309,语音助手通过调用界面接口将获取到的槽位信息发送给应用程序。
示例性地,当用户的语音指令为“打开华为视频”时,语音助手可以获取到用户的意图为“打开华为视频”,该语音指令中的槽位信息为打开应用程序:“华为视频”。则语音助手可以调用界面接口将该槽位信息传递给华为视频。
在一些实施例中,语音助手可以通过调用如下接口打开鸿蒙应用程序的界面。
startAbility(new Intent(String,Uri));
其中,Uri由应用程序提供,例如,该Uri可以是应用程序的某个显示界面的接入地址。语音助手可以将识别到的槽位信息通过该Uri传递给应用程序。
部分代码示例如下:
在一些实施例中,语音助手可以通过调用如下接口打开安卓应用程序的界面。
startActivity(new Intent(String,Uri));
其中,Uri由应用程序提供,例如,该Uri可以是应用程序的某个显示界面的接入地址。语音助手可以将识别到的槽位信息通过该Uri传递给应用程序。
示例性地,当语音助手识别到语音指令中的槽位信息为打开华为视频时,可以调用该接口将华为视频首页显示界面的接入地址传递给华为视频,以期打开华为视频。
部分代码示例如下:
/>
310,应用程序根据槽位信息显示目标界面。
应用程序根据语音助手发送的槽位信息,打开目标界面。
示例性地,应用程序根据该槽位信息确定语音助手发的是华为音乐首页显示界面的接入地址,则启动华为音乐显示其首页的显示界面。
示例性地,参见图3中的(c)、(d),当用户输入语音指令“打开华为音乐”时,电子设备启动华为音乐,显示华为音乐的首页显示界面。
在一些实施例中,对于该步骤301至步骤310的执行顺序不予限定。该步骤301至步骤310中的某些步骤可以被删除、不执行、替换或者对调等,本申请实施例对此不予限制。
在另一些实施例中,该方法300可以与方法200相结合,即开发人员可以在配置文件中定义界面接口、同步接口和异步接口,以及调用该界面接口、同步接口和异步接口与应用程序交互的内容,语音助手可以根据用户的语音指令获取到相应的意图、槽位信息,并调用相应的***接口与应用程序进行交互。
本申请实施例中,为开发人员提供了语音助手开发平台,从而可以对开发人员开发的应用程序和配置文件进行审核,从而可以保证语音服务的质量。
本申请实施例中,开发人员可以在配置文件中可以定义语音助手调用的打开应用界面的***接口与应用程序进行交互,从而为应用程序提供一种接入语音的标准规范,从而可以降低语音助手与不同应用程序对接的复杂性。
图7是本申请实施例提供的一组图形用户界面(graphical user interface,GUI)的示意图。其中,从图7中的(a)至(b)示出了开发人员在语音助手开发平台上传应用程序和编写配置文件的过程。
参见图7中的(a),该GUI可以是语音助手开发平台的配置文件管理模块的显示界面410。该显示界面410中可以包括配置文件的配置内容,例如,开发人员可以在平台阈值技能服务下填写相应的应用名、意图名等等。
在一些实施例中,该显示界面410还可以包括前文中所述的与应用程序交互使用的***接口,以及返回的内容等等。
在一些实施例中,语音助手开发平台也支持开发人员进行自定义技能服务。例如,当开发人员点击显示界面410中的自定义技能服务时,可以在跳转的页面中进行编辑,如某个应用的应用名、意图、使用调用界面接口传输的接入地址等等。
当开发人员使用鼠标点击控件411的操作后,可以显示图7中的(b)所示的GUI。
参见图7中的(b),在显示界面420中,可以包括三种上传文件的类型供开发人员选择,分别为:鸿蒙应用HAP、鸿蒙应用+配置文件和安卓应用APK+配置文件,例如,用户选择鸿蒙应用HAP。该显示界面420中还包括用户上传的应用类型,分别为安卓(android)、鸿蒙(Harmony)、开源鸿蒙(openHarmony),例如,用户选择安卓。该显示界面420中还可以包括用于上传文件的上传图标和文字“将文件拖到此处,或点击上传”。该显示界面420中还可以包括取消功能控件421和确定功能控件422,当开发人员点击取消功能控件421时,可以取消上传;当开发人员点击确定功能控件422时,可以保存上传的文件,并跳转到下一界面。
在一些实施例中,该语音助手发开平台还可以对开发人员上传的应用程序和配置文件进行测试,并可以生成测试报告。该语音助手开发平台还可以对应用程序进行发布和下线,以及删除等操作。
本申请实施例中,该语音助手开发平台可以对开发人员上传的应用程序和编写的配置文件进行审核和测试,当审核或测试不通过时,可以对该应用程序进行下线,拒绝其使用语音助手,从而可以为语音交互提供一种监管机制,进而保证语音服务的质量,避免出现不合规、不合法的现象。
图8是本申请实施例提供的一种语音交互的方法的示意性流程图。如图8所示,该方法800可以应用于语音交互***中,该方法800可以包括步骤810至840。
810,获取用户输入的第一语句。
在一些实施例中,该第一语句可以是用户语音输入的,也可以是文字输入的,还可以是通过图片等方式输入的,本申请实施例不做具体限定。
示例性地,参见图2,该第一语句可以是用户语音输入的“西安今天的天气怎么样”。
820,根据第一语句获取用户的第一意图。
在一些实施例中,语音交互***包括电子设备,该电子设备可以在获取到该第一语句之后,解析该第一语句,得到用户的第一意图。
在另一些实施例中,语音交互***包括电子设备和服务器,则电子设备可以在获取到该第一语句之后,将该第一语句发送至云服务器(如语音助手云服务器),由该云服务器进行解析,得到该第一意图,然后将该第一意图发送至电子设备中。
在另一些实施例中,该语音交互***还可以是服务器。
830,确定与第一意图对应的应用程序交互的目标接口。
在一些实施例中,该目标接口可以包括界面接口、同步接口和异步接口中的一种或多种。
应理解,该目标接口可以是***接口,还可以是自定义接口。例如,该目标接口可以是电子设备的***接口;或者,语音助手以SDK的形式集成在应用程序中,则该目标接口可以是于SDK交互的自定义接口,本申请实施例不予限定。
840,调用目标接口执行与第一意图相关的操作。
在一个示例中,该目标接口可以是界面接口,则电子设备可以调用该界面接口打开应用程序的某个显示界面。
参见图3,用户的第一语句可以为打开华为音乐,则电子设备可以调用该界面接口打开华为音乐应用程序的显示界面550。
在另一个示例中,该目标接口可以是同步接口,则电子设备可以通过该同步接口与相应的应用程序进行交互。
参见图2,用户的第一语句可以为“西安今天的天气怎么样”,则电子设备可以调用同步接口与天气类应用程序进行交互,并向用户输出执行结果。
在另一个示例中,该目标接口可以是异步接口,则电子设备可以通过该异步接口与相应的应用程序进行交互。
参见图4,该电子设备可以安装在车机中,或者,该方法可以直接应用于车机中,该应用程序可以是控制类应用程序或车载***应用程序,则当用户输入语句“打开副驾车窗”时,可以通过该异步接口去执行打开副驾车窗的操作,并在执行后向用户输出执行结果。
本申请实施例中,响应于用户的语音操作,语音交互***可以确定与用户的第一意图对应的应用程序交互的接口,然后通过调用该接口与相应的应用程序进行交互以执行用户的第一意图相关的操作。该技术方案可以在用户通过语音与语音交互***进行交互时,语音交互***可以通过不同的接口与不同的应用程序进行交互,从而可以降低语音交互***与不同应用程序交互的复杂性。
本申请实施例中,应用程序在使用语音功能时,无需集成语音助手SDK,可以进一步降低了应用程序的开发复杂度。
在一些实施例中,该语音交互***还包括配置文件,配置文件中包括第一意图与目标接口的映射关系,确定与第一意图对应的应用程序交互的目标接口,包括:根据配置文件确定与第一意图对应的应用程序交互的目标接口。
在一些实施例中,该配置文件可以是预定义的。例如,该配置文件可以是应用程序的开发人员为了方便接入语音而编写的,该配置文件中可以设置该应用程序与语音助手交互所使用的接口和交互的内容,从而电子设备可以确定与应用程序交互的目标接口。
本申请实施例中,配置文件中可以预存储在语音交互***中,该配置文件可以包括第一意图与目标接口的映射关系,从而可以确定与第一意图对应的应用程序交互的目标***接口。
在一些实施例中,该目标接口为同步接口或异步接口,调用目标接口执行与第一意图相关的操作,包括:调用同步接口或异步接口将第一意图和第一意图对应的槽位信息传递给应用程序;根据配置文件和应用程序返回的第一结果确定输出的第一方式;根据第一方式输出第一意图的执行结果。
示例性地,参见图2,该第一语句为“西安今天的天气怎么样”,则可以确定该第一意图为“查询天气”,该第一意图对应的槽位信息为时间:今天;地点;西安,则电子设备可以调用同步接口将该第一意图和槽位信息传输给天气类应用程序,天气类应用程序在接收到该第一意图和槽位信息后,进行天气查询,然后向电子设备返回查询结果,相应的,电子设备向用户呈现该查询结果。该查询结果可以是以语音播报、文本显示或卡片显示等方式呈现给用户。
示例性地,参见图4,该第一语句可以为“打开副驾车窗”,则可以确定用户的第一意图为“打开车窗”,对应的槽位信息为位置:副驾。则车载电子设备可以调用异步接口将该第一意图和槽位信息传输给控制类应用程序,控制类应用程序在接收到该第一意图和槽位信息后,去执行打开副驾车窗的操作,在执行结束后,向车载电子设备返回执行结果,车载电子设备向用户呈现该执行结果。
本申请实施例中,当目标接口为同步接口或异步接口时,语音交互***可以调用该同步接口或异步接口将用户的第一意图和第一意图对应的槽位信息传递给应用程序,并根据应用程序的返回结果确定向用户呈现的第一方式,并以第一方式向用户呈现该第一意图的执行结果,从而可以为用户提供相应服务。
在一些实施例中,当所述目标接口为同步接口时,在根据所述配置文件和应用程序返回的第一结果确定输出的第一方式之前,该方法还可以包括:拒绝调用目标接口执行与第二意图相关的操作,其中,第二意图为根据用户输入的第二语句确定的。
本申请实施例中,当目标接口为同步接口时,在第一意图对应的操作执行结束之前,语音***不能够同步执行用户的第二意图,从而可以避免语音交互出现顺序错乱,影响用户体验
在一些实施例中,当目标接口为异步接口时,在根据所述配置文件和应用程序返回的第一结果确定输出的第一方式,该方法还可以包括:调用目标接口执行与第二意图相关的操作,其中,第二意图为根据用户输入的第二语句确定的。
在一些实施例中,当用户的第一意图为控制设备的相关意图时,例如,设置空调温度,打开或关闭车窗,控制窗帘等,一般情况下会调用异步接口执行该第一意图。
本申请实施例中,当目标接口为异步接口时,在第一意图对应的操作执行结束之前,用户可以继续发布语音指令,语音***可以同步执行用户的第二意图,从而提升语音交互的效率。
在一些实施例中,该第一结果中包括第一信息,该第一信息用于指示所述应用程序的执行结果,根据第一方式输出第一意图的执行结果,包括:电子设备根据配置文件和第一信息确定执行结果;以第一方式输出该执行结果。
示例性地,该第一信息可以是返回结果码,例如,返回结果码0对应执行成功;返回结果码1对应执行失败等;或者,该第一信息还可以是用于指示执行成功或执行失败的指示信息,本申请实施例不予限定。该第一信息可以在配置文件中进行定义。
本申请实施例中,语音交互***可以根据配置文件和第一信息确定执行结果,并向用户呈现所述执行结果,从而可以向用户提供相应服务。
在一些实施例中,该第一结果中包括占位符,根据第一方式输出第一意图的执行结果,包括:根据配置文件和占位符确定执行结果;以第一方式输出执行结果。
示例性地,假设用户希望将正在播放的视频的进度条调整到19.5,而视频类应用程序支持的进度条最小调整单位为1,则视频类应用程序可以将进度条的实际值调整到19,然后向语音助手返回结果码0和占位符19,语音助手将该占位符19补充到话术“视频进度条已为您调到{jindu}”,并播报给用户。
本申请实施例中,应用程序返回的第一结果中可以包括占位符信息,则可以根据配置文件中设置的内容和该占位符信息共同确定完整的执行结果,并向用户呈现该执行结果,从而可以向用户提供相应服务。
在一些实施例中,该第一结果中包括第一方式的内容,该根据第一方式输出第一意图的执行结果,包括:以第一方式输出执行结果。
示例性地,在一些场景下,用户希望查询的结果是实时变化的,例如,查询天气时,天气是实时变化的,则天气类应用程序可以在执行天气查询时,将天气查询的结果实时返回给电子设备,如“西安今天晴,15度-25度”,电子设备在接收到信息时,以文本显示或语音播报或卡片显示等方式向用户呈现该查询结果。
本申请实施例中,在一些情况下,用户的意图对应的内容是实时变化的(如天气),则目标应用程序返回的第一结果中还可以执行结果的具体内容(如实时天气情况),则可以直接向用户呈现该第一结果,从而可以向用户提供相应服务。
在一些实施例中,第一方式包括如下中的至少一项:文本显示;语音播报;卡片显示。
在一些实施例中,该目标接口为界面接口,调用目标接口执行与第一意图相关的操作,包括:调用界面接口将第一意图和第一意图对应的槽位信息传递给应用程序;显示应用程序的目标显示界面,该目标显示界面为第一意图和第一意图对应的槽位信息对应的显示界面。
示例性地,参见图3,当该第一语句为“打开华为音乐”时,则可以确定第一意图为打开应用程序,对应的槽位信息为应用程序:华为音乐。则电子设备可以调用界面接口将该第一意图和槽位信息传递给华为音乐,并显示华为音乐的首页显示界面。
本申请实施例中,当目标接口为界面接口时,该第一意图和第一意图对应的槽位信息可以是一个显示界面的接入地址,从而可以根据该接入地址打开相应的显示界面。
在一些实施例中,根据第一语句获取用户的第一意图,包括:向云服务器发送第一语句;接收云服务器根据第一语句解析得到的第一意图。
本申请实施例中,电子设备在获取到第一语句后可以向云服务器发送该第一语句,由云服务器进行解析,得到第一意图,并发送给电子设备,从而可以降低电子设备的处理第一语句的复杂度。
在一些实施例中,该配置文件为预定义的。
示例性地,该配置文件可以是应用程序的开发人员可以根据应用程序能够提供的服务编写的文件,例如,该配置文件可以存储在语音助手的云服务器中,该配置文件还可以与应用程序集成在一起等。
本申请实施例中,应用程序的开发人员可以根据应用程序能够提供的服务编写配置文件,以接入电子设备的语音助手中,该技术方案可以为应用程序接入语音提供便利。
本申请实施例还提供一种语音助手开发平台,该语音助手开发平台可以用于接收第一文件,第一文件包括应用程序和配置文件,其中,配置文件包括第一意图与目标接口的映射关系,目标接口为语音助手与所述应用程序交互的接口,目标接口为同步接口、异步接口或界面接口中的一种或多种;语音助手开发平台,还用于当确定第一文件满足预设条件时,向语音助手云服务器发送第一文件或配置文件,用于语音交互服务。
应理解,该目标接口可以是***接口,还可以是自定义接口。例如,该目标接口可以是电子设备的***接口;或者,语音助手以SDK的形式集成在应用程序中,则该目标接口可以是于SDK交互的自定义接口,本申请实施例不予限定。
在一些实施例中,该第一文件也可以仅包括应用程序,该配置文件可以包括在应用程序中。
示例性地,参见图5,该第一文件可以包括应用程序和配置文件,开发人员可以对该第一文件进行编译打包,然后上传至语音助手开发平台,语音助手开发平台可以对其进行测试。当确定该第一文件满足预设条件时,可以向语音助手云服务器发送该第一文件或配置文件,以用于语音交互服务。
应理解,该预设条件可以是配置文件中的话术或语言表达方式是否合法合规,该预设条件还可以是应用程序是否是经过正规平台审核的应用程序等。
本申请实施例中,用户或开发人员可以将包含应用程序和配置文件的第一文件上传至语音助手开发平台中,语音助手开发平台可以对该第一文件进行测试,以确定其是否满足要求,从而完成对第一文件的审核,以保证应用程序提供服务的合规性。
在一些实施例中,该配置文件用于语音助手确定与第一意图对应的应用程序交互的目标接口,以使得语音助手调用目标接口执行与第一意图相关的操作。
本申请实施例中,语音助手可以根据配置文件来确定与第一意图对应的应用程序交互的目标接口,以使得语音助手可以调用目标接口执行与第一意图相关的操作。
在一些实施例中,语音助手开发平台还可以对发布的第一文件进行下线处理。
在一些实施例中,语音助手开发平台还用于:响应于用户的第一操作,编辑配置文件。
本申请实施例中,用户可以在语音助手开发平台中对配置文件进行修改,以使得可以对配置文件进行更新,无需重新上传配置文件,提升了效率。
在一些实施例中,语音助手开发平台具体用于:在配置文件中添加第二意图与目标接口的映射关系;或者,在配置文件中修改第一意图与目标接口的映射关系。
本申请实施例中,用户可以开发平台中对配置文件进行修改,例如增加新的意图和目标接口的映射关系,或者,改变原有意图与目标接口的映射关系等等,从而可以提升开发的灵活性。
在一些实施例中,用户还可以在开发平台中自定义应用程序以及对应意图、使用的接口,或者交互的内容等等。从而进一步增加了开发的灵活性。
在一些实施例中,语音助手开发平台还用于:响应于用户的第二操作,删除第一文件。
本申请实施例中,例如,当第一文件不满足平台要求时,根据用户或管理者的操作,语音助手开发平台还可以删除第一文件,以完成对应用程序提供服务的审核。
在一些实施例中,用户还可以在语音助手开发平台中编辑该配置文件。从而有利于提升配置文件的修改效率。
本申请实施例还提供一种电子设备,包括用于实现如前文中任一种可能的实现方式中所述的语音交互的方法的模块。
本申请实施例还提供一种电子设备,包括一个或多个处理器;一个或多个存储器;该一个或多个存储器存储有一个或多个计算机程序,该一个或多个计算机程序包括指令,当该指令被一个或多个处理器执行时,使得如前文中任一种可能的实现方式中所述的语音交互的方法被执行。
本申请实施例还提供一种芯片,所述芯片包括处理器和通信接口,所述通信接口用于接收信号,并将所述信号传输至所述处理器,所述处理器处理所述信号,使得如前文中任一种可能的实现方式中所述的语音交互的方法被执行。
本实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机指令,当该计算机指令在计算机上运行时,使得上述实施例中的语音交互的方法被执行。
本实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,使得上述实施例中的语音交互的方法被执行。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (22)

1.一种语音交互的方法,其特征在于,所述方法应用于语音交互***,所述方法包括:
获取用户输入的第一语句;
根据所述第一语句获取用户的第一意图;
确定与所述第一意图对应的应用程序交互的目标接口,所述目标接口为同步接口、异步接口或界面接口中的一种或多种;
调用所述目标接口执行与所述第一意图相关的操作。
2.根据权利要求1所述的方法,其特征在于,所述语音交互***还包括配置文件,所述配置文件中包括所述第一意图与所述目标接口的映射关系,所述确定与所述第一意图对应的应用程序交互的目标接口,包括:
根据所述配置文件确定与所述第一意图对应的应用程序交互的目标接口。
3.根据权利要求1所述的方法,其特征在于,所述目标接口为同步接口或异步接口,所述调用所述目标接口执行与所述第一意图相关的操作,包括:
调用所述同步接口或异步接口将所述第一意图和所述第一意图对应的槽位信息传递给所述应用程序;
根据所述配置文件和所述应用程序返回的第一结果确定输出的第一方式;
根据所述第一方式输出所述第一意图的执行结果。
4.根据权利要求3所述的方法,其特征在于,当所述目标接口为同步接口时,在所述根据所述配置文件和所述应用程序返回的第一结果确定输出的第一方式之前,所述方法还包括:
拒绝调用目标接口执行与第二意图相关的操作,其中,所述第二意图为根据用户输入的第二语句确定的。
5.根据权利要求3所述的方法,其特征在于,当所述目标接口为异步接口时,在所述根据所述配置文件和所述应用程序返回的第一结果确定输出的第一方式,所述方法还包括:
调用目标接口执行与第二意图相关的操作,其中,所述第二意图为根据用户输入的第二语句确定的。
6.根据权利要求3-5中任一项所述的方法,其特征在于,所述第一结果中包括第一信息,所述第一信息用于指示所述应用程序的执行结果,所述根据所述第一方式输出所述第一意图的执行结果,包括:
根据所述配置文件和所述第一信息确定所述执行结果;
以所述第一方式输出所述执行结果。
7.根据权利要求3-5中任一项所述的方法,其特征在于,所述第一结果中包括占位符信息,所述根据所述第一方式输出所述第一意图的执行结果,包括:
根据所述配置文件和所述占位符信息确定所述执行结果;
以所述第一方式输出所述执行结果。
8.根据权利要求3-5中任一项所述的方法,其特征在于,所述第一结果中包括所述第一方式的内容,所述根据所述第一方式输出所述第一意图的执行结果,包括:
以所述第一方式输出所述执行结果。
9.根据权利要求3-8中任一项所述的方法,其特征在于,所述第一方式包括如下中的至少一项:
文本显示;语音播报;卡片显示。
10.根据权利要求1所述的方法,其特征在于,所述目标接口为界面接口,所述调用所述目标接口执行与所述第一意图相关的操作,包括:
调用所述界面接口将所述第一意图和所述第一意图对应的槽位信息传递给所述应用程序;
显示所述应用程序的目标显示界面,所述目标显示界面为所述第一意图和所述第一意图对应的槽位信息对应的显示界面。
11.根据权利要求1-10中任一项所述的方法,其特征在于,所述根据所述第一语句获取用户的第一意图,包括:
向云服务器发送所述第一语句;
接收所述云服务器根据所述第一语句解析得到的所述第一意图。
12.根据权利要求2-11中任一项所述的方法,其特征在于,所述配置文件为预定义的。
13.一种语音助手开发平台,其特征在于,包括:
所述语音助手开发平台,用于接收第一文件,所述第一文件包括应用程序和配置文件,其中,所述配置文件包括第一意图与目标接口的映射关系,所述目标接口为语音助手与所述应用程序交互的接口,所述目标接口为同步接口、异步接口或界面接口中的一种或多种;
所述语音助手开发平台,还用于当确定所述第一文件满足预设条件时,向语音助手云服务器发送所述第一文件或所述配置文件,用于语音交互服务。
14.根据权利要求13所述的语音助手开发平台,其特征在于,所述配置文件用于语音助手确定与所述第一意图对应的应用程序交互的目标接口,以使得所述语音助手调用所述目标接口执行与所述第一意图相关的操作。
15.根据权利要求13或14所述的语音助手开发平台,其特征在于,所述语音助手开发平台还用于:
响应于用户的第一操作,编辑所述配置文件。
16.根据权利要求15所述的语音助手开发平台,其特征在于,所述语音助手开发平台具体用于:
在所述配置文件中添加第二意图与目标接口的映射关系;或者,在所述配置文件中修改所述第一意图与所述目标接口的映射关系。
17.根据权利要求13-16中任一项所述的语音助手开发平台,其特征在于,所述语音助手开发平台还用于:
响应于用户的第二操作,删除所述第一文件。
18.一种电子设备,其特征在于,包括一个或多个处理器;一个或多个存储器;所述一个或多个存储器存储有一个或多个计算机程序,所述一个或多个计算机程序包括指令,当所述指令被所述一个或多个处理器执行时,使得如权利要求1-12中任一项所述的语音交互的方法被执行。
19.一种电子设备,其特征在于,包括用于实现如权利要求1-12中任一项所述的语音交互的方法的模块。
20.一种芯片,其特征在于,所述芯片包括处理器和通信接口,所述通信接口用于接收信号,并将所述信号传输至所述处理器,所述处理器处理所述信号,使得如权利要求1-12中任一项所述的语音交互的方法被执行。
21.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机指令,当所述计算机指令在计算机上运行时,使得如权利要求1-12中任一项所述的语音交互的方法被执行。
22.一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得如权利要求1-12中任一项所述的语音交互的方法被执行。
CN202210730938.3A 2022-06-24 2022-06-24 语音交互的方法、电子设备和语音助手开发平台 Pending CN117334183A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210730938.3A CN117334183A (zh) 2022-06-24 2022-06-24 语音交互的方法、电子设备和语音助手开发平台
PCT/CN2023/100373 WO2023246609A1 (zh) 2022-06-24 2023-06-15 语音交互的方法、电子设备和语音助手开发平台

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210730938.3A CN117334183A (zh) 2022-06-24 2022-06-24 语音交互的方法、电子设备和语音助手开发平台

Publications (1)

Publication Number Publication Date
CN117334183A true CN117334183A (zh) 2024-01-02

Family

ID=89292090

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210730938.3A Pending CN117334183A (zh) 2022-06-24 2022-06-24 语音交互的方法、电子设备和语音助手开发平台

Country Status (2)

Country Link
CN (1) CN117334183A (zh)
WO (1) WO2023246609A1 (zh)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9548066B2 (en) * 2014-08-11 2017-01-17 Amazon Technologies, Inc. Voice application architecture
US10698585B2 (en) * 2014-08-29 2020-06-30 Nuance Communications, Inc. Virtual assistant development system
CN108563669B (zh) * 2018-01-09 2021-09-24 高徐睿 一种自动实现app操作的智能***
CN110377722A (zh) * 2019-07-29 2019-10-25 中国工商银行股份有限公司 响应方法及装置、电子设备和可读存储介质
CN115145529B (zh) * 2019-08-09 2023-05-09 华为技术有限公司 语音控制设备的方法及电子设备
CN111223485A (zh) * 2019-12-19 2020-06-02 深圳壹账通智能科技有限公司 智能交互方法、装置、电子设备及存储介质
CN111916082B (zh) * 2020-08-14 2024-07-09 腾讯科技(深圳)有限公司 语音交互方法、装置、计算机设备和存储介质
WO2022134110A1 (zh) * 2020-12-26 2022-06-30 华为技术有限公司 一种语音理解方法及装置

Also Published As

Publication number Publication date
WO2023246609A1 (zh) 2023-12-28

Similar Documents

Publication Publication Date Title
US11709668B2 (en) Systems and methods for application program and application program update deployment to a mobile device
US7146609B2 (en) Method, system and article of manufacture for a firmware image
US8019592B2 (en) Information terminal device and method for purchasing and adding additional program functions
US20160170712A1 (en) Method for integrally implementing development and release of APP
US10110728B2 (en) Theme change system, portable communication device, server apparatus, and computer program
US20080293395A1 (en) Using downloadable specifications to render a user interface on a mobile device
US20040034455A1 (en) Vehicle system and method of communicating between host platform and human machine interface
US20030217358A1 (en) Method, system, and article of manufacture for firmware downloads
US7805669B2 (en) System and method for selective form configuration
US20140298318A1 (en) Computer-executable application packaging method, computer-executable device and storage media performing the same
US20140229868A1 (en) Multi-modal/multi-channel application tool architecture
CN101211349A (zh) 一种生成数字电视开机门户页面的***及其方法
US20110119676A1 (en) Resource File Localization
WO2022247594A1 (zh) 一种页面呈现方法、装置、电子设备、计算机可读存储介质、及计算机程序产品
CN108804158A (zh) 应用程序调用方法、终端设备的控制方法、终端设备及计算机可读存储介质
CN108415698A (zh) 在语音对话平台的技能中添加控件的方法
US20130033722A1 (en) Systems and methods for providing content to a peripheral device
CN110888634B (zh) 游戏落地页生成方法、装置、计算机设备和存储介质
CN110347454A (zh) 应用程序主题设定方法、终端设备控制方法及装置、终端设备及计算机可读存储介质
US7644259B2 (en) Customization of option ROM images
CN117334183A (zh) 语音交互的方法、电子设备和语音助手开发平台
US20040201591A1 (en) Data transfer method, data transfer program, storage medium and information terminal
CN101710277B (zh) 嵌入式浏览器的脚本处理方法及装置
CN108563475A (zh) 应用程序的运行方法、装置及存储介质
CN102082966B (zh) 一种机顶盒脚本配置升级的方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination