掌桥专利:专业的专利平台
掌桥专利
首页

一种基于容器化的图像识别算法部署方法、系统及介质

文献发布时间:2023-06-19 10:16:30


一种基于容器化的图像识别算法部署方法、系统及介质

技术领域

本发明涉及图像识别算法技术领域,具体地,涉及一种基于容器化的图像识别算法部署方法、系统及介质,更为具体地,涉及基于图像识别算法应用容器化及高可用方法。

背景技术

传统图像识别算法应用部署方式,采用的是非容器化方式的,以进程方式运行在服务器之上,此种应用运行方式,难以保障高可用和易调用性。典型的图像识别算法部署是将算法应用原生部署在具有GPU的服务器,原生部署的方式会存在一些问题,主要有两个,一个是如何保证原生应用的高可用性,一个是如何更好的实现与其他服务实现对接。使用容器化部署,可以解决上述两个主要问题,可有效提高图像识别算法的可用性及对外接口能力。借助容器化本身的特性(自愈,幂等性等),从而大大提高了图像识别应用的部署效率及可用性。与此同时也提高了服务器资源的合理调度及分配。

专利文献CN109710383A(申请号:201811633748.X)公开了一种人工智能算法容器化应用的方法,本发明是在人工智能实际应用落地领域中,创新性地提出将AI人工智能包括机器学习算法的计算和自学习的运行过程集中到一个“容器”中集成化系统化完成,该容器中包含规则系统、算法系统、特征系统,知识系统、关联关系系统、以及结果库,从业务层接收业务需求后,所有的计算过程将在该容器内完成,该容器内置了业务处理的规则、算法、调用方式以及计算结果(非可视化),在该容器中,规则系统、算法系统和特征系统在知识系统和关联关系系统的作用下,可以精确的具有“意识”的根据业务需要调用相关的算法根据规则提取出相应的特征,然后根据需求计算出数据结果和文本结果。

发明内容

针对现有技术中的缺陷,本发明的目的是提供一种基于容器化的图像识别算法部署方法、系统及介质。

根据本发明提供的一种基于容器化的图像识别算法部署方法,包括:

步骤M1:通过dockerfile文件的方式生成应用程序包,得到图像识别算法模块的镜像文件;

步骤M2:将图像识别算法模块的镜像文件声明在yaml中,并将GPU的文件挂载声明在yaml中;

步骤M3:执行yaml,启动容器。

优选地,所述步骤M1包括:

步骤M1.1:将图像识别算法模块的可执行包以文件方式放入容器数据层,并生成dockerfile文件;

步骤M1.2:使用容器编译指令,执行dockerfile文件,生成用于部署在容器编排技术的软件镜像文件。

优选地,所述步骤M2包括:按照yaml基本语法,使用解释性方式将需要在容器化编排上的资源以yaml方式进行描述。

优选地,所述步骤M2包括:需要yaml中显示声明对应宿主机的GPU的相关文件,并挂载至容器运行时的文件系统中。

根据本发明提供的一种基于容器化的图像识别算法部署系统,包括:

模块M1:通过dockerfile文件的方式生成应用程序包,得到图像识别算法模块的镜像文件;

模块M2:将图像识别算法模块的镜像文件声明在yaml中,并将GPU的文件挂载声明在yaml中;

模块M3:执行yaml,启动容器。

优选地,所述模块M1包括:

模块M1.1:将图像识别算法模块的可执行包以文件方式放入容器数据层,并生成dockerfile文件;

模块M1.2:使用容器编译指令,执行dockerfile文件,生成用于部署在容器编排技术的软件镜像文件。

优选地,所述模块M2包括:按照yaml基本语法,使用解释性方式将需要在容器化编排上的资源以yaml方式进行描述。

优选地,所述模块M2包括:需要yaml中显示声明对应宿主机的GPU的相关文件,并挂载至容器运行时的文件系统中。

根据本发明提供的一种存储有计算机程序的计算机可读存储介质,所述计算机程序被处理器执行时实现上述所述的方法的步骤。

与现有技术相比,本发明具有如下的有益效果:

1、本发明通过利用容器化的部署方式,天然的具备云原生的特性,自愈,可调度,可伸缩,由此可保障算法本身的可用性;

2、本发明在其他服务已经实现容器化改进的前提下,容器化后的图像识别算法,也可加入其上游服务的调度中心,亦可由上游服务将其封装并对外提供调用方式;

3、本发明容器化方式的部署,可弹性的扩容图像识别算法的基础环境,可以做到资源的合理分配及利用;

4、本发明典型图像识别算法应用部署方式难以保障高可用和易调用性,使用容器化部署,可有效提高图像识别算法的可用性及对外接口能力;从而大大提高了图像识别应用的部署效率及可用性;与此同时也提高了服务器资源的合理调度及分配。

附图说明

通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

图1为一种基于容器化的图像识别算法部署系统示意图。

具体实施方式

下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。

根据本发明提供的一种基于容器化的图像识别算法部署方法,包括:

步骤M1:通过dockerfile文件的方式生成应用程序包,得到图像识别算法模块的镜像文件;

步骤M2:将图像识别算法模块的镜像文件声明在yaml中,并将GPU的文件挂载声明在yaml中;

步骤M3:执行yaml,启动容器。

具体地,所述步骤M1包括:

步骤M1.1:将图像识别算法模块的可执行包以文件方式放入容器数据层,并生成dockerfile文件;

步骤M1.2:使用容器编译指令,执行dockerfile文件,生成用于部署在容器编排技术的软件镜像文件。

具体地,所述步骤M2包括:按照yaml基本语法,使用解释性方式将需要在容器化编排上的资源以yaml方式进行描述。

具体地,所述步骤M2包括:需要yaml中显示声明对应宿主机的GPU的相关文件,并挂载至容器运行时的文件系统中。

根据本发明提供的一种基于容器化的图像识别算法部署系统,如图1所示,包括:

模块M1:通过dockerfile文件的方式生成应用程序包,得到图像识别算法模块的镜像文件;

模块M2:将图像识别算法模块的镜像文件声明在yaml中,并将GPU的文件挂载声明在yaml中;

模块M3:执行yaml,启动容器。

具体地,所述模块M1包括:

模块M1.1:将图像识别算法模块的可执行包以文件方式放入容器数据层,并生成dockerfile文件;

模块M1.2:使用容器编译指令,执行dockerfile文件,生成用于部署在容器编排技术的软件镜像文件。

具体地,所述模块M2包括:按照yaml基本语法,使用解释性方式将需要在容器化编排上的资源以yaml方式进行描述。

具体地,所述模块M2包括:需要yaml中显示声明对应宿主机的GPU的相关文件,并挂载至容器运行时的文件系统中。

根据本发明提供的一种存储有计算机程序的计算机可读存储介质,所述计算机程序被处理器执行时实现上述所述的方法的步骤。

实施例2是实施例1的变化例

本发明提供的一种基于容器化的图像识别算法部署方法,包括:

步骤1:编译图像识别算法模块的镜像文件

步骤2:书写启动图像识别算法的应用的yaml文件

步骤3:在GPU服务器上配置图像识别算法软件

步骤4:容器yaml中加入GPU相关的配置,以及显示声明使用含GPU的节点

步骤5:执行yaml,运行应用

所述步骤1包括如下步骤:

步骤1.1:将图像识别模块的可执行包以文件方式放入到容器数据层中,并生成dockerfile形式

步骤1.2:使用容器编译指令,执行dockerfile,从而生成可用于部署在容器编排技术的软件的镜像

所述步骤2包括如下步骤:

步骤2.1:按照yaml基本语法,使用解释性方式将需要在容器化编排上的资源,以yaml方式进行描述

所述步骤4包括如下步骤:

步骤4.1:需要yaml中显示声明对应宿主机的GPU相关文件,并挂载至容器运行时的文件系统中。

本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。

以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

相关技术
  • 一种基于容器化的图像识别算法部署方法、系统及介质
  • 一种基于容器化的电力仿真系统部署方法及装置
技术分类

06120112481579