CN114911507B - 一种算法包的更新方法及设备 - Google Patents
一种算法包的更新方法及设备 Download PDFInfo
- Publication number
- CN114911507B CN114911507B CN202210828870.2A CN202210828870A CN114911507B CN 114911507 B CN114911507 B CN 114911507B CN 202210828870 A CN202210828870 A CN 202210828870A CN 114911507 B CN114911507 B CN 114911507B
- Authority
- CN
- China
- Prior art keywords
- algorithm
- package
- component
- model
- algorithm model
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种算法包的更新方法及设备,通过对算法包的结构进行设计,使得各种算法组件组成算法组件包,各种算法模型组成算法模型包,且可以在维持原算法组件包不变的条件下,添加新的算法模型,即添加追加算法模型,并更新配置文件,以更新算法包,无需整体更新算法包;这样,可以减少算法包的开发工作量,提高算法包的维护效率,降低维护风险。
Description
技术领域
本发明涉及计算机技术领域,尤指一种算法包的更新方法及设备。
背景技术
随着人工智能技术的发展,越来越多的应用程序中采用人工智能算法模型来实现复杂的功能。传统方案在含有人工智能类算法模型的应用方案中添加算法模型时,一般采取在原算法包的基础上,分析已使用的算法组件及算法模型,然后追加新的算法组件与新的算法模型,最后重新打包生成新的算法包。这样会引入整个算法***的更新,增加维护难度,还提高了维护风险。
发明内容
本发明实施例提供了一种算法包的更新方法及设备,用于向应用方案中添加算法模型时,无需整个算法***进行更新,以降低维护难度、降低维护风险。
第一方面,本发明实施例提供了一种算法包的更新方法,应用于服务器,所述算法包中包括:算法组件包、算法模型包和预处理包;所述算法组件包中包括算法组件;所述算法模型包中包括算法模型;所述预处理包中包括:预处理组件和配置文件,所述配置文件中至少记录有所述算法模型的信息;该更新方法包括:
获取追加算法模型及其信息;所述追加算法模型不同于原算法包中包括的原算法模型;
向原算法包的配置文件中添加所述追加算法模型的信息,得到更新后的配置文件;
在维持所述原算法包中的算法组件包不变时,至少根据更新后的配置文件和所述追加算法模型,生成数据包并发送至用户设备;所述数据包用于触发用户设备采用所述数据包中的配置文件替换所述原算法包的预处理包中的配置文件,将所述数据包中的追加算法模型添加至所述原算法包的算法模型包中,保持所述原算法包中的所述算法组件包、所述原算法模型和所述预处理组件均不变。
在一些实施例中,至少根据更新后的配置文件和所述追加算法模型,生成数据包,包括:
根据更新后的配置文件和所述追加算法模型,生成所述数据包;
将所述预处理组件和所述更新后的配置文件打包成一更新后的预处理包,将所述追加算法模型和所述原算法包中的原算法模型打包成一更新后的算法模型包,将所述更新后的预处理包和所述更新后的算法模型包打包成所述数据包;
或,将所述预处理组件和所述更新后的配置文件打包成一更新后的预处理包,将所述追加算法模型和所述原算法模型打包成一更新后的算法模型包,将所述更新后的预处理包、所述更新后的算法模型包和所述算法组件包打包成所述数据包。
在一些实施例中,所述算法组件包中同功能类型的算法组件存在一个。
第二方面,本发明实施例提供了一种算法包的更新方法,应用于用户设备,所述算法包中包括:算法组件包、算法模型包和预处理包;所述算法组件包中包括算法组件;所述算法模型包中包括算法模型;所述预处理包中包括:预处理组件和配置文件,所述配置文件中至少记录有所述算法模型的信息;该更新方法包括:
接收服务器发送的数据包;
采用所述数据包中的配置文件替换所述原算法包的预处理包中的配置文件,将所述数据包中的追加算法模型添加至所述原算法包的算法模型包中,保持所述原算法包中的所述算法组件包、所述原算法包中的原算法模型和所述预处理组件均不变;
其中,所述数据包为所述服务器采用以下方式确定:
获取所述追加算法模型及其信息;向所述原算法包的配置文件中添加所述追加算法模型的信息,得到所述更新后的配置文件;在维持所述原算法包中的算法组件包不变时,至少根据更新后的配置文件和所述追加算法模型,生成所述数据包;所述追加算法模型不同于所述原算法包中包括的原算法模型。
在一些实施例中,还包括:
在更新所述原算法包之后,且所述更新后的配置文件中至少记录有所述算法组件的标识信息和所述追加算法模型的标识信息,所述算法组件包中同功能类型的所述算法组件存在一个时,采用所述预处理组件,加载所述更新后的配置文件,确定出所述追加算法模型的标识信息、以及所述算法组件的标识信息;
采用所述预处理组件,根据确定出的所述标识信息,查找与所述追加算法模型匹配的所述算法组件;
采用所述预处理组件,对查找到的所述算法组件进行复制处理,得到复制组件;
基于所述算法组件包的所述算法组件、所述复制组件、所述原算法模型和所述追加算法模型,对所述更新后的算法包进行安装。
在一些实施例中,根据确定出的所述标识信息,查找与所述追加算法模型匹配的所述算法组件,包括:
查找与所述追加算法模型的标识信息相同的所述算法组件。
在一些实施例中,还包括:
在查找与所述追加算法模型匹配的所述算法组件之前,且所述更新后的配置文件中还记录有所述算法组件和所述原算法模型的算子匹配关系时,采用所述预处理组件,对匹配为算子的所述算法组件和所述原算法模型进行第一校验处理。
在一些实施例中,还包括:
在得到所述复制组件之后,采用所述预处理组件,对所述复制组件和所述追加算法模型进行第二校验处理。
在一些实施例中,所述第一校验处理包括:在确定出所述原算法模型的标识信息时,确定出匹配为所述算子的所述算法组件和所述原算法模型的标识信息相同,且对于匹配为所述算子的所述算法组件和所述原算法模型:所述原算法模型为所述算法组件的适用模型集合中的模型;
所述第二校验处理包括:确定所述复制组件与所述追加算法模型的标识信息相同,且所述追加算法模型为所述复制组件的适用模型集合中的模型。
在一些实施例中,还包括:
所述算法组件具有多个时,在对查找到的所述算法组件进行复制处理之前,确定存在与查找到的所述算法组件匹配的所述原算法模型。
在一些实施例中,还包括:
在对所述更新后的算法包进行安装之后,获取待处理信息;
采用安装后的所述更新后的算法包,对所述待处理信息进行处理。
第三方面,本发明实施例提供了一种服务器,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的所述程序指令,按照获得的程序指令执行如本发明实施例提供的上述更新方法。
第四方面,本发明实施例提供了一种用户设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的所述程序指令,按照获得的程序指令执行如本发明实施例提供的上述更新方法。
第五方面,本发明实施例提供了一种可读性存储介质,所述可读性存储介质存储有用户设备和服务器的可执行指令,所述用户设备和服务器的可执行指令用于使用户设备和服务器执行如本发明实施例提供的上述方法。
第六方面,本发明实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明实施例提供的上述方法的步骤。
本发明有益效果如下:
本发明实施例提供的一种算法包的更新方法及设备,通过对算法包的结构进行设计,使得各种算法组件组成算法组件包,各种算法模型组成算法模型包,且可以在维持原算法组件包不变的条件下,添加新的算法模型(即追加算法模型),并更新配置文件,以更新算法包,无需整体更新算法包;这样,可以减少算法包的开发工作量,提高算法包的维护效率,降低维护风险。
附图说明
图1为本发明实施提供的一种算法包的结构示意图;
图2为本发明实施提供的一种算法包的更新方法的交互图;
图3为本发明实施例中提供的一种方案处理架构的示意图;
图4为本发明实施例中提供的具体实施例的流程图;
图5为本发明实施例中提供的一种服务器的结构示意图;
图6为本发明实施例中提供的一种用户设备的结构示意图。
具体实施方式
下面将结合附图,对本发明实施例提供的一种算法包的更新方法及设备的具体实施方式进行详细地说明。需要说明的是,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在介绍算法包的更新方法之前,首先对算法包的结构进行解释和说明。
算法包中包括:算法组件包、算法模型包和预处理包;其中:
算法组件包中包括至少一个算法组件,算法组件包中同功能类型的算法组件存在一个;
算法模型包中包括:至少一个算法模型;
预处理包中包括:预处理组件、以及至少记录有算法模型的信息的配置文件。
例如,以检测工人是否穿工服和是否戴口罩为例,这其中涉及到的算子可以包括:工人检测算子、工服识别算子和口罩识别算子,工人检测算子包括:检测组件和工人检测模型,工服识别算子包括:识别组件和工服识别模型,口罩识别算子包括:识别组件和口罩识别模型;那么,在进行算法包打包时,可以按照以下方式打包:
将检测组件和识别组件打包成算法组件包;
将工人检测模型、工服识别模型、口罩识别模型打包成算法模型包;
将预处理组件和配置文件打包成预处理包;
最后将算法组件包、算法模型包和预处理包进行打包,得到算法包,如图1所示。
需要注意的是,由于工服识别算子和口罩识别算子中的算法组件均为识别功能,所以在进行算法组件包打包时,只需要存在一个识别组件即可,以实现工服识别算子和口罩识别算子对识别组件的复用。
因此,在本发明实施例中,同功能类型可以理解为:多个算法组件实现的本质功能相同;例如,在进行工服识别时,采用的算法组件的本质功能为识别,在进行口罩识别时,采用的算法组件的本质功能也为识别,所以在进行工服识别时采用的算法组件与在进行口罩识别时采用的算法组件为同功能类型的算法组件。
在一些实施例中,配置文件中可以包括:
对于算法组件而言,包括:算法组件的标识信息、算法组件对应的适用模型集合、以及与之匹配为算子的算法模型;
对于算法模型而言,包括:算法模型的标识信息、以及算法模型在算法包中的存储路径。
说明一点,在算法包中添加追加算法模型之前,可以将算法包称之为原算法包,可以将添加有追加算法模型的算法包称之为新算法包,原算法包中并不包括追加算法模型的任何信息。在新算法包中,配置文件除了记录有原算法包中的算法组件和算法模型的信息之外,还记录有追加算法模型的标识信息和存储路径,算法模型包中除了包括原算法包中的算法模型(也可以称之为原算法模型)之外,还包括追加算法模型。例如,如图1所示,实线框所示的工人检测模型和工服识别模型可以为原算法包中的原算法模型,虚线框所示的口罩识别模型可以为追加算法模型。
如此,通过配置文件,可以获取到算法组件和算法模型的信息,以便于进行信息处理,实现算法包的实际应用。
在一些实施例中,本文中提及的标识信息,可以但不限于包括:类型信息(例如但不限于为检测类型或识别类型)和版本号信息,当然还可以包括其他用于表示身份的信息,在此并不限定。
并且,不管是算法组件或算法模型(其中包括追加算法模型,追加算法模型也是算法模型,只是为了便于理解,将追加的算法模型称之为追加算法模型),标识信息可以是在算法组件和算法模型开发时就赋予的,以便于后续的校验和查找。
对于标识信息的具体实现形式,以版本号为例,可以是数字、字母和特殊符号中的至少一种组成的一串字符;例如,版本号可以但不限于为:V0.0.1。
在一些实施例中,预处理组件可以理解为:用于加载、解析文件,并对文件进行校验的方法库文件;
算法组件可以理解为:在进行信息处理时采用的解析方法和执行方法的库文件。
并且,在部署算法包时可以利用AI开放平台来实现,其中,AI开放平台可以安装在服务器中,服务器可以向相关工作人员(也即AI开放平台的使用者)使用的终端(记为终端1)提供访问地址,以使相关工作人员可以通过该访问地址进入AI开放平台进行操作;或者,相关工作人员可以将AI开放平台安装在终端1中,通过安装的AI开放平台进行操作,且服务器中的AI开放平台同步更新。
在本发明实施例中,部署算法包的具体过程可以包括:
相关工作人员可以在AI开放平台上训练算法模型,为信息处理提供所需的算法模型;
若服务器中已经存储有算法包所需的算法组件、预处理组件和结果处理组件时,服务器可以在AI开放平台,按照预设的打包方式,对训练后的算法模型、预处理组件、各算法组件、以及配置文件进行打包,生成算法包;若服务器中未存储有算法包所需的算法组件和预处理组件时,AI开放平台的使用者可以向AI开放平台的维护人员反馈,维护人员可以开发和构建相关组件并上传至服务器;
用户设备可以从服务器中下载已生成的算法包并进行安装,以完成算法包的部署。
在进行算法包的更新时,相关工作人员可以在AI开放平台上训练追加算法模型,服务器可以在AI开放平台,基于追加算法模型、调整后的配置文件,生成升级方案包并下发至用户设备中,用户设备下载升级方案包,并基于升级方案包对原算法包进行更新。
当然,服务器还可以在AI开放平台生成更新后的算法包,以使用户设备可以将更新后的算法包直接替换原算法包。
基于此,本发明实施例提供了一种算法包的更新方法,如图2所示,可以包括:
S201、服务器获取追加算法模型及其信息;追加算法模型不同于原算法包中包括的原算法模型;
其中,服务器中可以具有模型数据库,其中包括多个算法模型,相关人员在通过终端向服务器提供追加算法模型的信息时,服务器可以从模型数据库中下载相应的模型,并将下载的模型定义为追加算法模型。
并且,追加算法模型的信息,可以但不限于为标识信息,对于标识信息的含义可以参见上述内容,在此不再详述。
S202、服务器向原算法包的配置文件中添加追加算法模型的信息,得到更新后的配置文件;
S203、服务器在维持原算法包中的算法组件包不变时,至少根据更新后的配置文件和追加算法模型,生成数据包并发送至用户设备;
S204、用户设备采用数据包中的配置文件替换原算法包的预处理包中的配置文件,将数据包中的追加算法模型添加至原算法包的算法模型包中,保持原算法包中的算法组件包、原算法模型和预处理组件均不变。
在一些实施例中,在数据包为增量包时,用户设备可以根据原算法包和增量包,实现原算法包的升级、更新;在数据包为全包(也即更新后的算法包)时,用户设备可以采用全包直接替换原算法包,实现原算法包的升级、更新。
如此,在需要增加算法模型时,可以不更新算法组件包,仅需要更新配置文件,添加追加算法模型即可,不需要重新生成完整的算法包,减少了更新模块的数量,在实现算法包功能加强的同时,降低了更新的风险,提高了维护的效率。
在一些实施例中,至少根据更新后的配置文件和追加算法模型,生成数据包,包括:
根据更新后的配置文件和追加算法模型,生成数据包(也即增量包);
或,将预处理组件和更新后的配置文件打包成一更新后的预处理包,将追加算法模型和原算法包中的原算法模型打包成一更新后的算法模型包,将更新后的预处理包和更新后的算法模型包打包成数据包(也即增量包);
或,将预处理组件和更新后的配置文件打包成一更新后的预处理包,将追加算法模型和原算法模型打包成一更新后的算法模型包,将更新后的预处理包、更新后的算法模型包和算法组件包打包成数据包(也即更新后的算法包)。
如此,在生成数据包时,可以满足不同应用场景的需要,提高设计的灵活性。
并且,在数据包为增量包时,只需要将部分数据打包成增量包,可以降低增量包的数据大小,减少服务器和用户设备之间传输数据所占用的资源,提高传输效率,从而提高算法包的部署和升级效率。在数据包为更新后的算法包时,可以减少升级操作,提高升级效率,减少升级失败的几率。
也就是说,服务器可以按照设定的算法包打包方式,对预处理组件、配置文件、各算法组件和各算法模型进行打包,形成算法包,再部署至用户设备之上。若要追加功能时,可以采用以下方式:
方式1:
服务器在配置文件中添加追加算法模型的信息以更新配置文件,然后将更新的配置文件和追加算法模型打包,形成增量包并部署至用户设备上,用户设备根据增量包和原算法包进行升级,以得到新的算法包。
方式2:
服务器在配置文件中添加追加算法模型的信息以更新配置文件,然后将更新的配置文件、预处理组件打成一个预处理包,将追加算法模型和原算法模型打成一个算法模型包,再将两个包打包,形成增量包并部署至用户设备上,用户设备根据增量包和原算法包进行升级,以得到新的算法包。
方式3:
服务器在配置文件中添加追加算法模型的信息以更新配置文件,然后将更新的配置文件、预处理组件打成一个预处理包,将追加算法模型和原算法模型打成一个算法模型包,将这两个包和算法组件包打包,形成全包并部署至用户设备上,用户设备可以用全包直接替换原来的算法包。
说明一点,不管采用上述哪种方式,在算法包升级或重新打包时,算法组件包均不会被更新且保持不变。
在一些实施例中,算法组件包中同功能类型的算法组件存在一个。
如此,可以实现算法组件的复用,减少开发工作量,提高维护效率,降低更新风险。
需要强调的是,在本发明实施例中,在对算法包进行更新时,可以在不更新算法组件包的情况下,支持新增加的算法模型,并根据实际需要增加算法包的功能,从而可以实现算法包的自适应更新。
在一些实施例中,对于用户设备而言,还包括:
在更新原算法包之后,且更新后的配置文件中至少记录有算法组件的标识信息和追加算法模型的标识信息,算法组件包中同功能类型的算法组件存在一个时,采用预处理组件,加载更新后的配置文件,确定出追加算法模型的标识信息、以及算法组件的标识信息;
采用预处理组件,根据确定出的标识信息,查找与追加算法模型匹配的算法组件;
采用预处理组件,对查找到的算法组件进行复制处理,得到复制组件;
基于算法组件包的算法组件、复制组件、原算法模型和追加算法模型,对更新后的算法包进行安装。
如此,通过对算法包的结构的特殊设计,即算法组件包中同功能类型的算法组件存在一个,在进行算法包的安装时,可以维持原算法组件包不变,提高算法包的维护效率,降低维护风险。
在一些实施例中,根据确定出的标识信息,查找与追加算法模型匹配的算法组件,包括:
查找与追加算法模型的标识信息相同的算法组件。
由于配置文件中记录有追加算法模型的标识信息和算法组件的标识信息,所以可以基于标识信息,查找具有相同标识的算法组件,以实现算法组件快速、精准地查找。
在一些实施例中,对于用户设备而言,还包括:
在查找与追加算法模型匹配的算法组件之前,且更新后的配置文件中还记录有算法组件和原算法模型的算子匹配关系时,采用预处理组件,对匹配为算子的算法组件和原算法模型进行第一校验处理。
也即在查找与追加算法模型匹配的算法组件之前,可以对匹配为算子的算法组件和原算法模型的适配关系进行校验,这是由于:在算法包的部署过程中,可能会出现一些错误,导致部署至用户设备的算法包与服务器发送的算法包不同;当然,在服务器进行打包时也可能会出现一些错误,导致打包后的算法包遗漏掉某些数据,或者数据发生错误;
因此,在查找算法组件之前,需要确定配置文件中记录的算法组件和原算法模型的匹配关系(可以理解为记录关系),与算法组件包中的算法组件和算法模型包中的原算法模型的实际匹配关系是否相同;若相同,再去查找相应的算法组件;若不同,则可以结束流程,不再执行后续过程。
如此,可以避免在信息处理时出现错误,提高信息处理的准确性。
在一些实施例中,对于用户设备而言,还包括:
在得到复制组件之后,采用预处理组件,对复制组件和追加算法模型进行第二校验处理。
也即在得到复制组件之后,可以对复制组件和追加算法模型的适配关系进行校验,这是由于:在对查找到的算法组件进行复制时,可能会出现错误,导致复制组件与原算法组件不同;因此,在得到复制组件之后,需要对复制组件和追加算法模型的适配关系进行校验。
如此,同样可以避免在信息处理时出现错误,提高信息处理的准确性。
在一些实施例中,第一校验处理包括:在确定出原算法模型的标识信息时,确定出匹配为算子的算法组件和原算法模型的标识信息相同,且对于匹配为算子的算法组件和原算法模型:原算法模型为算法组件的适用模型集合中的模型;
第二校验处理包括:确定复制组件与追加算法模型的标识信息相同,且追加算法模型为复制组件的适用模型集合中的模型。
也就是说,不管是第一校验处理还是第二校验处理,本质上均是校验的组件和模型的标识信息是否相同,模型是否为组件的适用模型集合中的模型,以保证组件和模型是适配的。
在一些实施例中,对于用户设备而言,还包括:
算法组件具有多个时,在对查找到的算法组件进行复制处理之前,确定存在与查找到的算法组件匹配的原算法模型。
例如,以算法组件具有两个,且分别记为算法组件A1和算法组件A2为例,假设配置文件中记录有:算法组件A1与原算法模型(记为B1)匹配为算子,算法组件A2与原算法模型(记为B2)匹配为算子,但是在算法包打包时,因出现了一些错误,导致算法模型包中仅包括:原算法模型B2和追加算法模型,但并不包括原算法模型B1;
如果查找到的算法组件为A1,这样算法包中并不存在与算法组件A1匹配的原算法模型B1,显然这是在算法包打包时出现了错误,若继续采用该算法包进行信息处理时,会导致信息处理错误。
因此,在对查找到的算法组件进行复制处理之前,需要确定存在与查找到的算法组件匹配的原算法模型,以保证在算法包中存在匹配的算法组件和原算法模型,进而有利于提高信息处理的准确度,降低报错的几率。
在一些实施例中,在加载配置文件之前,初始化预处理组件;在完成对复制组件和追加算法模型的适配关系的校验之后,可以初始化算法组件和复制组件,算法组件可以加载对应的原算法模型,复制组件可以加载追加算法模型;
在对更新后的算法包进行安装时,可以将适配的组件和模型组装为算子,以实现算法包的安装,实现后续信息处理。
例如,以检测工人是否穿工服、是否戴口罩、是否戴工帽,且工帽识别为增加的功能为例,对于更新后的算法包而言,算法组件包中可以包括:检测组件和识别组件,算法模型包中可以包括:工服识别模型、口罩识别模型、工帽识别模型(即追加算法模型),其中,追加算法模型对应的算法组件为识别组件,可以对识别组件进行复制处理,得到复制组件;在组装为算子时,得到的方案处理架构如图3所示。
在一些实施例中,对于用户设备而言,还包括:
在对更新后的算法包进行安装之后,获取待处理信息;
采用安装后的更新后的算法包,对待处理信息进行处理。
其中,待处理信息可以但不限于为:图片或数据。
因此,在更新后的算法包安装完成之后,可以对待处理信息进行处理,以完成算法包的实际应用。
下面结合图3所示的方案处理架构,对用户设备一侧安装更新后的算法包的过程进行说明。
结合图4所示的流程图。
S401、初始化预处理组件;
S402、预处理组件加载并解析配置文件;
通过执行S403,可以确定出算法包中存在哪些算法组件和哪些算法模型(其中包括原算法模型和追加算法模型),各算法组件与各算法模型的匹配关系、以及各算法组件和各算法模型的标识信息。
S403、预处理组件对匹配为算子的算法组件与原算法模型进行第一校验处理;
S404、预处理组件基于配置文件确定追加算法模型的标识信息,并基于追加算法模型的标识信息,从算法组件包中查找具有相同标识信息的算法组件A;
S405、预处理组件判断是否存在与查找到的算法组件A匹配的原算法模型;若否,则结束流程;若是,则执行S406;
其中,若否,说明当前算法包中,算法组件A对应的算法模型即为追加算法模型,但是在算法包中算法组件A对应的算法模型不可能仅有追加算法模型一个,应该还有原算法模型,如果没有原算法模型,说明算法包在打包时出现了遗漏,如果利用该算法包进行信息处理时,很容易出现错误,所以若出现此种情况,则可以无需再进行后续步骤。
S406、预处理组件对算法组件A进行复制处理,得到算法组件A0,并对算法组件A0与追加算法模型进行第二校验处理;
S407、初始化除预处理组件之外的其他的算法组件,各算法组件加载对应的算法模型;将算法组件A0与追加算法模型组装为算子,将其他算法组件与对应的算法模型组成为算子,完成算法包的安装。
在一些实施例中,在组装算子时,还可以包括:
将预处理组件和加载的配置文件组装为算子,如图3所示;
其中,结合图3所示,只是在实际的信息处理时,预处理算子可以无需对待处理信息进行处理,可以将待处理信息直接传输至工人检测算子中,通过工人检测算子、工服识别算子、口罩识别算子和工帽识别算子的处理之后,输出处理结果。
基于同一发明构思,本发明实施例提供了一种服务器,该服务器的实现原理与前述一种算法包的更新方法的实现原理类似,该服务器的具体实现方式可参见前述更新方法的具体实施例,重复之处不再赘述。
具体地,本发明实施例提供的一种服务器,如图5所示,可以包括:
存储器501,用于存储程序指令;
处理器502,用于调用存储器501中存储的程序指令,按照获得的程序指令执行如本发明实施例提供的上述更新方法。
基于同一发明构思,本发明实施例提供了一种用户设备,该用户设备的实现原理与前述一种信息处理方法的实现原理类似,该用户设备的具体实现方式可参见前述信息处理方法的具体实施例,重复之处不再赘述。
具体地,本发明实施例提供的一种用户设备,如图6所示,可以包括:
存储器601,用于存储程序指令;
处理器602,用于调用存储器601中存储的程序指令,按照获得的程序指令执行如本发明实施例提供的上述信息处理方法。
基于同一发明构思,本发明实施例提供了一种可读性存储介质,可读性存储介质存储有用户设备和服务器的可执行指令,用户设备和服务器的可执行指令用于使用户设备和服务器执行如本发明实施例提供的上述方法。
基于同一发明构思,本发明实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如本发明实施例提供的上述方法的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (15)
1.一种算法包的更新方法,其特征在于,应用于服务器,所述算法包中包括:算法组件包、算法模型包和预处理包;所述算法组件包中包括算法组件;所述算法模型包中包括算法模型;所述预处理包中包括:预处理组件和配置文件,所述配置文件中至少记录有所述算法模型的信息;该更新方法包括:
获取追加算法模型及其信息;所述追加算法模型不同于原算法包中包括的原算法模型;
向所述原算法包的配置文件中添加所述追加算法模型的信息,得到更新后的配置文件;
在维持所述原算法包中的算法组件包不变时,至少根据更新后的配置文件和所述追加算法模型,生成数据包并发送至用户设备;所述数据包用于触发所述用户设备采用所述数据包中的配置文件替换所述原算法包的预处理包中的配置文件,将所述数据包中的追加算法模型添加至所述原算法包的算法模型包中,保持所述原算法包中的所述算法组件包、所述原算法模型和所述预处理组件均不变。
2.如权利要求1所述的更新方法,其特征在于,至少根据更新后的配置文件和所述追加算法模型,生成数据包,包括:
根据更新后的配置文件和所述追加算法模型,生成所述数据包;
将所述预处理组件和所述更新后的配置文件打包成一更新后的预处理包,将所述追加算法模型和所述原算法包中的原算法模型打包成一更新后的算法模型包,将所述更新后的预处理包和所述更新后的算法模型包打包成所述数据包;
或,将所述预处理组件和所述更新后的配置文件打包成一更新后的预处理包,将所述追加算法模型和所述原算法模型打包成一更新后的算法模型包,将所述更新后的预处理包、所述更新后的算法模型包和所述算法组件包打包成所述数据包。
3.如权利要求1或2所述的更新方法,其特征在于,所述算法组件包中同功能类型的算法组件存在一个。
4.一种算法包的更新方法,其特征在于,应用于用户设备,所述算法包中包括:算法组件包、算法模型包和预处理包;所述算法组件包中包括算法组件;所述算法模型包中包括算法模型;所述预处理包中包括:预处理组件和配置文件,所述配置文件中至少记录有所述算法模型的信息;该更新方法包括:
接收服务器发送的数据包;
采用所述数据包中的配置文件替换原算法包的预处理包中的配置文件,将所述数据包中的追加算法模型添加至所述原算法包的算法模型包中,保持所述原算法包中的所述算法组件包、所述原算法包中的原算法模型和所述预处理组件均不变;
其中,所述数据包为所述服务器采用以下方式确定:
获取所述追加算法模型及其信息;向所述原算法包的配置文件中添加所述追加算法模型的信息,得到更新后的配置文件;在维持所述原算法包中的算法组件包不变时,至少根据更新后的配置文件和所述追加算法模型,生成所述数据包;所述追加算法模型不同于所述原算法包中包括的原算法模型。
5.如权利要求4所述的更新方法,其特征在于,还包括:
在更新所述原算法包之后,且所述更新后的配置文件中至少记录有所述算法组件的标识信息和所述追加算法模型的标识信息,所述算法组件包中同功能类型的所述算法组件存在一个时,采用所述预处理组件,加载所述更新后的配置文件,确定出所述追加算法模型的标识信息、以及所述算法组件的标识信息;
采用所述预处理组件,根据确定出的所述标识信息,查找与所述追加算法模型匹配的所述算法组件;
采用所述预处理组件,对查找到的所述算法组件进行复制处理,得到复制组件;
基于所述算法组件包的所述算法组件、所述复制组件、所述原算法模型和所述追加算法模型,对所述更新后的算法包进行安装。
6.如权利要求5所述的更新方法,其特征在于,还包括:
在查找与所述追加算法模型匹配的所述算法组件之前,且所述更新后的配置文件中还记录有所述算法组件和所述原算法模型的算子匹配关系时,采用所述预处理组件,对匹配为算子的所述算法组件和所述原算法模型进行第一校验处理。
7.如权利要求6所述的更新方法,其特征在于,所述第一校验处理包括:在确定出所述原算法模型的标识信息时,确定出匹配为算子的所述算法组件和所述原算法模型的标识信息相同,且对于匹配为算子的所述算法组件和所述原算法模型:所述原算法模型为所述算法组件的适用模型集合中的模型。
8.如权利要求5所述的更新方法,其特征在于,还包括:
在得到所述复制组件之后,采用所述预处理组件,对所述复制组件和所述追加算法模型进行第二校验处理。
9.如权利要求8所述的更新方法,其特征在于,所述第二校验处理包括:确定所述复制组件与所述追加算法模型的标识信息相同,且所述追加算法模型为所述复制组件的适用模型集合中的模型。
10.如权利要求5所述的更新方法,其特征在于,还包括:
所述算法组件具有多个时,在对查找到的所述算法组件进行复制处理之前,确定存在与查找到的所述算法组件匹配的所述原算法模型。
11.如权利要求5所述的更新方法,其特征在于,还包括:
在对所述更新后的算法包进行安装之后,获取待处理信息;
采用安装后的所述更新后的算法包,对所述待处理信息进行处理。
12.一种服务器,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的所述程序指令,按照获得的程序指令执行如权利要求1-3任一项所述的更新方法。
13.一种用户设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的所述程序指令,按照获得的程序指令执行如权利要求4-11任一项所述的更新方法。
14.一种可读性存储介质,其特征在于,所述可读性存储介质存储有用户设备和服务器的可执行指令,所述用户设备和服务器的可执行指令用于使用户设备和服务器执行如权利要求1-11任一项所述的方法。
15.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-11任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210828870.2A CN114911507B (zh) | 2022-07-15 | 2022-07-15 | 一种算法包的更新方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210828870.2A CN114911507B (zh) | 2022-07-15 | 2022-07-15 | 一种算法包的更新方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114911507A CN114911507A (zh) | 2022-08-16 |
CN114911507B true CN114911507B (zh) | 2022-09-23 |
Family
ID=82771699
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210828870.2A Active CN114911507B (zh) | 2022-07-15 | 2022-07-15 | 一种算法包的更新方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114911507B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015074467A1 (zh) * | 2013-11-25 | 2015-05-28 | 腾讯科技(深圳)有限公司 | 一种数据更新方法、装置、***及存储介质 |
CN104978215A (zh) * | 2014-10-08 | 2015-10-14 | 腾讯科技(深圳)有限公司 | 一种文件更新方法、相关设备和*** |
CN108108181A (zh) * | 2017-12-14 | 2018-06-01 | 深圳市雷鸟信息科技有限公司 | 应用程序的功能更新方法、装置及计算机可读存储介质 |
CN109753300A (zh) * | 2017-11-03 | 2019-05-14 | 阿里巴巴集团控股有限公司 | 一种算法升级方法、计算任务发送方法及相关产品 |
CN110308910A (zh) * | 2019-05-30 | 2019-10-08 | 苏宁金融服务(上海)有限公司 | 算法模型部署以及风险监控的方法、装置和计算机设备 |
CN110659047A (zh) * | 2019-09-16 | 2020-01-07 | Oppo广东移动通信有限公司 | 算法模型更新方法和装置、电子设备、计算机可读存储介质 |
CN112328272A (zh) * | 2019-08-05 | 2021-02-05 | 浙江宇视科技有限公司 | 算法升级方法、装置、设备及存储介质 |
CN113535214A (zh) * | 2021-06-21 | 2021-10-22 | 浙江大华技术股份有限公司 | 算法文件升级方法、装置、电子装置和存储介质 |
CN114327671A (zh) * | 2021-12-03 | 2022-04-12 | 北京达佳互联信息技术有限公司 | 参数配置方法、装置、设备及存储介质 |
CN114675863A (zh) * | 2022-05-27 | 2022-06-28 | 浙江大华技术股份有限公司 | 算法配置文件更新方法及相关方法、装置、设备、介质 |
-
2022
- 2022-07-15 CN CN202210828870.2A patent/CN114911507B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015074467A1 (zh) * | 2013-11-25 | 2015-05-28 | 腾讯科技(深圳)有限公司 | 一种数据更新方法、装置、***及存储介质 |
CN104978215A (zh) * | 2014-10-08 | 2015-10-14 | 腾讯科技(深圳)有限公司 | 一种文件更新方法、相关设备和*** |
CN109753300A (zh) * | 2017-11-03 | 2019-05-14 | 阿里巴巴集团控股有限公司 | 一种算法升级方法、计算任务发送方法及相关产品 |
CN108108181A (zh) * | 2017-12-14 | 2018-06-01 | 深圳市雷鸟信息科技有限公司 | 应用程序的功能更新方法、装置及计算机可读存储介质 |
CN110308910A (zh) * | 2019-05-30 | 2019-10-08 | 苏宁金融服务(上海)有限公司 | 算法模型部署以及风险监控的方法、装置和计算机设备 |
CN112328272A (zh) * | 2019-08-05 | 2021-02-05 | 浙江宇视科技有限公司 | 算法升级方法、装置、设备及存储介质 |
CN110659047A (zh) * | 2019-09-16 | 2020-01-07 | Oppo广东移动通信有限公司 | 算法模型更新方法和装置、电子设备、计算机可读存储介质 |
CN113535214A (zh) * | 2021-06-21 | 2021-10-22 | 浙江大华技术股份有限公司 | 算法文件升级方法、装置、电子装置和存储介质 |
CN114327671A (zh) * | 2021-12-03 | 2022-04-12 | 北京达佳互联信息技术有限公司 | 参数配置方法、装置、设备及存储介质 |
CN114675863A (zh) * | 2022-05-27 | 2022-06-28 | 浙江大华技术股份有限公司 | 算法配置文件更新方法及相关方法、装置、设备、介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114911507A (zh) | 2022-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106371940B (zh) | 一种程序崩溃解决方法及装置 | |
CN112394942B (zh) | 基于云计算的分布式软件开发编译方法及软件开发平台 | |
CN106020873B (zh) | 补丁包加载方法及装置 | |
CN110941528B (zh) | 一种基于故障的日志埋点设置方法、装置及*** | |
CN109918079B (zh) | 规则引擎***的规则更新方法、装置和计算机设备 | |
CN109032631B (zh) | 应用程序补丁包获取方法、装置、计算机设备及存储介质 | |
CN112764753B (zh) | 一种项目的部署方法、装置、电子设备及存储介质 | |
WO2001024009A1 (en) | Method and apparatus for testing a process in a computer system | |
CN111158741B (zh) | 监控业务模块对第三方类库依赖关系变化的方法及装置 | |
CN104133699B (zh) | 设备***软件升级方法与*** | |
CN107632901A (zh) | 一种应用程序运行异常的自修复方法及装置 | |
US10866803B2 (en) | Generating interaction libraries | |
CN115185550A (zh) | 服务部署方法、装置、计算机设备及存储介质 | |
WO2020091592A1 (en) | A self-learning method and system for automatically performing application packaging and deployment for a hosting environment | |
CN111078553B (zh) | 数据开发任务测试方法、装置、计算机设备和存储介质 | |
CN112286543B (zh) | 一种应用服务部署方法及装置 | |
CN114911507B (zh) | 一种算法包的更新方法及设备 | |
CN106909434B (zh) | 可执行程序中未定义函数的检测方法及装置 | |
CN114924772A (zh) | 一种算法包的更新方法及设备 | |
CN111352631A (zh) | 一种接口兼容性检测方法及装置 | |
CN115145596A (zh) | 一种机器人升级包ota升级方法及设备 | |
CN113297038B (zh) | 监控与数据处理方法、装置、设备及监控***、数据中心 | |
CN117492803B (zh) | 一种智能门锁pcba软件升级方法及*** | |
CN111694730B (zh) | 一种消除错误引用控件资源的方法及装置 | |
CN113330419B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |