System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 应用部署方法、装置、设备及存储介质制造方法及图纸_技高网

应用部署方法、装置、设备及存储介质制造方法及图纸

技术编号:40806692 阅读:14 留言:0更新日期:2024-03-28 19:30
本申请公开一种应用部署方法、装置、设备及存储介质,该方法包括:确定第一语言开发的待部署应用,调用以第一语言开发的对应预设仿真接口,运行所述待部署应用的至少第一部分功能,并得到运行结果;所述预设仿真接口的功能与第二设备中相应接口的功能相同,所述第二设备中运行基于相应第二语言开发的接口运行以第二语言开发的应用;若相应运行结果满足预设验证效果要求,对所述待部署应用进行转换,并将转换后的所述待部署应用部署至所述第二设备中,其中,对所述待部署应用进行转换包括将待部署应用转换为可以在第二设备中运行的应用以及将该应用的代码转变为第二语言编写的代码。本申请解决相关技术中,难以满足实际应用需求的技术问题。

【技术实现步骤摘要】

本申请涉及通信计算机,尤其涉及一种应用部署方法、装置、设备及存储介质


技术介绍

1、目前,算法开发人员习惯于使用python语言进行开发,随着基于深度学习的智能应用部署专用处理器(npu(neural-network process units、嵌入式神经网络处理器)、dsp(digital singnal processor、数字信号处理微处理器)、asic(application specificintegrated circuit、集成电路芯片))或者芯片的广泛应用,需要解决python算法(基于python语言开发的智能应用)与嵌入式设备之间的部署间隙(嵌入式代码或程序一般使用c语言、c++语言,解决间隙即将基于python语言开发的智能应用程序处理为嵌入式设备能运行的嵌入式代码或程序,且保持应用在嵌入式设备上的性能),目前,相关技术中会采用可视化插件等解决python算法对应智能应用与嵌入式部署之间的部署间隙,这在一定程度上降低了python算法对应智能应用在第二设备上部署的难度,然而可视化插件开发模式与python算法开发逻辑不统一,实际操作(如调试)复杂,致使开发门槛高,难以满足实际应用需求。


技术实现思路

1、有鉴于此,本申请实施例提供一种应用部署方法、装置、设备及存储介质,旨在解决相关技术中,在基于专用处理器部署python语言开发的智能应用时,存在实际操作复杂,致使开发门槛高,难以满足实际应用需求的技术问题。

2、本申请实施例提供了一种应用部署方法,应用于第一设备,所述方法包括:

3、确定第一语言开发的待部署应用,调用以第一语言开发的对应预设仿真接口,运行所述待部署应用的至少第一部分功能,并得到运行结果;

4、其中,所述预设仿真接口的功能与第二设备中相应接口的功能相同,所述第二设备中运行基于相应第二语言开发的接口运行以第二语言开发的应用;

5、若相应运行结果满足预设验证效果要求,对所述待部署应用进行转换,并将转换后的所述待部署应用部署至所述第二设备中,其中,对所述待部署应用进行转换包括将待部署应用转换为可以在第二设备中运行的应用以及将该应用的代码转变为第二语言编写的代码。

6、在本申请的一种可能的实施方式中,所述预设仿真接口为多个,预设仿真接口对相应多个芯片或者处理器的推理能力进行抽象得到,所述推理能力包括智能处理能力以及智能分析能力,所述处理器包括预设专用处理器或者预设通用处理器,所述预设仿真接口包括深度学习推理接口;

7、所述若相应运行结果满足预设验证效果要求,对所述待部署应用进行转换的步骤之前,所述方法包括:

8、若检测到当前预设仿真接口与下一预设仿真接口在执行时序上不连贯时,则调用拓展的功能接口,并基于所述拓展的功能接口,运行所述待部署应用的相应功能,直至可以运行所述下一预设仿真接口,其中,相应开发人员通过所述拓展的功能接口开发所述待部署应用的至少第二部分功能,所述第一设备不存在第二部分功能对应的预设仿真接口。

9、本申请还提供一种应用部署方法,所述待部署应用使用深度学习模型接口实现其第三部分功能,所述深度学习模型接口可以是所述预设仿真接口,也可以是使用所述拓展的功能接口开发得到的接口,所述第三部分功能是所述第一部分功能中的部分或者是所述第二部分功能中的部分。

10、在本申请的一种可能的实施方式中,所述待部署应用使用不同的深度学习模型表征其不同功能,所述不同的深度学习模型对应功能可以在时序执行上相邻,或者可以在时序执行上不相邻。

11、在本申请的一种可能的实施方式中,所述第一设备和所述第二设备是存在主从关系的设备,或者所述第一设备和所述第二设备是两个独立而不存在主从关系的设备。

12、在本申请的一种可能的实施方式中,所述若相应运行结果满足预设验证效果要求,对所述待部署应用进行转换的步骤,包括以下任意一项:

13、在所述第一部分功能中的全部功能所对应的运行结果均满足预设验证效果要求时,对所述待部署应用进行转换;

14、在所述第一部分功能中的至少一个功能所对应的运行结果满足预设验证效果要求时,对所述待部署应用进行转换。

15、在本申请的一种可能的实施方式中,所述若相应运行结果满足预设验证效果要求,对所述待部署应用进行转换的步骤,包括:

16、若相应运行结果满足预设验证效果要求,根据调用的预设仿真接口的属性信息,对智能应用仿真程序进行分段,提取出开发者编写的代码段,以得到待部署应用的全部代码段,基于所述全部代码段,对所述待部署应用进行转换。

17、在本申请的一种可能的实施方式中,所述若相应运行结果满足预设验证效果要求,对所述待部署应用进行转换的步骤之前,包括:

18、基于预置api,获取待效果验证的拓展功能接口对应上一功能接口的输出以及对应下一功能接口的输入,其中,预置api可以获取待部署应用每个仿真接口的输入和输出;

19、根据对应上一功能接口的输出以及对应下一功能接口的输入,对需要拓展的功能接口进行效果验证。

20、在本申请的一种可能的实施方式中,所述若相应运行结果满足预设验证效果要求,对所述待部署应用进行转换,并将转换后的所述待部署应用部署至所述第二设备中的步骤,包括:

21、若相应运行结果满足预设验证效果要求,且确定第二设备可以部署第一语言开发的所述待部署应用,则将所述待部署应用中的部分代码块翻译为第二语言,并将转换后的所述待部署应用部署至所述第二设备中;

22、其中,所述部分代码块的目标计算比密度大于预设计算比密度,所述部分代码块的目标逻辑运算密度大于预设逻辑运算密度。

23、在本申请的一种可能的实施方式中,所述对所述待部署应用进行转换的步骤,包括以下任意一项:

24、将所述待部署应用的代码转换成抽象语法树,并基于预设dsl语言对所述抽象语法树进行描述,得到第二语言编写的应用;

25、通过预设大语言模型api,对所述待部署应用进行转换。

26、在本申请的一种可能的实施方式中,所述将转换后的所述待部署应用部署至所述第二设备中的步骤之后,包括:

27、对部署至第二设备中应用的不同功能进行验证,得到目标验证结果;

28、将目标验证结果与对应第一设备中的运行结果进行比对,并输出比对报告。

29、在本申请的一种可能的实施方式中,所述将目标验证结果与对应第一设备中的运行结果进行比对,并输出比对报告的步骤,包括:

30、将目标验证结果与对应第一设备中的运行结果进行比对,根据第二设备的资源情况,确定比对报告的输出明细;其中,所述输出明细包括预设仿真接口之间相应扩展代码对应在第二设备中的验证结果,与其在第一设备中的验证结果的一致性情况能,和/或者完整应用在第二设备中的验证结果,与其在第一设备中的验证结果的一致性情况,所述输出明细还包括第一设备上完成验证本文档来自技高网...

【技术保护点】

1.一种应用部署方法,其特征在于,应用于第一设备,所述方法包括:

2.如权利要求1所述的应用部署方法,其特征在于,所述预设仿真接口为多个,预设仿真接口对相应多个芯片或者处理器的推理能力进行抽象得到,所述处理器包括预设专用处理器或者预设通用处理器,所述预设仿真接口包括深度学习推理接口;

3.如权利要求2所述的应用部署方法,其特征在于,所述待部署应用使用深度学习模型接口实现其第三部分功能,所述深度学习模型接口可以是所述预设仿真接口,也可以是使用所述拓展的功能接口开发得到的接口,所述第三部分功能是所述第一部分功能中的部分或者是所述第二部分功能中的部分。

4.如权利要求3所述的应用部署方法,其特征在于,所述待部署应用使用不同的深度学习模型表征其不同功能,所述不同的深度学习模型对应功能可以在时序执行上相邻,或者可以在时序执行上不相邻。

5.如权利要求1所述的应用部署方法,其特征在于,所述第一设备和所述第二设备是存在主从关系的设备,或者所述第一设备和所述第二设备是两个独立而不存在主从关系的设备。

6.如权利要求1所述的应用部署方法,其特征在于,所述若相应运行结果满足预设验证效果要求,对所述待部署应用进行转换的步骤,包括以下任意一项:

7.如权利要求1所述的应用部署方法,其特征在于,所述若相应运行结果满足预设验证效果要求,对所述待部署应用进行转换的步骤,包括:

8.如权利要求1所述的应用部署方法,其特征在于,所述若相应运行结果满足预设验证效果要求,对所述待部署应用进行转换的步骤之前,包括:

9.如权利要求1所述的应用部署方法,其特征在于,所述若相应运行结果满足预设验证效果要求,对所述待部署应用进行转换,并将转换后的所述待部署应用部署至所述第二设备中的步骤,包括:

10.如权利要求1所述的应用部署方法,其特征在于,所述对所述待部署应用进行转换的步骤,包括以下任意一项:

11.如权利要求2所述的应用部署方法,其特征在于,所述将转换后的所述待部署应用部署至所述第二设备中的步骤之后,包括:

12.如权利要求11所述的应用部署方法,其特征在于,所述将目标验证结果与对应第一设备中的运行结果进行比对,并输出比对报告的步骤,包括:将目标验证结果与对应第一设备中的运行结果进行比对,根据第二设备的资源情况,确定比对报告的输出明细;其中,所述输出明细包括预设仿真接口之间相应扩展代码对应在第二设备中的验证结果,与其在第一设备中的验证结果的一致性情况能,和/或者完整应用在第二设备中的验证结果,与其在第一设备中的验证结果的一致性情况,所述输出明细还包括第一设备上完成验证但是第二设备上不能完成验证的验证结果。

13.一种应用部署装置,其特征在于,应用于第一设备,所述装置包括:

14.一种应用部署设备,其特征在于,包括存储器,处理器及存储在所述存储器上并可在所述处理器上运行的应用部署程序,所述处理器执行所述应用部署程序时实现权利要求1至12中任一项所述的应用部署方法的步骤。

15.一种存储介质,其特征在于,所述存储介质上存储有应用部署程序,所述应用部署程序被处理器执行时实现如权利要求1至12中任一项所述的应用部署方法的步骤。

...

【技术特征摘要】

1.一种应用部署方法,其特征在于,应用于第一设备,所述方法包括:

2.如权利要求1所述的应用部署方法,其特征在于,所述预设仿真接口为多个,预设仿真接口对相应多个芯片或者处理器的推理能力进行抽象得到,所述处理器包括预设专用处理器或者预设通用处理器,所述预设仿真接口包括深度学习推理接口;

3.如权利要求2所述的应用部署方法,其特征在于,所述待部署应用使用深度学习模型接口实现其第三部分功能,所述深度学习模型接口可以是所述预设仿真接口,也可以是使用所述拓展的功能接口开发得到的接口,所述第三部分功能是所述第一部分功能中的部分或者是所述第二部分功能中的部分。

4.如权利要求3所述的应用部署方法,其特征在于,所述待部署应用使用不同的深度学习模型表征其不同功能,所述不同的深度学习模型对应功能可以在时序执行上相邻,或者可以在时序执行上不相邻。

5.如权利要求1所述的应用部署方法,其特征在于,所述第一设备和所述第二设备是存在主从关系的设备,或者所述第一设备和所述第二设备是两个独立而不存在主从关系的设备。

6.如权利要求1所述的应用部署方法,其特征在于,所述若相应运行结果满足预设验证效果要求,对所述待部署应用进行转换的步骤,包括以下任意一项:

7.如权利要求1所述的应用部署方法,其特征在于,所述若相应运行结果满足预设验证效果要求,对所述待部署应用进行转换的步骤,包括:

8.如权利要求1所述的应用部署方法,其特征在于,所述若相应运行结果满足预设验证效果要求,对所述待部署应用进行转换的步骤之前,包括:

9....

【专利技术属性】
技术研发人员:孟泽民高其涛张冰逸骆云飞陈辉
申请(专利权)人:杭州海康威视数字技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1