CN112506668A - 一种基于容器化的图像识别算法部署方法、***及介质 - Google Patents
一种基于容器化的图像识别算法部署方法、***及介质 Download PDFInfo
- Publication number
- CN112506668A CN112506668A CN202011529333.5A CN202011529333A CN112506668A CN 112506668 A CN112506668 A CN 112506668A CN 202011529333 A CN202011529333 A CN 202011529333A CN 112506668 A CN112506668 A CN 112506668A
- Authority
- CN
- China
- Prior art keywords
- image recognition
- recognition algorithm
- yaml
- module
- file
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 238000004590 computer program Methods 0.000 claims description 3
- 238000013473 artificial intelligence Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000011144 upstream manufacturing Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种基于容器化的图像识别算法部署方法、***及介质,包括:步骤M1:通过dockerfile文件的方式生成应用程序包,得到图像识别算法模块的镜像文件;步骤M2:将图像识别算法模块的镜像文件声明在yaml中,并将GPU的文件挂载声明在yaml中;步骤M3:执行yaml,启动容器。本发明通过利用容器化的部署方式,天然的具备云原生的特性,自愈,可调度,可伸缩,由此可保障算法本身的可用性。
Description
技术领域
本发明涉及图像识别算法技术领域,具体地,涉及一种基于容器化的图像识别算法部署方法、***及介质,更为具体地,涉及基于图像识别算法应用容器化及高可用方法。
背景技术
传统图像识别算法应用部署方式,采用的是非容器化方式的,以进程方式运行在服务器之上,此种应用运行方式,难以保障高可用和易调用性。典型的图像识别算法部署是将算法应用原生部署在具有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为一种基于容器化的图像识别算法部署***示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
实施例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
实施例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相关文件,并挂载至容器运行时的文件***中。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的***、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的***、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的***、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (9)
1.一种基于容器化的图像识别算法部署方法,其特征在于,包括:
步骤M1:通过dockerfile文件的方式生成应用程序包,得到图像识别算法模块的镜像文件;
步骤M2:将图像识别算法模块的镜像文件声明在yaml中,并将GPU的文件挂载声明在yaml中;
步骤M3:执行yaml,启动容器。
2.根据权利要求1所述的基于容器化的图像识别算法部署方法,其特征在于,所述步骤M1包括:
步骤M1.1:将图像识别算法模块的可执行包以文件方式放入容器数据层,并生成dockerfile文件;
步骤M1.2:使用容器编译指令,执行dockerfile文件,生成用于部署在容器编排技术的软件镜像文件。
3.根据权利要求1所述的基于容器化的图像识别算法部署方法,其特征在于,所述步骤M2包括:按照yaml基本语法,使用解释性方式将需要在容器化编排上的资源以yaml方式进行描述。
4.根据权利要求1所述的基于容器化的图像识别算法部署方法,其特征在于,所述步骤M2包括:需要yaml中显示声明对应宿主机的GPU的相关文件,并挂载至容器运行时的文件***中。
5.一种基于容器化的图像识别算法部署***,其特征在于,包括:
模块M1:通过dockerfile文件的方式生成应用程序包,得到图像识别算法模块的镜像文件;
模块M2:将图像识别算法模块的镜像文件声明在yaml中,并将GPU的文件挂载声明在yaml中;
模块M3:执行yaml,启动容器。
6.根据权利要求5所述的基于容器化的图像识别算法部署***,其特征在于,所述模块M1包括:
模块M1.1:将图像识别算法模块的可执行包以文件方式放入容器数据层,并生成dockerfile文件;
模块M1.2:使用容器编译指令,执行dockerfile文件,生成用于部署在容器编排技术的软件镜像文件。
7.根据权利要求5所述的基于容器化的图像识别算法部署***,其特征在于,所述模块M2包括:按照yaml基本语法,使用解释性方式将需要在容器化编排上的资源以yaml方式进行描述。
8.根据权利要求5所述的基于容器化的图像识别算法部署***,其特征在于,所述模块M2包括:需要yaml中显示声明对应宿主机的GPU的相关文件,并挂载至容器运行时的文件***中。
9.一种存储有计算机程序的计算机可读存储介质,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011529333.5A CN112506668A (zh) | 2020-12-22 | 2020-12-22 | 一种基于容器化的图像识别算法部署方法、***及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011529333.5A CN112506668A (zh) | 2020-12-22 | 2020-12-22 | 一种基于容器化的图像识别算法部署方法、***及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112506668A true CN112506668A (zh) | 2021-03-16 |
Family
ID=74923359
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011529333.5A Pending CN112506668A (zh) | 2020-12-22 | 2020-12-22 | 一种基于容器化的图像识别算法部署方法、***及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112506668A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9858598B1 (en) * | 2013-10-23 | 2018-01-02 | American Megatrends, Inc. | Media content management and deployment system |
CN108052333A (zh) * | 2017-12-11 | 2018-05-18 | 北京紫优能源科技有限公司 | 一种电力调度集控***标准化自动化部署方法及架构 |
CN109710383A (zh) * | 2018-12-29 | 2019-05-03 | 上海晏鼠计算机技术股份有限公司 | 一种人工智能算法容器化应用的方法 |
CN109800056A (zh) * | 2019-01-16 | 2019-05-24 | 杭州趣链科技有限公司 | 一种基于容器的区块链部署方法 |
CN110603522A (zh) * | 2017-05-02 | 2019-12-20 | 纳木技术株式会社 | 在云平台上将应用程序容器化的方法 |
CN110928643A (zh) * | 2019-11-15 | 2020-03-27 | 国网甘肃省电力公司 | 一种基于容器化的电力仿真***部署方法及装置 |
-
2020
- 2020-12-22 CN CN202011529333.5A patent/CN112506668A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9858598B1 (en) * | 2013-10-23 | 2018-01-02 | American Megatrends, Inc. | Media content management and deployment system |
CN110603522A (zh) * | 2017-05-02 | 2019-12-20 | 纳木技术株式会社 | 在云平台上将应用程序容器化的方法 |
CN108052333A (zh) * | 2017-12-11 | 2018-05-18 | 北京紫优能源科技有限公司 | 一种电力调度集控***标准化自动化部署方法及架构 |
CN109710383A (zh) * | 2018-12-29 | 2019-05-03 | 上海晏鼠计算机技术股份有限公司 | 一种人工智能算法容器化应用的方法 |
CN109800056A (zh) * | 2019-01-16 | 2019-05-24 | 杭州趣链科技有限公司 | 一种基于容器的区块链部署方法 |
CN110928643A (zh) * | 2019-11-15 | 2020-03-27 | 国网甘肃省电力公司 | 一种基于容器化的电力仿真***部署方法及装置 |
Non-Patent Citations (1)
Title |
---|
张杰,郑柯,唐娉等: "Docker容器化下的遥感算法程序集成方法", 《中国图象图形学报》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107450972B (zh) | 一种调度方法、装置以及电子设备 | |
CN108062252B (zh) | 一种信息交互方法、对象管理方法及装置和*** | |
CN111625316A (zh) | 一种环境部署方法、装置及电子设备和存储介质 | |
US20120005346A1 (en) | Hypervisor selection for hosting a virtual machine image | |
CN112395736B (zh) | 一种分布交互仿真***的并行仿真作业调度方法 | |
CN105242962A (zh) | 基于异构众核的轻量级线程快速触发方法 | |
CN114253557B (zh) | 一种云平台应用部署方法、装置、电子设备及存储介质 | |
CN109582385A (zh) | 应用程序启动方法和装置、存储介质及电子设备 | |
CN112000353A (zh) | 应用运行方法、装置及存储介质 | |
CN111352896B (zh) | 人工智能加速器、设备、芯片以及数据处理方法 | |
CN107977572B (zh) | 一种应用程序运行方法和装置、智能终端 | |
CN111913721B (zh) | 自动化部署方法、装置、设备及存储介质 | |
CN108345536A (zh) | 一种持续集成环境的部署方法、装置及设备 | |
CN112506668A (zh) | 一种基于容器化的图像识别算法部署方法、***及介质 | |
CN106775608A (zh) | 独立***进程的实现方法和装置 | |
CN111176924A (zh) | 一种gpu掉卡模拟方法、***、终端及存储介质 | |
CN116192670A (zh) | 环境部署方法、装置、设备及介质 | |
CN113326098B (zh) | 支持kvm虚拟化与容器虚拟化的云管平台 | |
CN112162840B (zh) | 一种基于中断重入机制的协程处理及管理方法 | |
CN115129449A (zh) | 共享gpu的资源调度方法及装置 | |
CN114020414A (zh) | Android***与底层Linux共生方法、装置、电子设备及存储介质 | |
CN113708971A (zh) | 一种Openstack云平台的部署方法及相关装置 | |
CN115769191A (zh) | 在云计算环境中管理异步操作 | |
CN113448585A (zh) | 一种对线程池的优化方法、装置、电子设备和存储介质 | |
CN113590166B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210316 |