CN112667255B - 更新方法、装置、电子设备及存储介质 - Google Patents
更新方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN112667255B CN112667255B CN202011405311.8A CN202011405311A CN112667255B CN 112667255 B CN112667255 B CN 112667255B CN 202011405311 A CN202011405311 A CN 202011405311A CN 112667255 B CN112667255 B CN 112667255B
- Authority
- CN
- China
- Prior art keywords
- updating
- version
- recognition algorithm
- voice recognition
- update
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 96
- 238000003860 storage Methods 0.000 title claims abstract description 18
- 230000004044 response Effects 0.000 claims abstract description 18
- 238000005457 optimization Methods 0.000 claims description 63
- 230000015654 memory Effects 0.000 claims description 21
- 230000008569 process Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 10
- 238000005096 rolling process Methods 0.000 claims description 6
- 238000013135 deep learning Methods 0.000 abstract description 3
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 230000003993 interaction Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 230000015572 biosynthetic process Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 230000007547 defect Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000033764 rhythmic process Effects 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000002618 waking effect Effects 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本申请公开了一种更新方法、装置、电子设备及存储介质,涉及语音、深度学习等人工智能技术领域。具体实现方案为:语音SDK从服务器端获取到用于对语音识别算法进行更新的更新包后,根据更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发目标应用程序调用语音识别算法,响应于目标应用程序的调用,加载更新包以得到更新后的语音识别算法,并采用更新后的语音识别算法进行语音识别。相较于现有技术中通过对应用程序进行升级以实现算法更新,存在更新周期长,错误率高等问题,由语音SDK触发应用程序调用语音识别算法,以加载更新包更新语音识别算法,无需对应用程序进行升级,即可实现对算法的更新,有利于提高算法更新的速度。
Description
技术领域
本申请公开了一种更新方法、装置、电子设备及存储介质,涉及人工智能技术领域,具体为深度学习和语音技术。
背景技术
随着互联网、智能硬件及软件技术的迅猛发展,智能家居设备已成为继智能手机以来的行业热点,各大国内及国际电子厂商不断推出各种智能电子产品,极大的丰富了人们的娱乐活动。在各种新功能和新交互中,语音交互功能是最方便的。通过语音识别、语音合成、语义分析等技术手段组成了各种智能设备的语音交互系统,让用户能够方便、自然的通过带有无线麦克风的设备进行语音输入,通过自然语言同智能设备进行交互,语音交互系统完成了语音控制及与第三方应用的功能的整合,形成一个智能语音交互系统。
语音交互系统的核心和灵魂,是庞大复杂的深度学习语音算法。语音识别及合成算法模型的快速迭代与智能设备OTA(Over-the-Air Technology,空中下载技术)节奏的不一致,及实验室有限训练数据训练效果与线上用户体验的差异,是急需解决的一个难题。
发明内容
本申请提供了一种更新方法、装置、电子设备以及存储介质。
根据本申请的一方面,提供了一种更新方法,所述方法包括:
从服务器端获取用于对语音识别算法进行更新的更新包;
根据所述更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发所述目标应用程序调用所述语音识别算法;
响应于所述目标应用程序的调用,加载所述更新包以得到更新后的所述语音识别算法,并采用更新后的所述语音识别算法进行语音识别。
作为本申请一方面的一种可能的实现方式,所述根据所述更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,包括:
在所述更新包涉及的更新内容为唤醒的情况下,向所述目标应用程序发送携带第一类型标识的算法更新消息;其中,所述第一类型标识,用于指示所述目标应用程序重启唤醒模块,以在重启过程中调用所述语音识别算法。
作为本申请一方面的另一种可能的实现方式,所述根据所述更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,包括:
在所述更新包涉及的更新内容为离线识别的情况下,向所述目标应用程序发送携带第二类型标识的算法更新消息;其中,所述第二类型标识,用于指示所述目标应用程序在采集到待识别语音的情况下,调用所述语音识别算法。
作为本申请一方面的另一种可能的实现方式,所述加载所述更新包以得到更新后的所述语音识别算法,包括:
加载所述更新包,以采用所述更新包更新当前版本的所述语音识别算法;
在所述更新包加载失败的情况下,重新加载所述更新包,直至达到重试次数上限;
在所述重试次数达到次数上限的情况下,回滚至所述当前版本的语音识别算法。
作为本申请一方面的另一种可能的实现方式,所述响应于所述目标应用程序的调用,加载所述更新包以得到更新后的所述语音识别算法,包括:
响应于所述目标应用程序的调用,查询版本状态信息;其中,所述版本状态信息,用于表征最近一次获取到所述更新包中携带的版本号;
将所述版本状态信息中的版本号对应的所述更新包,加载至当前版本的所述语音识别算法,以得到更新后的所述语音识别算法。
作为本申请一方面的另一种可能的实现方式,所述采用更新后的所述语音识别算法进行语音识别之后,还包括:
向所述服务器端发送版本优化信息;其中,所述版本优化信息,用于所述服务器端确定向所述语音SDK推送的所述语音识别算法的更新包;
所述版本优化信息,包括下列至少一种:所述语音识别算法的初始版本号、本次识别采用的版本号、最近一次获取到的更新包对应的版本号、本次识别采用的版本是否为更新后版本。
根据本申请的另一方面,提供了一种更新方法,所述方法包括:
向语音软件开发工具包SDK发送用于对语音识别算法进行更新的更新包;
其中,所述更新包,用于所述语音SDK根据所述更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发所述目标应用程序调用所述语音识别算法;以及,响应于所述目标应用程序的调用,加载所述更新包以得到更新后的所述语音识别算法,并采用更新后的所述语音识别算法进行语音识别。
作为本申请一方面的一种可能的实现方式,所述向语音软件开发工具包SDK发送用于对语音识别算法进行更新的更新包之前,还包括:
接收语音SDK发送的版本优化信息;所述版本优化信息,包括下列至少一种:所述语音识别算法的初始版本号、本次识别采用的版本号、最近一次获取到的更新包对应的版本号、本次识别采用的版本是否为更新后版本;
根据所述版本优化信息,确定向所述语音SDK推送的所述语音识别算法的更新包。
根据本申请的另一方面,提供了一种更新装置,所述装置包括:
获取模块,用于从服务器端获取用于对语音识别算法进行更新的更新包;
发送模块,用于根据所述更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发所述目标应用程序调用所述语音识别算法;
加载模块,用于响应于所述目标应用程序的调用,加载所述更新包以得到更新后的所述语音识别算法,并采用更新后的所述语音识别算法进行语音识别。
根据本申请的另一方面,提供了一种更新装置,所述方法包括:
发送模块,用于向语音软件开发工具包SDK发送用于对语音识别算法进行更新的更新包;
其中,所述更新包,用于所述语音SDK根据所述更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发所述目标应用程序调用所述语音识别算法;以及,响应于所述目标应用程序的调用,加载所述更新包以得到更新后的所述语音识别算法,并采用更新后的所述语音识别算法进行语音识别。
根据本申请的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的更新方法。
根据本申请的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行上述的更新方法。
根据本申请的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述的更新方法。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1为本申请实施例提供的一种更新方法的流程示意图;
图2为本申请实施例提供的另一种更新方法的流程示意图;
图3为本申请实施例提供的又一种更新算法的流程示意图;
图4为本申请实施例提供的一种用于更新语音识别算法的子流程示意图;
图5为本申请实施例提供的又一种更新方法的流程示意图;
图6为本申请实施例提供的又一种更新方法的流程示意图;
图7为本申请实施例提供的一种更新方法的交互图;
图8为本申请实施例提出的一种更新装置的结构示意图;
图9为本申请实施例提供的另一种更新装置的结构示意图;
图10是用来实现本申请实施例的更新方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
相关技术中,智能设备的算法模块升级方案是,首先将经过实验室声学及工程化测试通过的算法模型及引擎,集成更新至设备端应用程序(Application,APP)软件中,然后借助设备端软件OTA技术,升级前,设备端上报OTA模块当前版本信息。OTA控制台通过添加APP升级包对设备发送OTA升级请求,下发升级包URL(Uniform Resource Locator,统一资源定位符)给设备端。设备端通过HTTPS(Hypertext Transfer Protocol Secure,超文本传输安全协议)协议从URL下载升级包并上报升级进度信息,设备端完成OTA升级后,上报最新版本。由此,通过整体APP升级,实现其中算法方案的更新。
但是,现有的算法升级方案存在软件升级链路较长,测试成本高,周期长,设备软件OTA支持设备维度算法更新的多样性较差,无法较好支持千人千面,等等。
针对现有的算法升级方案中存在的技术问题,本申请提出了一种更新方法,具体实现方案如下:语音SDK从服务器端获取到用于对语音识别算法进行更新的更新包后,根据更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发目标应用程序调用语音识别算法,响应于目标应用程序的调用,加载更新包以得到更新后的语音识别算法,并采用更新后的语音识别算法进行语音识别。
其中,SDK(Software Development Kit,软件开发工具包),一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。
本申请中的语音SDK可以用于语音识别,语音合成,语音识别算法更新等等。
下面参考附图描述本申请实施例的更新方法、装置、设备及存储介质。
图1为本申请实施例提供的一种更新方法的流程示意图。
本申请实施例以该更新方法被配置于更新装置中来举例说明,该更新装置可以应用于任一电子设备中,以使该电子设备可以执行更新功能。
其中,电子设备可以为个人电脑(Personal Computer,简称PC)、云端设备、移动设备等,移动设备例如可以为手机、平板电脑、个人数字助理、穿戴式设备、车载设备等具有各种操作系统的硬件设备。
如图1所示,该更新方法,由语音软件开发工具包SDK执行,可以包括以下步骤:
步骤101,从服务器端获取用于对语音识别算法进行更新的更新包。
本申请中在服务器端对所有待升级更新的语音识别算法进行管理,服务器端存储有用于对语音识别算法进行更新的更新包。
例如,服务器端可以存储有所有待升级更新的语音识别算法名称、资源名、引擎信息、发布渠道、终端平台及设备信息,并且服务器端需要保证所有算法版本映射的正确性、唯一性及可升级性。
如,待升级更新的语音识别算法的算法名为offline_asr,资源名为offline_asr_res_new.dat,引擎名为offline_asr_engine_new.so,资源版本号为1.0,引擎版本号为1.0,平台为Android/linux/IOS,适用于所有设备,发布渠道为车载,等等。
本申请实施例中,语音SDK可以通过定时任务,如每隔30分钟,以HTTP短连接方式查询服务器端是否有用于对语音识别算法进行更新的更新包,确定服务器端存储有用于对语音识别算法进行更新的更新包后,可以向服务器端发送下载请求,服务器端将用于对语音识别算法进行更新的更新包发送至语音SDK,以使得语音SDK从服务器端获取到用于对语音识别算法进行更新的更新包。
在一种可能的情况下,语音SDK可以定时向服务器端发送更新包获取请求,服务器端接收到语音SDK发送的更新包获取请求后,可以将用于对语音识别算法进行更新的更新包发送至语音SDK,以使得语音SDK从服务器端获取到用于对语音识别算法进行更新的更新包。
步骤102,根据更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发目标应用程序调用语音识别算法。
其中,目标应用程序,是指语音识别算法待更新的应用程序。例如,目标应用程序可以为用于语音交互的应用程序,如导航类APP,教育类APP,等等。
本申请中,算法更新消息,可以包括更新类型,如目标应用程序的唤醒或语音识别,当前语音识别算法的版本号,版本的下载地址信息的校验信息,等等。
本申请实施例中,语音SDK从服务器端获取到用于对语音识别算法进行更新的更新包后,每一次获取到的更新包中涉及的更新内容可能存在差异,从而可以根据更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发目标应用程序调用语音识别算法。
在一种可能的情况下,在语音SDK获取到用于对语音识别算法进行更新的更新包涉及的更新内容为唤醒的情况下,可以向目标应用程序发送算法更新消息,使得目标应用程序重启唤醒模块,以在重启过程中调用语音识别算法。
在另一种可能的情况下,在语音SDK获取到用于对语音识别算法进行更新的更新包涉及的更新内容为离线识别的情况下,可以向目标应用程序发送算法更新消息,使得目标应用程序在采集到待识别语音的情况下,调用语音识别算法。
步骤103,响应于目标应用程序的调用,加载更新包以得到更新后的语音识别算法,并采用更新后的语音识别算法进行语音识别。
本申请实施例中,触发目标应用程序调用语音识别算法后,响应于目标应用程序的调用,语音SDK加载更新包以得到更新后的语音识别算法,并采用更新后的语音识别算法进行语音识别。
可以理解的是,目标应用程序每一次采用语音识别算法进行语音识别时,需要加载更新包得到更新后的语音识别算法,以采用更新后的语音识别算法进行语音识别。
本申请实施例的更新方法,由语音软件开发工具包SDK执行,语音SDK从服务器端获取到用于对语音识别算法进行更新的更新包后,根据更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发目标应用程序调用语音识别算法,响应于目标应用程序的调用,加载更新包以得到更新后的语音识别算法,并采用更新后的语音识别算法进行语音识别。相较于现有技术中通过对应用程序进行升级以实现算法更新,存在更新周期长,错误率高等问题,本申请中通过设置语音SDK,由语音SDK触发应用程序调用语音识别算法,从而加载更新包进行语音识别算法的更新,无需对应用程序进行升级,即可实现对算法的更新,有利于提高算法更新的速度。
在实际的使用场景中,目标应用程序可以采用语音识别算法进行应用程序的唤醒、识别、合成等场景下的语音识别,在语音SDK从服务器端获取到用于对语音识别算法进行更新的更新包后,可以根据更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以实现更新语音识别算法。下面结合图2对上述过程进行详细介绍,图2为本申请实施例提供的另一种更新方法的流程示意图。
如图2所示,该更新方法可以包括以下步骤:
步骤201,从服务器端获取用于对语音识别算法进行更新的更新包。
本申请实施例中,步骤201的实现过程,可以参见上述实施例中步骤101的实现过程,在此不再赘述。
步骤202,在更新包涉及的更新内容为唤醒的情况下,向目标应用程序发送携带第一类型标识的算法更新消息。
其中,第一类型标识,用于指示目标应用程序重启唤醒模块,以在重启过程中调用语音识别算法。
在一种可能的情况下,更新包中涉及的更新内容为对目标应用程序进行唤醒的语音识别算法时,可以向目标应用程序发送携带有第一类型标识的算法更新消息,以使得目标应用程序接收到算法更新消息后,重启唤醒模块,以在重启过程中调用语音识别算法。由此,无需对目标应用程序进行升级,即可实现对目标应用程序唤醒时的语音识别算法进行更新,从而有利于提高目标应用程序在语音唤醒时的语音识别的准确度。
步骤203,在更新包涉及的更新内容为离线识别的情况下,向目标应用程序发送携带第二类型标识的算法更新消息。
其中,第二类型标识,用于指示目标应用程序在采集到待识别语音的情况下,调用语音识别算法。
在另一种可能的情况下,更新包中涉及的更新内容为离线识别的情况下时,可以向目标应用程序发送携带有第二类型标识的算法更新消息,以使得目标应用程序接收到算法更新消息后,在采集到待识别语音的情况下,调用语音识别算法。
可以理解为,在目标应用程序每次采集到待识别语音的情况下,可以调用语音识别算法,以响应于目标应用程序的调用,加载更新包以得到更新后的语音识别算法,并采用更新后的语音识别算法进行语音识别。由此,目标应用程序在不停机的状态实现了语音识别算法的更新,进一步地优化了语音交互体验。
需要说明的是,上述步骤202和步骤203并不是顺序执行过程,而是根据更新包涉及的更新内容是否处于唤醒状态确定执行步骤202,或者,执行步骤203。
步骤204,响应于目标应用程序的调用,加载更新包以得到更新后的语音识别算法,并采用更新后的语音识别算法进行语音识别。
本申请实施例中,步骤204的实现过程,可以参见上述实施例中步骤103的实现过程,在此不再赘述。
本申请实施例的更新方法,在语音SDK从服务器端获取用于对语音识别算法进行更新的更新包后,在更新包涉及的更新内容为唤醒的情况下,向目标应用程序发送携带第一类型标识的算法更新消息,在更新包涉及的更新内容为离线识别的情况下,向目标应用程序发送携带第二类型标识的算法更新消息,响应于目标应用程序的调用,加载更新包以得到更新后的语音识别算法,并采用更新后的语音识别算法进行语音识别。由此,基于语音SDK获取到的更新包涉及的更新内容,触发应用程序在不同状态下调用对应的语音识别算法,从而加载更新包进行算法更新,无需对应用程序进行升级,即可实现对算法的更新。
在上述实施例的基础上,在上述步骤103或者步骤204中,加载更新包以得到更新后的语音识别算法时,可以多次加载更新包直至达到重试次数上限,在重复次数达到次数上限的情况下,更新包加载识别,则回滚到当前版本的语音识别算法。下面结合图3对上述过程进行详细介绍,图3为本申请实施例提供的又一种更新算法的流程示意图。
如图3所示,上述步骤103或步骤204,还可以包括以下子步骤:
步骤301,加载更新包,以采用更新包更新当前版本的语音识别算法。
其中,当前版本的语音识别算法,是指语音SDK加载更新包之前,目标应用程序进行语音识别时采用的语音识别算法。
本申请实施例中,在目标应用程序根据算法更新消息,调用语音识别算法时,语音SDK可以加载更新包,以采用更新包对目标应用程序当前版本的语音识别算法进行更新。
步骤302,在更新包加载失败的情况下,重新加载更新包,直至达到重试次数上限。
在一种可能的情况下,语音SDK成功加载更新包,得到更新后的语音识别算法,进而,可以采用更新后的语音识别算法进行语音识别。
在另一种可能的情况下,语音SDK加载更新包存在加载失败的情况时,语音SDK可以重新加载更新包,直至达到重试次数上限。
其中,重试次数上限为重新加载更新包的次数的最大值。例如,重试次数上限可以为3次。具体的重试次数上限可以根据需求设定,本申请中在此不做限定。
步骤303,在重试次数达到次数上限的情况下,回滚至当前版本的语音识别算法。
其中,回滚指的是程序或数据处理错误,将程序或数据恢复到上一次正确状态的行为。回滚包括程序回滚和数据回滚等类型。本申请中是对语音识别算法进行回滚。
本申请实施例中,语音SDK加载更新包失败的情况下,重新加载更新包,直至重试次数达到次数上限的情况下,未成功加载更新包,则回滚到当前版本的语音识别算法。
作为一种示例,假设重试次数上限为3次,在语音SDK加载更新包失败的情况下,重新加载更新包的重试次数达到3次仍未加载成功,则回滚到当前版本的语音识别算法。
可以理解的是,在语音SDK加载更新包时,保存当前版本的语音识别算法,在更新包加载失败的情况下,重新加载更新包的重试次数达到次数上限时,回滚到当前版本的语音识别算法。由此,确保了语音SDK加载更新包失败时,还可以采用初始的语音识别算法进行语音识别,从而避免了算法更新识别时无法进行语音识别的情况。
在实际的语音识别算法更新时,可以根据语音识别算法的版本号对应的更新包进行算法更新,下面结合图4对上述过程进行详细介绍,图4为本申请实施例提供的一种用于更新语音识别算法的子流程示意图。
如图4所示,上述步骤103或者步骤204,还可以包括以下步骤:
步骤401,响应于目标应用程序的调用,查询版本状态信息。
其中,版本状态信息,用于表征最近一次获取到更新包中携带的版本号。
可以理解为,语音SDK可以定时从服务器端获取用于对语音识别算法进行更新的更新包,在语音SDK触发目标应用程序调用语音识别算法时,响应于目标应用程序的调用,可以查询最近一次获取到更新包中携带的版本号。
步骤402,将版本状态信息中的版本号对应的更新包,加载至当前版本的语音识别算法,以得到更新后的语音识别算法。
本申请实施例中,语音SDK查询版本状态信息,确定最近一次获取到更新包中携带的版本号为最新算法版本号时,可以将该版本号对应的更新包,加载至当前版本的语音识别算法,以得到更新后的语音识别算法。
作为一种示例,假设查询版本状态信息确定最近一次获取到更新包中携带的版本号为1.0,且该版本号为最新算法版本号,则可以将版本号为1.0对应的更新包加载至当前版本的语音识别算法,以得到更新后的语音识别算法。
由此,语音SDK响应于目标应用程序的调用,查询版本状态信息,进一步地,将版本状态信息中的版本号对应的更新包,加载至当前版本的语音识别算法,以得到更新后的语音识别算法。由此,通过语音SDK查询最近一次获取到的更新包中携带的版本号,以将更新包加载至当前版本的语音识别算法,从而实现了对语音识别算法进行更新。
在上述实施例的基础上,在采用更新后的语音识别算法进行语音识别后,还可以定期向服务器端发送版本优化信息,以使得服务器端接收到版本优化信息后,根据版本优化信息确定向语音SDK推送的语音识别算法的更新包。由此,使得服务器端对接收到的版本优化信息进行统计,并根据版本优化信息对向语音SDK推送的语音识别算法的策略进行优化。
其中,版本优化信息,包括下列至少一种:语音识别算法的初始版本号、本次识别采用的版本号、最近一次获取到的更新包对应的版本号、本次识别采用的版本是否为更新后版本。
作为一种可能的情况,假设语音SDK向服务器端发送的版本优化信息中包含有:语音识别算法的初始版本号、本次识别采用的版本号、最近一次获取到的更新包对应的版本号、本次识别采用的版本不为更新后版本。服务器端获取到版本优化信息后,可以根据版本优化信息确定向语音SDK推送的语音识别算法的更新包。
为了实现上述实施例,本申请提供的另一种更新方法。
图5为本申请实施例提供的又一种更新方法的流程示意图。
如图5所示,该更新方法由服务器端执行,可以包括以下步骤:
步骤501,向语音软件开发工具包SDK发送用于对语音识别算法进行更新的更新包。
其中,更新包,用于语音SDK根据更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发目标应用程序调用语音识别算法;以及,响应于目标应用程序的调用,加载更新包以得到更新后的语音识别算法,并采用更新后的语音识别算法进行语音识别。
本申请实施例中,服务器端可以对所有待升级更新的语音识别算法进行管理,并且服务器端存储有用于对语音识别算法进行更新的更新包。
在一种可能的情况下,语音SDK可以定时向服务器端发送更新包获取请求,服务器端接收到语音SDK发送的更新包获取请求后,可以向语音SDK发送用于对语音识别算法进行更新的更新包。
在另一种可能的情况下,语音SDK可以定期查询服务器端是否有用于对语音识别算法进行更新的更新包,确定服务器端存储有用于对语音识别算法进行更新的更新包后,服务器向语音SDK发送用于对语音识别算法进行更新的更新包。
本申请实施例中,语音SDK从服务器端获取到用于对语音识别算法进行更新的更新包后,每一次获取到的更新包中涉及的更新内容可能存在差异,从而可以根据更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发目标应用程序调用语音识别算法。
在一种可能的情况下,在语音SDK获取到用于对语音识别算法进行更新的更新包涉及的更新内容为唤醒的情况下,可以向目标应用程序发送算法更新消息,使得目标应用程序重启唤醒模块,以在重启过程中调用语音识别算法。
在另一种可能的情况下,在语音SDK获取到用于对语音识别算法进行更新的更新包涉及的更新内容为离线识别的情况下,可以向目标应用程序发送算法更新消息,使得目标应用程序在采集到待识别语音的情况下,调用语音识别算法。
本申请实施例中,触发目标应用程序调用语音识别算法后,响应于目标应用程序的调用,语音SDK加载更新包以得到更新后的语音识别算法,并采用更新后的语音识别算法进行语音识别。
作为一种可能的情况,在语音SDK加载更新包以得到更新后的语音识别算法时,在更新包加载失败的情况下,可以重新加载更新包直至达到重试次数上限。在重试次数达到次数上限的情况下更新包仍然加载失败,则回滚到当前版本的语音识别算法。
本申请实施例中,在语音SDK加载更新包以得到更新后的语音识别算法时,可以响应于目标应用程序的调用,查询版本状态信息,确定版本状态信息为最近一次获取到更新包中携带的版本号时,将版本状态信息中的版本号对应的更新包加载至当前版本的语音识别算法,以得到更新后的语音识别算法。
本申请实施例的更新方法,通过服务器端向语音SDK发送用于对语音识别算法进行更新的更新包,以使得语音SDK根据更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发目标应用程序调用语音识别算法;以及,响应于目标应用程序的调用,加载更新包以得到更新后的所述语音识别算法,并采用更新后的语音识别算法进行语音识别。由此,通过设置语音SDK,由语音SDK触发应用程序调用算法,从而加载更新包进行算法更新,无需对应用程序进行升级,即可实现对算法的更新。
在上述实施例的基础上,作为一种可能的情况,语音SDK可以向服务器端发送版本优化信息,以使得服务器端根据接收到的版本优化信息确定向语音SDK推送的语音识别算法的更新包,进而,根据向语音SDK发送用于对语音识别算法进行更新的更新包。下面结合图6对上述过程进行详细介绍,图6为本申请实施例提供的又一种更新方法的流程示意图。
如图6所示,该更新方法,可以包括以下步骤:
步骤601,接收语音SDK发送的版本优化信息。
其中,版本优化信息,包括下列至少一种:语音识别算法的初始版本号、本次识别采用的版本号、最近一次获取到的更新包对应的版本号、本次识别采用的版本是否为更新后版本。
一方面,服务器端接收到语音SDK发送的版本优化信息后,可以根据版本优化信息对语音识别算法的更新包进行存储和管理。
另一方面,服务器端接收到语音SDK发送的版本优化信息后,可以根据版本优化信息实时监控目标应用程序的语音识别算法的热更新状态。
又一方面,服务器端接收到语音SDK发送的版本优化信息后,还可以根据版本优化信息向语音SDK推送优化的更新策略。
步骤602,根据版本优化信息,确定向语音SDK推送的语音识别算法的更新包。
本申请实施例中,服务器端接收到SDK发送的版本优化信息后,可以根据版本优化信息,确定向语音SDK推送最优的语音识别算法的更新包。
在一种可能的情况下,服务器端接收到SDK发送的版本优化信息后,若确定最近一次获取到的更新包对应的版本号并非最新版本的更新包,则可以向语音SDK推送最新版本的语音识别算法的更新包。
可以理解的是,服务器端获取到语音SDK发送的版本优化信息后,可以根据版本优化信息中包含的语音识别算法的初始版本号、本次识别采用的版本号、最近一次获取到的更新包对应的版本号、本次识别采用的版本是否为更新后版本等信息,向语音SDK推送通用或者个性化的语音设备算法的更新包。
步骤603,向语音SDK发送用于对语音识别算法进行更新的更新包。
本申请实施例中,步骤603的实现过程,可以参见上述实施例中步骤501的实现过程,在此不再赘述。
本申请实施例的更新方法,在服务器端接收到语音SDK发送的版本优化信息后,根据版本优化信息,确定向语音SDK推送的语音识别算法的更新包,进而,向语音SDK发送用于对语音识别算法进行更新的更新包。由此,实现了向语音SDK推送通用或者个性化的语音识别算法的更新包,可以更好的支持设备以及用户维度。
作为一种示例,参见图7,图7为本申请实施例提供的一种更新方法的交互图。
如图7所示,该更新方法,可以包括以下步骤:
步骤701,语音SDK向服务器端发送版本优化信息。
其中,版本优化信息,可以包括下列至少一种:语音识别算法的初始版本号、本次识别采用的版本号、最近一次获取到的更新包对应的版本号、本次识别采用的版本是否为更新后版本。
步骤702,服务器端接收到语音SDK发送的版本优化信息后,根据版本优化信息,确定向语音SDK推送的语音识别算法的更新包。
步骤703,服务器端向语音SDK发送用于对语音识别算法进行更新的更新包。
步骤704,语音SDK接收到服务器端发送的用于对语音识别算法进行更新的更新包后,根据更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息。
步骤705,目标应用程序根据算法更新消息调用语音识别算法。
步骤706,语音SDK响应于目标应用程序的调用,加载更新包以得到更新后的语音识别算法,并采用更新后的语音识别算法进行语音识别。
需要说明的是,上述步骤701至步骤706的实现过程,可以参见上述实施例的实现过程,在此不再赘述。
为了实现上述实施例,本申请提出了一种更新装置。
图8为本申请实施例提出的一种更新装置的结构示意图。
如图8所示,该更新装置800,可以包括:获取模块810、发送模块820以及加载模块830。
其中,获取模块810,用于从服务器端获取用于对语音识别算法进行更新的更新包。
发送模块820,用于根据更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发目标应用程序调用语音识别算法;
加载模块830,用于响应于目标应用程序的调用,加载更新包以得到更新后的语音识别算法,并采用更新后的语音识别算法进行语音识别。
作为一种可能的情况,发送模块820,还可以用于:在更新包涉及的更新内容为唤醒的情况下,向目标应用程序发送携带第一类型标识的算法更新消息;其中,第一类型标识,用于指示目标应用程序重启唤醒模块,以在重启过程中调用语音识别算法。
作为另一种可能的情况,发送模块820,还可以用于:在更新包涉及的更新内容为离线识别的情况下,向目标应用程序发送携带第二类型标识的算法更新消息;其中,第二类型标识,用于指示目标应用程序在采集到待识别语音的情况下,调用语音识别算法。
作为另一种可能的情况,加载模块830,还可以用于:加载更新包,以采用更新包更新当前版本的语音识别算法;在更新包加载失败的情况下,重新加载更新包,直至达到重试次数上限;在重试次数达到次数上限的情况下,回滚至当前版本的语音识别算法。
作为另一种可能的情况,加载模块830,还可以用于:响应于目标应用程序的调用,查询版本状态信息;其中,版本状态信息,用于表征最近一次获取到更新包中携带的版本号;将版本状态信息中的版本号对应的更新包,加载至当前版本的语音识别算法,以得到更新后的语音识别算法。
作为另一种可能的情况,该更新装置800,还可以包括:
优化信息发送模块,用于向服务器端发送版本优化信息;其中,版本优化信息,用于服务器端确定向语音SDK推送的语音识别算法的更新包;
版本优化信息,包括下列至少一种:语音识别算法的初始版本号、本次识别采用的版本号、最近一次获取到的更新包对应的版本号、本次识别采用的版本是否为更新后版本。
需要说明的是,前述对更新方法实施例的解释说明也适用于该实施例的更新装置,此处不再赘述。
本申请实施例的更新装置,通过语音SDK从服务器端获取到用于对语音识别算法进行更新的更新包后,根据更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发目标应用程序调用语音识别算法,响应于目标应用程序的调用,加载更新包以得到更新后的语音识别算法,并采用更新后的语音识别算法进行语音识别。相较于现有技术中通过对应用程序进行升级以实现算法更新,存在更新周期长,错误率高等缺点,本申请中通过设置语音SDK,由语音SDK触发应用程序调用语音识别算法,从而加载更新包进行语音识别算法的更新,无需对应用程序进行升级,即可实现对算法的更新,有利于提高算法更新的速度。
为了实现上述实施例,本申请公开了另一种更新装置。
图9为本申请实施例提供的另一种更新装置的结构示意图。
如图9所示,该更新装置900,可以包括:发送模块910。
发送模块910,用于向语音软件开发工具包SDK发送用于对语音识别算法进行更新的更新包;其中,更新包,用于语音SDK根据更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发目标应用程序调用语音识别算法;以及,响应于目标应用程序的调用,加载更新包以得到更新后的语音识别算法,并采用更新后的语音识别算法进行语音识别。
作为一种可能的情况,该更新装置900,还可以包括:
接收模块,用于接收语音SDK发送的版本优化信息;版本优化信息,包括下列至少一种:语音识别算法的初始版本号、本次识别采用的版本号、最近一次获取到的更新包对应的版本号、本次识别采用的版本是否为更新后版本;
确定模块,用于根据版本优化信息,确定向语音SDK推送的语音识别算法的更新包。
需要说明的是,前述对更新方法实施例的解释说明也适用于该实施例的更新装置,此处不再赘述。
本申请实施例的更新装置,通过服务器端向语音SDK发送用于对语音识别算法进行更新的更新包,以使得语音SDK根据更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发目标应用程序调用语音识别算法;以及,响应于目标应用程序的调用,加载更新包以得到更新后的所述语音识别算法,并采用更新后的语音识别算法进行语音识别。由此,通过设置语音SDK,由语音SDK触发应用程序调用算法,从而加载更新包进行算法更新,无需对应用程序进行升级,即可实现对算法的更新。
为了实现上述实施例,本申请提出了一种电子设备,包括至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述实施例中所述的更新方法。
为了实现上述实施例,本申请提出了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行上述实施例中所述的更新方法。
为了实现上述实施例,本申请提出了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述实施例中所述的更新方法。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图10所示,是用了实现本申请实施例的更新方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图10所示,该电子设备包括:一个或多个处理器1001、存储器1002,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图10中以一个处理器1001为例。
存储器1002即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的更新方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的更新方法。
存储器1002作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的更新方法对应的程序指令/模块(例如,附图8所示的获取模块810、发送模块820以及加载模块830,或者,附图9所示的发送模块910)。处理器1001通过运行存储在存储器1002中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的更新方法。
存储器1002可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器1002可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器1002可选包括相对于处理器1001远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
更新方法的电子设备还可以包括:输入装置1003和输出装置1004。处理器1001、存储器1002、输入装置1003和输出装置1004可以通过总线或者其他方式连接,图10中以通过总线连接为例。
输入装置1003可接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置1004可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、互联网和区块链网络。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与虚拟专用服务器(Virtual Private Server,VPS)中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
根据本申请实施例的技术方案,通过服务器端向语音SDK发送用于对语音识别算法进行更新的更新包,以使得语音SDK根据更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发目标应用程序调用语音识别算法;以及,响应于目标应用程序的调用,加载更新包以得到更新后的所述语音识别算法,并采用更新后的语音识别算法进行语音识别。由此,通过设置语音SDK,由语音SDK触发应用程序调用算法,从而加载更新包进行算法更新,无需对应用程序进行升级,即可实现对算法的更新。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (17)
1.一种更新方法,所述方法应用于语音SDK,所述方法包括:
从服务器端获取用于对语音识别算法进行更新的更新包;
根据所述更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发所述目标应用程序调用所述语音识别算法,其中,所述更新包涉及的更新内容包括离线识别;
响应于所述目标应用程序的调用,加载所述更新包以得到更新后的所述语音识别算法,并采用更新后的所述语音识别算法进行语音识别;
所述采用更新后的所述语音识别算法进行语音识别之后,还包括:
定期向所述服务器端发送版本优化信息;其中,所述版本优化信息,用于所述服务器端确定向所述语音SDK推送的所述语音识别算法的更新包;
所述版本优化信息,包括下列至少一种:所述语音识别算法的初始版本号、本次识别采用的版本号、最近一次获取到的更新包对应的版本号、本次识别采用的版本是否为更新后版本。
2.根据权利要求1所述的更新方法,其中,所述根据所述更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,包括:
在所述更新包涉及的更新内容为唤醒的情况下,向所述目标应用程序发送携带第一类型标识的算法更新消息;其中,所述第一类型标识,用于指示所述目标应用程序重启唤醒模块,以在重启过程中调用所述语音识别算法。
3.根据权利要求2所述的更新方法,其中,所述根据所述更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,包括:
在所述更新包涉及的更新内容为离线识别的情况下,向所述目标应用程序发送携带第二类型标识的算法更新消息;其中,所述第二类型标识,用于指示所述目标应用程序在采集到待识别语音的情况下,调用所述语音识别算法。
4.根据权利要求1-3任一项所述的更新方法,其中,所述响应于所述目标应用程序的调用,加载所述更新包以得到更新后的所述语音识别算法,包括:
加载所述更新包,以采用所述更新包更新当前版本的所述语音识别算法;
在所述更新包加载失败的情况下,重新加载所述更新包,直至达到重试次数上限;
在所述重试次数达到次数上限的情况下,回滚至所述当前版本的语音识别算法。
5.根据权利要求1-3任一项所述的更新方法,其中,所述响应于所述目标应用程序的调用,加载所述更新包以得到更新后的所述语音识别算法,包括:
响应于所述目标应用程序的调用,查询版本状态信息;其中,所述版本状态信息,用于表征最近一次获取到所述更新包中携带的版本号;
将所述版本状态信息中的版本号对应的所述更新包,加载至当前版本的所述语音识别算法,以得到更新后的所述语音识别算法。
6.一种更新方法,所述方法包括:
向语音SDK发送用于对语音识别算法进行更新的更新包;
其中,所述更新包,用于所述语音SDK根据所述更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发所述目标应用程序调用所述语音识别算法;以及,响应于所述目标应用程序的调用,加载所述更新包以得到更新后的所述语音识别算法,并采用更新后的所述语音识别算法进行语音识别,其中,所述更新包涉及的更新内容包括离线识别;
所述采用更新后的所述语音识别算法进行语音识别之后,还包括:
定期向服务器端发送版本优化信息;其中,所述版本优化信息,用于所述服务器端确定向所述语音SDK推送的所述语音识别算法的更新包;
所述版本优化信息,包括下列至少一种:所述语音识别算法的初始版本号、本次识别采用的版本号、最近一次获取到的更新包对应的版本号、本次识别采用的版本是否为更新后版本。
7.根据权利要求6所述的更新方法,其中,所述向语音SDK发送用于对语音识别算法进行更新的更新包之前,还包括:
接收语音SDK发送的版本优化信息;所述版本优化信息,包括下列至少一种:所述语音识别算法的初始版本号、本次识别采用的版本号、最近一次获取到的更新包对应的版本号、本次识别采用的版本是否为更新后版本;
根据所述版本优化信息,确定向所述语音SDK推送的所述语音识别算法的更新包。
8.一种更新装置,所述装置为语音SDK,所述装置包括:
获取模块,用于从服务器端获取用于对语音识别算法进行更新的更新包;
发送模块,用于根据所述更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发所述目标应用程序调用所述语音识别算法,其中,所述更新包涉及的更新内容包括离线识别;
加载模块,用于响应于所述目标应用程序的调用,加载所述更新包以得到更新后的所述语音识别算法,并采用更新后的所述语音识别算法进行语音识别;
优化信息发送模块,用于定期向所述服务器端发送版本优化信息;其中,所述版本优化信息,用于所述服务器端确定向所述语音SDK推送的所述语音识别算法的更新包;所述版本优化信息,包括下列至少一种:所述语音识别算法的初始版本号、本次识别采用的版本号、最近一次获取到的更新包对应的版本号、本次识别采用的版本是否为更新后版本。
9.根据权利要求8所述的更新装置,其中,所述发送模块,还用于:
在所述更新包涉及的更新内容为唤醒的情况下,向所述目标应用程序发送携带第一类型标识的算法更新消息;其中,所述第一类型标识,用于指示所述目标应用程序重启唤醒模块,以在重启过程中调用所述语音识别算法。
10.根据权利要求9所述的更新装置,其中,所述发送模块,还用于:
在所述更新包涉及的更新内容为离线识别的情况下,向所述目标应用程序发送携带第二类型标识的算法更新消息;其中,所述第二类型标识,用于指示所述目标应用程序在采集到待识别语音的情况下,调用所述语音识别算法。
11.根据权利要求8-10任一项所述的更新装置,其中,所述加载模块,还用于:
加载所述更新包,以采用所述更新包更新当前版本的所述语音识别算法;
在所述更新包加载失败的情况下,重新加载所述更新包,直至达到重试次数上限;
在所述重试次数达到次数上限的情况下,回滚至所述当前版本的语音识别算法。
12.根据权利要求8-10任一项所述的更新装置,其中,所述加载模块,还用于:
响应于所述目标应用程序的调用,查询版本状态信息;其中,所述版本状态信息,用于表征最近一次获取到所述更新包中携带的版本号;
将所述版本状态信息中的版本号对应的所述更新包,加载至当前版本的所述语音识别算法,以得到更新后的所述语音识别算法。
13.一种更新装置,所述装置包括:
发送模块,用于向语音SDK发送用于对语音识别算法进行更新的更新包;
其中,所述更新包,用于所述语音SDK根据所述更新包涉及的更新内容,向目标应用程序发送对应的算法更新消息,以触发所述目标应用程序调用所述语音识别算法;以及,响应于所述目标应用程序的调用,加载所述更新包以得到更新后的所述语音识别算法,并采用更新后的所述语音识别算法进行语音识别,其中,所述更新包涉及的更新内容包括离线识别;
所述采用更新后的所述语音识别算法进行语音识别之后,还包括:
定期向服务器端发送版本优化信息;其中,所述版本优化信息,用于所述服务器端确定向所述语音SDK推送的所述语音识别算法的更新包;
所述版本优化信息,包括下列至少一种:所述语音识别算法的初始版本号、本次识别采用的版本号、最近一次获取到的更新包对应的版本号、本次识别采用的版本是否为更新后版本。
14.根据权利要求13所述的更新装置,其中,所述装置,还包括:
接收模块,用于接收语音SDK发送的版本优化信息;所述版本优化信息,包括下列至少一种:所述语音识别算法的初始版本号、本次识别采用的版本号、最近一次获取到的更新包对应的版本号、本次识别采用的版本是否为更新后版本;
确定模块,用于根据所述版本优化信息,确定向所述语音SDK推送的所述语音识别算法的更新包。
15.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的更新方法,或者,权利要求6-7中任一项所述的更新方法。
16.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行权利要求1-5中任一项所述的更新方法,或者,权利要求6-7中任一项所述的更新方法。
17.一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现权利要求1-5中任一项所述的更新方法,或者,权利要求6-7中任一项所述的更新方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011405311.8A CN112667255B (zh) | 2020-12-02 | 2020-12-02 | 更新方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011405311.8A CN112667255B (zh) | 2020-12-02 | 2020-12-02 | 更新方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112667255A CN112667255A (zh) | 2021-04-16 |
CN112667255B true CN112667255B (zh) | 2022-03-29 |
Family
ID=75401052
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011405311.8A Active CN112667255B (zh) | 2020-12-02 | 2020-12-02 | 更新方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112667255B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115473805B (zh) * | 2022-07-29 | 2024-04-19 | 青岛海尔科技有限公司 | 设备的更新方法和装置、存储介质及电子装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102015211101A1 (de) * | 2015-06-17 | 2016-12-22 | Volkswagen Aktiengesellschaft | Spracherkennungssystem sowie Verfahren zum Betreiben eines Spracherkennungssystems mit einer mobilen Einheit und einem externen Server |
CN110277089B (zh) * | 2019-07-09 | 2021-05-25 | 广东美的制冷设备有限公司 | 离线语音识别模型的更新方法、家用电器和服务器 |
CN111078266A (zh) * | 2019-12-26 | 2020-04-28 | 苏州思必驰信息科技有限公司 | 低耦合增量升级语音软件的客户端处理方法及装置、服务端处理方法 |
CN111464977B (zh) * | 2020-06-18 | 2020-10-02 | 华人运通(上海)新能源驱动技术有限公司 | 语音场景更新方法、装置、终端、服务器和系统 |
-
2020
- 2020-12-02 CN CN202011405311.8A patent/CN112667255B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112667255A (zh) | 2021-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113687853B (zh) | 车辆升级控制方法及计算机存储介质 | |
CN110765024A (zh) | 模拟测试方法、装置、电子设备和计算机可读存储介质 | |
EP2864873B1 (en) | Auto-update while running a client software application with update handshake between versions and runtime validation of the successor version | |
CN112073994A (zh) | 用于空中升级的方法、装置、电子设备及可读存储介质 | |
CN107786430B (zh) | 机器人聊天方法及系统 | |
CN110727557A (zh) | 日志采集器的管控方法、平台、电子设备及存储介质 | |
CN109828830B (zh) | 用于管理容器的方法和装置 | |
CN112925651A (zh) | 应用资源部署方法、装置、电子设备和介质 | |
CN114091672B (zh) | 分布式模型推理方法及装置、电子设备和介质 | |
US10554726B1 (en) | Remote device drivers for internet-connectable devices | |
CN111885114B (zh) | 网关中的应用程序接口模块的升级方法、设备及存储介质 | |
CN109634659A (zh) | 一种对bmc进行控制的方法、装置、设备以及存储介质 | |
CN112732312A (zh) | 用于更新应用程序的方法及装置、电子设备和介质 | |
CN112667255B (zh) | 更新方法、装置、电子设备及存储介质 | |
CN110661851A (zh) | 数据交换方法和装置 | |
CN109408104B (zh) | 一种获取游戏整合信息的方法及装置 | |
CN111679842B (zh) | 应用程序热更新处理方法、装置及系统 | |
CN115357493A (zh) | 测试方法、装置、电子设备和存储介质 | |
US20220276901A1 (en) | Batch processing management | |
CN114610446A (zh) | 一种自动注入探针的方法、装置及系统 | |
CN111782445B (zh) | 设备调试环境的配置方法和装置 | |
CN113868531A (zh) | 信息采集方法及装置、电子设备和介质 | |
CN114489715A (zh) | 一种云手机的操作系统升级方法、装置、设备和介质 | |
CN109101253B (zh) | 云计算系统中主机的管理方法和装置 | |
JP2021140781A (ja) | ソースチャネル決定方法、装置、機器、プログラム及びコンピューター記憶媒体 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |