System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术实施例涉及计算机,特别涉及一种基于docker的算法模型封装方法。
技术介绍
1、专业软件为了满足特定需求,往往需要集成不同的专业算法。在已经具备算法模型的前提下,往往考虑集成调用已有算法实现对应功能。然而,目前已有的算法模型形态各异,这些算法模型可能使用不同的编程语言,依赖不同的运行库,运行在不同的操作系统上。将这些算法模型集成在专业软件的软件运行环境中,往往会出现运行环境冲突、操作系统版本冲突等问题。导致出现软件集成困难,难以调用不同算法模型的情况。同时,即使算法模型运行环境可以统一,由于不同算法输入输出参数的数量、数据格式均有所不同,在软件开发过程中,对于不同算法的集成,均需要进行定制化开发,将耗费大量时间,严重拖慢软件研发效率。
技术实现思路
1、为提升软件研发过程中算法集成的效率,本专利技术实施例提供了一种基于docker的算法模型封装方法以及一种封装算法模型调用方法。
2、第一方面,本专利技术实施例提供了一种基于docker的算法模型封装方法,包括:
3、确定待封装的算法模型及运行要求;所述运行要求包括运行算法模型所需操作系统和依赖库;
4、根据所述运行要求,利用docker平台,创建符合算法模型运行要求的虚拟化容器;
5、确定算法模型所需文件,并按照预设格式确定算法模型所需文件的路径和名称;
6、在所述虚拟化容器中,更新算法模型所需文件的路径;
7、按照创建的路径,将算法模型所需文件对应
8、对所述虚拟化容器进行镜像保存并导出。
9、可选地,算法模型所需文件包括输入数据文件、输入配置文件、输出数据文件、输出配置文件、启动脚本文件以及用于存放算法模型的可执行程序/源码文件;
10、其中,启动脚本文件与输入配置文件、输出配置文件和用于存放算法模型的可执行程序/源码文件相对应,用于启动算法模型并读取输入配置文件;输入配置文件与输入数据文件对应,用于索引输入数据文件,输出配置文件与输出数据对应,用于索引输出数据文件;输入数据文件和/或输出数据文件包括一个或多个文件。
11、可选地,按照预设格式确定算法模型所需文件的名称,包括:
12、定义输入配置文件的名称为input.json;
13、定义输出配置文件的名称为output.json;
14、定义启动脚本文件的名称为run.sh。
15、可选地,所述输入配置文件中参数类别包括输入数值类参数、输入字符串类参数、输入单文件类参数和输入多文件类参数中的一种或几种。
16、可选地,所述输出配置文件中参数类别包括输出数值类参数、输出字符串类参数、输出单文件类参数和输出多文件类参数中的一种或几种。
17、可选地,按照预设格式确定算法模型所需文件的路径,包括:
18、确定用于存放算法模型的可执行程序/源码文件的路径为/opt/model/;
19、确定输入配置文件的路径为/opt/model/input/;
20、输入数据文件的路径与输入配置文件的路径相同,或为输入配置文件路径的子路径;
21、确定输出配置文件的路径为/opt/model/output/;
22、输出数据文件的路径与输出配置文件的路径相同,或为输出配置文件路径的子路径;
23、确定启动脚本文件的路径为/opt/model/。
24、第二方面,本专利技术实施例还提供了一种封装算法模型调用方法,用于调用基于如上述任一项所述的算法模型封装方法得到的算法模型,包括:
25、获取封装算法模型的docker镜像文件,并生成容器;
26、获取算法模型所需的输入配置文件和输入数据文件;
27、按照对应路径,更新所述容器内的输入配置文件和输入数据文件;
28、运行所述容器中的启动脚本文件,并获取对应的输出配置文件;
29、根据所述输出配置文件,获得最终的输出数据。
30、可选地,所述根据所述输出配置文件,获得最终的输出数据,包括:
31、获取输出配置文件中的输出数据,和/或
32、获取输出配置文件中的输出数据文件路径,并从输出数据文件路径中获取输出数据文件。
33、第三方面,本专利技术实施例还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本说明书任一实施例所述的算法模型封装方法或封装算法模型调用方法。
34、第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行本说明书任一实施例所述的算法模型封装方法或封装算法模型调用方法。
35、本专利技术实施例提供了一种基于docker的算法模型封装方法、电子设备及存储介质,规定了算法模型封装的统一形式,可以解决专业软件在集成多源异构算法模型时出现的运行环境冲突、操作系统版本冲突等问题,提供统一的软件调用规则,提升软件研发过程中算法集成的效率。
36、本专利技术实施例还提供了一种封装算法模型调用方法、电子设备及存储介质,规定了算法模型的调用方式,以实现集成算法的功能。
本文档来自技高网...【技术保护点】
1.一种基于docker的算法模型封装方法,其特征在于,包括:
2.根据权利要求1所述的算法模型封装方法,其特征在于,
3.根据权利要求2所述的算法模型封装方法,其特征在于,
4.根据权利要求2所述的算法模型封装方法,其特征在于,
5.根据权利要求2所述的算法模型封装方法,其特征在于,
6.根据权利要求3所述的算法模型封装方法,其特征在于,
7.一种封装算法模型调用方法,其特征在于,用于调用基于如权利要求1-6中任一项所述的算法模型封装方法得到的算法模型,包括:
8.根据权利要求7所述的封装算法模型调用方法,其特征在于,
9.一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时,实现如权利要求1-8中任一项所述的算法模型封装方法或封装算法模型调用方法。
10.一种存储介质,其上存储有计算机程序,其特征在于,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-8中任一项所述的算法模型封装方法或封装算法模型调用方法。<
...【技术特征摘要】
1.一种基于docker的算法模型封装方法,其特征在于,包括:
2.根据权利要求1所述的算法模型封装方法,其特征在于,
3.根据权利要求2所述的算法模型封装方法,其特征在于,
4.根据权利要求2所述的算法模型封装方法,其特征在于,
5.根据权利要求2所述的算法模型封装方法,其特征在于,
6.根据权利要求3所述的算法模型封装方法,其特征在于,
7.一种封装算法模型调用方法,其特征在于,用于调用基于如权利要求1-6中任一项所...
【专利技术属性】
技术研发人员:李元,翟佳,王泽浩,谢晓丹,
申请(专利权)人:北京环境特性研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。