CN112230911B - 模型部署方法、装置、计算机设备和存储介质 - Google Patents

模型部署方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN112230911B
CN112230911B CN202011030909.3A CN202011030909A CN112230911B CN 112230911 B CN112230911 B CN 112230911B CN 202011030909 A CN202011030909 A CN 202011030909A CN 112230911 B CN112230911 B CN 112230911B
Authority
CN
China
Prior art keywords
model
component
calculation component
processing mode
model calculation
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
Application number
CN202011030909.3A
Other languages
English (en)
Other versions
CN112230911A (zh
Inventor
汪德嘉
杨博雅
朱旭光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jiangsu Pay Egis Technology Co ltd
Beijing Tongfudun Artificial Intelligence Technology Co ltd
Original Assignee
Jiangsu Pay Egis Technology Co ltd
Beijing Tongfudun Artificial Intelligence Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Jiangsu Pay Egis Technology Co ltd, Beijing Tongfudun Artificial Intelligence Technology Co ltd filed Critical Jiangsu Pay Egis Technology Co ltd
Priority to CN202011030909.3A priority Critical patent/CN112230911B/zh
Publication of CN112230911A publication Critical patent/CN112230911A/zh
Application granted granted Critical
Publication of CN112230911B publication Critical patent/CN112230911B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Communication Control (AREA)
  • Stored Programmes (AREA)

Abstract

本申请涉及一种模型部署方法、装置、计算机设备和存储介质。所述方法通过服务器获取已完成训练的模型计算组件以及与模型计算组件对应的配置参数,并根据模型计算组件以及与模型计算组件对应的配置参数确定模型计算组件的数据传输协议,进而根据模型计算组件、模型计算组件对应的配置参数以及模型计算组件的数据传输协议生成模型配置文件,从而完成相应模型的部署,其通过配置参数实现对模型的定制化部署,且由于整个部署过程在服务器中完成,因此不依赖于本地的部署环境,极大的提高了模型部署的便捷性。

Description

模型部署方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种模型部署方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,模型的应用越来越广泛。而模型的开发与部署一般依赖于某种通用模型标注语言,如通过PMML(Predictive Model Markup Language,预言模型标记语言)等通用模型标注语言实现跨平台(或跨开发语言)的部署。
而常用的跨平台部署手段对模型开发有着诸多的限制,如PMML对用户的自定义操作缺乏有效的支持,还缺乏对深度学习模型的支持,即深度学习模型无法通过标准的PMML实现;而对于由R、Python等语言开发的模型,若需要部署到其他开发语言环境(如java)中则较为困难。
目前,对于用户的自定义操作部分只能通过编码的方式将其固化到模型的配置中实现,而针对部署的语言和环境,需要手动编写转换代码进行转换,从而导致模型的部署过程较为繁琐,需要耗费大量的人力物力。
发明内容
基于此,有必要针对上述传统的模型部署过程较为繁琐的技术问题,提供一种模型部署方法、装置、计算机设备和存储介质。
一种模型部署方法,所述方法包括:
获取已完成训练的模型计算组件以及与所述模型计算组件对应的配置参数;
根据所述模型计算组件以及与所述模型计算组件对应的配置参数确定所述模型计算组件的数据传输协议;
根据所述模型计算组件、所述模型计算组件对应的配置参数以及所述模型计算组件的数据传输协议生成模型配置文件,所述模型配置文件为对所述模型计算组件进行模型部署的配置。
在其中一个实施例中,所述配置参数包括所述模型计算组件的运行环境参数,所述方法还包括:根据所述模型计算组件的运行环境参数建立所述模型计算组件与所述运行环境参数匹配的docker容器之间的关联关系,并存储所述关联关系,所述关联关系用于指示所述模型计算组件在对应的docker容器中运行。
在其中一个实施例中,所述配置参数还包括所述模型计算组件的处理方式,所述模型计算组件的处理方式包括预处理方式和后处理方式中的至少一种;所述根据所述模型计算组件以及与所述模型计算组件对应的配置参数确定所述模型计算组件的数据传输协议,包括:若所述模型计算组件的处理方式中包括预处理方式,则根据所述模型计算组件以及对应的预处理方式确定向所述模型计算组件输入数据的数据传输协议;若所述模型计算组件的处理方式中包括后处理方式,则根据所述模型计算组件以及对应的后处理方式确定从所述模型计算组件输出数据的数据传输协议。
在其中一个实施例中,所述方法还包括:接收目标账户的模型调用请求,所述模型调用请求中包括请求调用的模型计算组件的模型配置文件以及请求模型计算组件处理业务的业务数据,所述模型配置文件中包括与请求调用的模型计算组件对应的配置参数,所述配置参数包括请求调用的模型计算组件的运行环境参数;根据请求调用的模型计算组件的运行环境参数将所述模型计算组件加载到与所述运行环境参数匹配的docker容器中,形成模型服务框架;基于所述模型配置文件确定所述模型服务框架对所述业务数据的处理方式以及对应的数据传输协议;根据所述模型服务框架、所述处理方式和对应的数据传输协议对所述业务数据进行处理,得到处理结果;向所述目标账户返回所述处理结果。
在其中一个实施例中,所述模型配置文件中包括请求调用的模型计算组件的处理方式,所述处理方式包括预处理方式和后处理方式中的至少一种;所述根据所述模型服务框架、所述处理方式和对应的数据传输协议对所述业务数据进行处理,包括:若所述处理方式中包括预处理方式,则根据所述预处理方式对所述业务数据进行预处理,得到预处理后的数据;采用与所述预处理方式对应的数据传输协议向所述模型服务框架输入所述预处理后的数据,以指示所述模型服务框架根据设定的算法对所述预处理后的数据进行计算。
在其中一个实施例中,所述根据所述模型服务框架、所述处理方式和对应的数据传输协议对所述业务数据进行处理,还包括:若所述处理方式中包括后处理方式,则根据与所述后处理方式对应的数据传输协议获取所述模型服务框架输出的计算结果;根据所述后处理方式对所述计算结果进行可视化处理,得到处理结果。
一种模型部署装置,所述装置包括:
获取模块,用于获取已完成训练的模型计算组件以及与所述模型计算组件对应的配置参数;
数据传输协议确定模块,用于根据所述模型计算组件以及与所述模型计算组件对应的配置参数确定所述模型计算组件的数据传输协议;
模型配置文件生成模块,用于根据所述模型计算组件、所述模型计算组件对应的配置参数以及所述模型计算组件的数据传输协议生成模型配置文件,所述模型配置文件为对所述模型计算组件进行模型部署的配置。
在其中一个实施例中,所述配置参数包括所述模型计算组件的运行环境参数,所述装置还包括关联关系建立模块:用于根据所述模型计算组件的运行环境参数建立所述模型计算组件与所述运行环境参数匹配的docker容器之间的关联关系,并存储所述关联关系,所述关联关系用于指示所述模型计算组件在对应的docker容器中运行。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如上方法所示的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上方法所示的步骤。
上述模型部署方法、装置、计算机设备和存储介质,通过服务器获取已完成训练的模型计算组件以及与模型计算组件对应的配置参数,并根据模型计算组件以及与模型计算组件对应的配置参数确定模型计算组件的数据传输协议,进而根据模型计算组件、模型计算组件对应的配置参数以及模型计算组件的数据传输协议生成模型配置文件,从而完成相应模型的部署,其通过配置参数实现对模型的定制化部署,且由于整个部署过程在服务器中完成,因此不依赖于本地的部署环境,极大的提高了模型部署的便捷性。
附图说明
图1为一个实施例中模型部署方法的应用环境图;
图2为一个实施例中模型部署方法的流程示意图;
图3为另一个实施例中模型部署方法的流程示意图;
图4为又一个实施例中模型部署方法的流程示意图;
图5为一个实施例中对业务数据进行业务处理的业务模模型示意图;
图6为一个实施例中模型部署装置的结构框图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的模型部署方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。具体地,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器、或者是多个服务器组成的服务器集群、或者是云服务器来实现。由于传统的模型部署需要基于模型的语言和环境进行相应的部署,对于跨语言或环境的部署过程较为繁琐,基于此,本申请将模型部署模块化,通过服务器获取已完成训练的模型计算组件以及与模型计算组件对应的配置参数,并根据模型计算组件以及与模型计算组件对应的配置参数确定模型计算组件的数据传输协议,进而根据模型计算组件、模型计算组件对应的配置参数以及模型计算组件的数据传输协议生成模型配置文件,从而完成相应模型的部署,其通过配置参数实现对模型的定制化部署,且由于整个部署过程在服务器中完成,因此不依赖于本地的部署环境,极大的提高了模型部署的便捷性。
在一个实施例中,如图2所示,提供了一种模型部署方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤202,获取已完成训练的模型计算组件以及与模型计算组件对应的配置参数。
其中,模型是对于某个实际问题或客观事物、规律进行抽象后的一种形式化表达方式,而模型计算组件则是基于这种表达方式进行相应的代码封装后得到的程序模块。配置参数是指该模型计算组件的初始设置和为该模型计算组件配置的信息,其中,初始设置可以是指模型计算组件本身的属性信息,如模型计算组件的运行环境参数,而配置的信息则可以是用户对模型计算组件的自定义部分,如用户自定义的模型计算组件的处理方式等。在本实施例中,当基于业务处理需求而需要部署某一模型时,且为了避免因模型语言和运行环境与本地环境的不匹配而导致跨平台部署较为繁琐的问题,本实施例可以通过在服务器中进行模型的部署。即将需要部署的已完成训练的模型计算组件上传至服务器中,同时,服务器还可以获取与该模型计算组件对应的配置参数,并通过执行后续步骤完成对模型的部署。
步骤204,根据模型计算组件以及与模型计算组件对应的配置参数确定模型计算组件的数据传输协议。
其中,数据传输协议是指用于在模型计算组件上传输数据的接口协议。可以理解的是,基于模型计算组件所对应的表达方式不同、模型计算组件的运行环境的不同或者用户对模型计算组件的自定义部分的不同等,该模型计算组件对应的数据传输协议也可以不同。因此,在本实施例中,可以根据模型计算组件以及与模型计算组件对应的配置参数而确定该模型计算组件的数据传输协议。
步骤206,根据模型计算组件、模型计算组件对应的配置参数以及模型计算组件的数据传输协议生成模型配置文件。
其中,模型配置文件是一种计算机文件。具体地,模型配置文件是基于业务处理需求而对模型计算组件、对应的配置参数以及数据传输协议进行封装后得到的模型文件,其也是对模型计算组件进行模型部署的配置,基于该模型配置文件可以实现对模型计算组件的调度管理。在本实施例中,服务器根据模型计算组件、模型计算组件对应的配置参数以及模型计算组件的数据传输协议生成模型配置文件,即完成相应模型的部署。
上述模型部署方法,通过服务器获取已完成训练的模型计算组件以及与模型计算组件对应的配置参数,并根据模型计算组件以及与模型计算组件对应的配置参数确定模型计算组件的数据传输协议,进而根据模型计算组件、模型计算组件对应的配置参数以及模型计算组件的数据传输协议生成模型配置文件,从而完成相应模型的部署,其通过配置参数实现对模型的定制化部署,且由于整个部署过程在服务器中完成,因此不依赖于本地的部署环境,极大的提高了模型部署的便捷性。
在一个实施例中,配置参数包括模型计算组件的运行环境参数,则上述方法还包括:根据模型计算组件的运行环境参数建立模型计算组件与运行环境参数匹配的docker容器之间的关联关系,并存储该关联关系。其中,该关联关系用于指示模型计算组件在对应的docker容器中运行。具体的,运行环境是指模型计算组件运行所需的环境,一种介乎编译器及直译器的执行方式;运行环境参数则是指运行环境所对应的具体执行方式信息,如Java运行环境。docker容器则是服务器中预先设置的与各种运行环境参数分别对应的可移植镜像,基于这种对应关系使得模型计算组件与docker容器之间也具有相应的关联关系。在本实施例中,根据模型计算组件的运行环境参数确定与该运行环境参数匹配的docker容器,进而建立模型计算组件与该docker容器之间的关联关系,从而使得当模型计算组件被调用时,可以根据该关联关系在对应的docker容器中运行该模型计算组件。从而无须考虑本地的部署环境,而是通过在服务器中直接调用模型服务,从而节省了在本地部署或跨平台部署模型的资源浪费,且可以实现各种运行环境下模型的兼容部署。
在一个实施例中,配置参数还包括模型计算组件的处理方式,其中,处理方式包括预处理方式和后处理方式中的至少一种。而预处理方式是指调用模型计算组件进行业务处理前,先进行相应的预处理,即模型计算组件对预处理结果进一步处理。具体地,预处理包括对数据的归一化处理、标准化处理、缺省值填充处理等方式。而后处理方式是指对模型计算组件进行处理后的结果进一步处理,通过后处理可以实现对模型计算组件的处理结果的可视化,如将处理结果为json的字符串转换为excel表格,或将处理结果为概率的数据转换为输出预测类别等。
进一步地,根据模型计算组件以及与模型计算组件对应的配置参数确定模型计算组件的数据传输协议,具体包括:若模型计算组件的处理方式中包括预处理方式,则根据模型计算组件以及对应的预处理方式确定向模型计算组件输入数据的数据传输协议;若模型计算组件的处理方式中包括后处理方式,则根据模型计算组件以及对应的后处理方式确定从模型计算组件输出数据的数据传输协议。由于传统技术中,对于用户的自定义操作部分只能通过编码的方式将其固化到模型的配置中实现,从而导致实现过程较为繁琐。而本申请是基于模块化的方式进行模型部署,从而根据模型计算组件以及用户自定义的处理方式,而确定向模型计算组件输入数据的数据传输协议或从模型计算组件输出数据的数据传输协议,从而在尽可能保证服务标准化的前提下,可以根据用户对不同模块的组合而实现模型的定制化部署。
在一个实施例中,如图3所示,所述方法还包括如下步骤:
步骤302,接收目标账户的模型调用请求。
其中,模型调用请求中包括请求调用的模型计算组件的模型配置文件以及请求模型计算组件处理业务的业务数据,而模型配置文件中又包括与请求调用的模型计算组件对应的配置参数,具体地,模型配置文件是对请求调用的模型计算组件进行模型部署的配置,基于该模型配置文件可以实现对请求调用的模型计算组件的调度管理;配置参数则包括请求调用的模型计算组件的运行环境参数。业务数据则是基于具体处理业务的需求而需要请求调用的模型计算组件进行处理的数据,例如,若具体的处理业务为信用卡申请业务,则对应的业务数据可以包括申请人姓名、年龄以及收入等个人信息。在本实施例中,由于模型部署在服务器中,当用户需要调用服务器中的模型进行业务处理时,则可以向服务器发送包括请求调用的模型计算组件的模型配置文件以及请求处理业务的业务数据的模型调用请求,从而使得服务器可以根据后续步骤进行相应的业务处理。
步骤304,根据请求调用的模型计算组件的运行环境参数将模型计算组件加载到与运行环境参数匹配的docker容器中,形成模型服务框架。
其中,模型服务框架是指可以进行业务处理以提供模型服务的计算框架。由于模型配置文件中包括与请求调用的模型计算组件对应的配置参数,而配置参数又包括请求调用的模型计算组件的运行环境参数,又由于服务器中预先建立了与各种运行环境参数匹配的docker容器,因此,基于请求调用的模型计算组件的运行环境参数可以确定对应的docker容器,进而可以将请求调用的模型计算组件加载到对应的docker容器运行,从而形成模型服务框架。
步骤306,基于模型配置文件确定模型服务框架对业务数据的处理方式以及对应的数据传输协议。
具体地,模型配置文件中还包括请求调用的模型计算组件的处理方式的配置参数,其中,处理方式包括预处理方式和后处理方式中的至少一种。在本实施例中,如果配置文件中对请求调用的模型计算组件的处理方式为预处理方式,则根据请求调用的模型计算组件以及对应的预处理方式确定向该请求调用的模型计算组件输入数据的数据传输协议;如果配置文件中对请求调用的模型计算组件的处理方式为后处理方式,则根据请求调用的模型计算组件以及对应的后处理方式确定从该请求调用的模型计算组件输出数据的数据传输协议。如果配置文件中对请求调用的模型计算组件的处理方式既包括预处理方式也包括后处理方式,则根据请求调用的模型计算组件以及对应的预处理方式和后处理方式,确定向该请求调用的模型计算组件输入数据的数据传输协议以及确定从该请求调用的模型计算组件输出数据的数据传输协议。可以理解的是,基于对请求调用的模型计算组件的处理方式的不同,或在同种处理方式下具体的处理手段的不同,其对应的数据传输协议也可能不同。
步骤308,根据模型服务框架、处理方式和对应的数据传输协议对业务数据进行处理,得到处理结果。
具体地,若处理方式中包括预处理方式,则根据预处理方式对业务数据进行预处理,得到预处理后的数据,进而采用与预处理方式对应的数据传输协议向模型服务框架输入该预处理后的数据,以指示模型服务框架根据设定的算法对预处理后的数据进行计算。若处理方式中包括后处理方式,则根据与后处理方式对应的数据传输协议获取从模型服务框架输出的计算结果,进而根据后处理方式对该计算结果进行可视化处理,从而得到最终的处理结果。
步骤310,向目标账户返回处理结果。
具体地,服务器在完成上述处理后,可以向目标账户返回对应的处理结果,从而无需在本地部署模型的情况下,达到与本地部署模型所提供服务的相同效果。
如图4所示,举例来说,以具体的处理业务为信用卡申请业务为例来说,则本申请的模型部署方法具体包括如下步骤:
步骤401,获取已完成训练的模型计算组件以及与模型计算组件对应的配置参数。
其中,已完成训练的模型计算组件为具体的申请卡评分模型计算组件,用于对申请信用卡的用户进行评分。与模型计算组件对应的配置参数则包括该申请卡评分模型计算组件的运行环境参数以及根据数据处理需求选择的处理方式。在本实施例中,通过将已训练好的申请卡评分模型计算组件上传至服务器进行模型部署。
步骤402,根据模型计算组件的运行环境参数建立模型计算组件与运行环境参数匹配的docker容器之间的关联关系。
具体地,根据申请卡评分模型计算组件的运行环境参数确定服务器中与该运行环境参数匹配的docker容器,进而建立申请卡评分模型计算组件与该docker容器之间的关联关系。
步骤403,根据模型计算组件以及与模型计算组件对应的配置参数确定模型计算组件的数据传输协议。
假设本申请中的处理方式包括预处理方式和后处理方式,则可以确定对应的数据传输协议包括向该申请卡评分模型计算组件输入数据的数据传输协议以及确定从该申请卡评分模型计算组件输出数据的数据传输协议。
步骤404,根据模型计算组件、模型计算组件对应的配置参数以及模型计算组件的数据传输协议生成模型配置文件。
步骤405,接收目标账户的模型调用请求。
其中,模型调用请求中包括请求调用的模型计算组件的模型配置文件以及请求处理业务的业务数据。具体地,请求调用的模型计算组件为具体的申请卡评分模型计算组件,用于对申请信用卡的用户进行评分。而目标账户则可以是接收信用卡申请的银行工作人员。业务数据可以包括申请人姓名、年龄以及收入等申请信用卡的用户的个人信息。
步骤406,根据请求调用的申请卡评分模型计算组件的运行环境参数将该模型计算组件加载到对应的docker容器中,形成模型服务框架。
步骤407,基于模型配置文件确定模型服务框架对业务数据的处理方式以及对应的数据传输协议。
具体地,在确定模型服务框架对业务数据的处理方式以及对应的数据传输协议之后,即可得到如图5所示的业务模型,其包括与预处理方式对应的数据预处理模块、与后处理方式对应的数据后处理模块、请求调用的申请卡评分模型计算组件以及输出模块,其中,申请卡评分模型计算组件可以基于对应的模型配置文件进行调用,并加载到对应的docker容器中运行,从而形成提供模型计算的模型服务框架。
步骤408,根据模型服务框架、处理方式和对应的数据传输协议对业务数据进行处理,得到处理结果。
步骤409,向目标账户返回处理结果。
具体对业务数据进行处理的过程如图5所示,通过将上述业务数据输入数据预处理模块进行预处理,例如对输入的业务数据进行归一化、标准化、缺省值填充等处理,数据预处理模块基于上述确定的向申请卡评分模型计算组件输入数据的数据传输协议,将预处理后的数据输入对应的模型服务框架,该模型服务框架通过调用相应的模型服务,在本实施例中,调用的模型服务为申请卡评分模型计算组件,基于模型调用请求中的模型配置文件调用相应的docker环境,从而在该环境中运行该申请卡评分模型计算组件,使其对预处理后的数据进行计算,得到模型计算结果。模型计算结果则进入后处理模块进行处理,其具体的处理方式可以基于用户自定义的方式执行,如对于本申请中对申请信用卡的用户进行评分来说,用户可以根据需要选择将模型计算的概率结果转换为输出分数的处理结果,或者转换为输出分类结果,如输出符合申请或不符合申请的具体类别,从而提高处理结果的可视化程度。
应该理解的是,虽然图1-5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-5中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图6所示,提供了一种模型部署装置,包括:获取模块601、数据传输协议确定模块602和模型配置文件生成模块603,其中:
一种模型部署装置,所述装置包括:
获取模块,用于获取已完成训练的模型计算组件以及与所述模型计算组件对应的配置参数;
数据传输协议确定模块,用于根据所述模型计算组件以及与所述模型计算组件对应的配置参数确定所述模型计算组件的数据传输协议;
模型配置文件生成模块,用于根据所述模型计算组件、所述模型计算组件对应的配置参数以及所述模型计算组件的数据传输协议生成模型配置文件,所述模型配置文件为对所述模型计算组件进行模型部署的配置。
在一个实施例中,配置参数包括所述模型计算组件的运行环境参数,则上述装置还包括关联关系建立模块:用于根据模型计算组件的运行环境参数建立模型计算组件与运行环境参数匹配的docker容器之间的关联关系,并存储关联关系,所述关联关系用于指示模型计算组件在对应的docker容器中运行。
在一个实施例中,配置参数还包括所述模型计算组件的处理方式,所述模型计算组件的处理方式包括预处理方式和后处理方式中的至少一种;则数据传输协议确定模块具体用于:若模型计算组件的处理方式中包括预处理方式,则根据模型计算组件以及对应的预处理方式确定向模型计算组件输入数据的数据传输协议;若模型计算组件的处理方式中包括后处理方式,则根据模型计算组件以及对应的后处理方式确定从模型计算组件输出数据的数据传输协议。
在一个实施例中,所述装置还包括:模型调用请求接收模块,用于接收目标账户的模型调用请求,所述模型调用请求中包括请求调用的模型计算组件的模型配置文件以及请求处理业务的业务数据,所述模型配置文件中包括与请求调用的模型计算组件对应的配置参数,所述配置参数包括请求调用的模型计算组件的运行环境参数;加载模块,用于根据请求调用的模型计算组件的运行环境参数将所述模型计算组件加载到与所述运行环境参数匹配的docker容器中,形成模型服务框架;确定模块,用于基于所述模型配置文件确定所述模型服务框架对所述业务数据的处理方式以及对应的数据传输协议;业务处理模块,用于根据所述模型服务框架、所述处理方式和对应的数据传输协议对所述业务数据进行处理,得到处理结果;发送模块,用于向所述目标账户返回所述处理结果。
在一个实施例中,所述模型配置文件中包括请求调用的模型计算组件的处理方式,所述处理方式包括预处理方式和后处理方式中的至少一种;所述业务处理模块具体用于:若所述处理方式中包括预处理方式,则根据所述预处理方式对所述业务数据进行预处理,得到预处理后的数据;采用与所述预处理方式对应的数据传输协议向所述模型服务框架输入所述预处理后的数据,以指示所述模型服务框架根据设定的算法对所述预处理后的数据进行计算。
在一个实施例中,所述业务处理模块还用于:若所述处理方式中包括后处理方式,则根据与所述后处理方式对应的数据传输协议获取所述模型服务框架输出的计算结果;根据所述后处理方式对所述计算结果进行可视化处理,得到处理结果。
关于模型部署装置的具体限定可以参见上文中对于模型部署方法的限定,在此不再赘述。上述模型部署装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储模型计算组件及对应的模型配置文件等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种模型部署方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取已完成训练的模型计算组件以及与所述模型计算组件对应的配置参数;
根据所述模型计算组件以及与所述模型计算组件对应的配置参数确定所述模型计算组件的数据传输协议;
根据所述模型计算组件、所述模型计算组件对应的配置参数以及所述模型计算组件的数据传输协议生成模型配置文件,所述模型配置文件为对所述模型计算组件进行模型部署的配置。
在一个实施例中,所述配置参数包括所述模型计算组件的运行环境参数,则处理器执行计算机程序时还实现以下步骤:根据所述模型计算组件的运行环境参数建立所述模型计算组件与所述运行环境参数匹配的docker容器之间的关联关系,并存储所述关联关系,所述关联关系用于指示所述模型计算组件在对应的docker容器中运行。
在一个实施例中,所述配置参数还包括所述模型计算组件的处理方式,所述模型计算组件的处理方式包括预处理方式和后处理方式中的至少一种;则处理器执行计算机程序时还实现以下步骤:若所述模型计算组件的处理方式中包括预处理方式,则根据所述模型计算组件以及对应的预处理方式确定向所述模型计算组件输入数据的数据传输协议;若所述模型计算组件的处理方式中包括后处理方式,则根据所述模型计算组件以及对应的后处理方式确定从所述模型计算组件输出数据的数据传输协议。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:接收目标账户的模型调用请求,所述模型调用请求中包括请求调用的模型计算组件的模型配置文件以及请求模型计算组件处理业务的业务数据,所述模型配置文件中包括与请求调用的模型计算组件对应的配置参数,所述配置参数包括请求调用的模型计算组件的运行环境参数;根据请求调用的模型计算组件的运行环境参数将所述模型计算组件加载到与所述运行环境参数匹配的docker容器中,形成模型服务框架;基于所述模型配置文件确定所述模型服务框架对所述业务数据的处理方式以及对应的数据传输协议;根据所述模型服务框架、所述处理方式和对应的数据传输协议对所述业务数据进行处理,得到处理结果;向所述目标账户返回所述处理结果。
在一个实施例中,所述模型配置文件中包括请求调用的模型计算组件的处理方式,所述处理方式包括预处理方式和后处理方式中的至少一种;处理器执行计算机程序时还实现以下步骤:若所述处理方式中包括预处理方式,则根据所述预处理方式对所述业务数据进行预处理,得到预处理后的数据;采用与所述预处理方式对应的数据传输协议向所述模型服务框架输入所述预处理后的数据,以指示所述模型服务框架根据设定的算法对所述预处理后的数据进行计算。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:若所述处理方式中包括后处理方式,则根据与所述后处理方式对应的数据传输协议获取所述模型服务框架输出的计算结果;根据所述后处理方式对所述计算结果进行可视化处理,得到处理结果。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取已完成训练的模型计算组件以及与所述模型计算组件对应的配置参数;
根据所述模型计算组件以及与所述模型计算组件对应的配置参数确定所述模型计算组件的数据传输协议;
根据所述模型计算组件、所述模型计算组件对应的配置参数以及所述模型计算组件的数据传输协议生成模型配置文件,所述模型配置文件为对所述模型计算组件进行模型部署的配置。
在一个实施例中,所述配置参数包括所述模型计算组件的运行环境参数,则计算机程序被处理器执行时还实现以下步骤:根据所述模型计算组件的运行环境参数建立所述模型计算组件与所述运行环境参数匹配的docker容器之间的关联关系,并存储所述关联关系,所述关联关系用于指示所述模型计算组件在对应的docker容器中运行。
在一个实施例中,所述配置参数还包括所述模型计算组件的处理方式,所述模型计算组件的处理方式包括预处理方式和后处理方式中的至少一种;则计算机程序被处理器执行时还实现以下步骤:若所述模型计算组件的处理方式中包括预处理方式,则根据所述模型计算组件以及对应的预处理方式确定向所述模型计算组件输入数据的数据传输协议;若所述模型计算组件的处理方式中包括后处理方式,则根据所述模型计算组件以及对应的后处理方式确定从所述模型计算组件输出数据的数据传输协议。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:接收目标账户的模型调用请求,所述模型调用请求中包括请求调用的模型计算组件的模型配置文件以及请求模型计算组件处理业务的业务数据,所述模型配置文件中包括与请求调用的模型计算组件对应的配置参数,所述配置参数包括请求调用的模型计算组件的运行环境参数;根据请求调用的模型计算组件的运行环境参数将所述模型计算组件加载到与所述运行环境参数匹配的docker容器中,形成模型服务框架;基于所述模型配置文件确定所述模型服务框架对所述业务数据的处理方式以及对应的数据传输协议;根据所述模型服务框架、所述处理方式和对应的数据传输协议对所述业务数据进行处理,得到处理结果;向所述目标账户返回所述处理结果。
在一个实施例中,所述模型配置文件中包括请求调用的模型计算组件的处理方式,所述处理方式包括预处理方式和后处理方式中的至少一种;计算机程序被处理器执行时还实现以下步骤:若所述处理方式中包括预处理方式,则根据所述预处理方式对所述业务数据进行预处理,得到预处理后的数据;采用与所述预处理方式对应的数据传输协议向所述模型服务框架输入所述预处理后的数据,以指示所述模型服务框架根据设定的算法对所述预处理后的数据进行计算。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:若所述处理方式中包括后处理方式,则根据与所述后处理方式对应的数据传输协议获取所述模型服务框架输出的计算结果;根据所述后处理方式对所述计算结果进行可视化处理,得到处理结果。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (9)

1.一种模型部署方法,其特征在于,所述方法包括:
获取已完成训练的模型计算组件以及与所述模型计算组件对应的配置参数;
根据所述模型计算组件以及与所述模型计算组件对应的配置参数确定所述模型计算组件的数据传输协议;
根据所述模型计算组件、所述模型计算组件对应的配置参数以及所述模型计算组件的数据传输协议生成模型配置文件,所述模型配置文件为对所述模型计算组件进行模型部署的配置;
所述配置参数还包括所述模型计算组件的处理方式,所述模型计算组件的处理方式包括预处理方式和后处理方式中的至少一种;所述根据所述模型计算组件以及与所述模型计算组件对应的配置参数确定所述模型计算组件的数据传输协议,包括:若所述模型计算组件的处理方式中包括预处理方式,则根据所述模型计算组件以及对应的预处理方式确定向所述模型计算组件输入数据的数据传输协议;若所述模型计算组件的处理方式中包括后处理方式,则根据所述模型计算组件以及对应的后处理方式确定从所述模型计算组件输出数据的数据传输协议。
2.根据权利要求1所述的方法,其特征在于,所述配置参数包括所述模型计算组件的运行环境参数,所述方法还包括:
根据所述模型计算组件的运行环境参数建立所述模型计算组件与所述运行环境参数匹配的docker容器之间的关联关系,并存储所述关联关系,所述关联关系用于指示所述模型计算组件在对应的docker容器中运行。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收目标账户的模型调用请求,所述模型调用请求中包括请求调用的模型计算组件的模型配置文件以及请求处理业务的业务数据,所述模型配置文件中包括与请求调用的模型计算组件对应的配置参数,所述配置参数包括请求调用的模型计算组件的运行环境参数;
根据请求调用的模型计算组件的运行环境参数将所述模型计算组件加载到与所述运行环境参数匹配的docker容器中,形成模型服务框架;
基于所述模型配置文件确定所述模型服务框架对所述业务数据的处理方式以及对应的数据传输协议;
根据所述模型服务框架、所述处理方式和对应的数据传输协议对所述业务数据进行处理,得到处理结果;
向所述目标账户返回所述处理结果。
4.根据权利要求3所述的方法,其特征在于,所述模型配置文件中包括请求调用的模型计算组件的处理方式,所述处理方式包括预处理方式和后处理方式中的至少一种;所述根据所述模型服务框架、所述处理方式和对应的数据传输协议对所述业务数据进行处理,包括:
若所述处理方式中包括预处理方式,则根据所述预处理方式对所述业务数据进行预处理,得到预处理后的数据;
采用与所述预处理方式对应的数据传输协议向所述模型服务框架输入所述预处理后的数据,以指示所述模型服务框架根据设定的算法对所述预处理后的数据进行计算。
5.根据权利要求4所述的方法,其特征在于,所述根据所述模型服务框架、所述处理方式和对应的数据传输协议对所述业务数据进行处理,还包括:
若所述处理方式中包括后处理方式,则根据与所述后处理方式对应的数据传输协议获取所述模型服务框架输出的计算结果;
根据所述后处理方式对所述计算结果进行可视化处理,得到处理结果。
6.一种模型部署装置,其特征在于,所述装置包括:
获取模块,用于获取已完成训练的模型计算组件以及与所述模型计算组件对应的配置参数;
数据传输协议确定模块,用于根据所述模型计算组件以及与所述模型计算组件对应的配置参数确定所述模型计算组件的数据传输协议;
模型配置文件生成模块,用于根据所述模型计算组件、所述模型计算组件对应的配置参数以及所述模型计算组件的数据传输协议生成模型配置文件,所述模型配置文件为对所述模型计算组件进行模型部署的配置;
所述配置参数还包括所述模型计算组件的处理方式,所述模型计算组件的处理方式包括预处理方式和后处理方式中的至少一种;所述数据传输协议确定模块还用于:若所述模型计算组件的处理方式中包括预处理方式,则根据所述模型计算组件以及对应的预处理方式确定向所述模型计算组件输入数据的数据传输协议;若所述模型计算组件的处理方式中包括后处理方式,则根据所述模型计算组件以及对应的后处理方式确定从所述模型计算组件输出数据的数据传输协议。
7.根据权利要求6所述的装置,其特征在于,所述配置参数包括所述模型计算组件的运行环境参数,所述装置还包括关联关系建立模块:
用于根据所述模型计算组件的运行环境参数建立所述模型计算组件与所述运行环境参数匹配的docker容器之间的关联关系,并存储所述关联关系,所述关联关系用于指示所述模型计算组件在对应的docker容器中运行。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
CN202011030909.3A 2020-09-27 2020-09-27 模型部署方法、装置、计算机设备和存储介质 Active CN112230911B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011030909.3A CN112230911B (zh) 2020-09-27 2020-09-27 模型部署方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011030909.3A CN112230911B (zh) 2020-09-27 2020-09-27 模型部署方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN112230911A CN112230911A (zh) 2021-01-15
CN112230911B true CN112230911B (zh) 2023-12-29

Family

ID=74108724

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011030909.3A Active CN112230911B (zh) 2020-09-27 2020-09-27 模型部署方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN112230911B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115237428A (zh) * 2021-04-24 2022-10-25 华为云计算技术有限公司 Ai应用部署方法及相关平台、集群、介质、程序产品

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107707523A (zh) * 2017-08-21 2018-02-16 时瑞科技(深圳)有限公司 一种基于云端处理的可预处理的控制系统及方法
CN108764808A (zh) * 2018-03-29 2018-11-06 北京九章云极科技有限公司 数据分析处理系统及其在线模型部署方法
CN108958892A (zh) * 2018-08-14 2018-12-07 郑州云海信息技术有限公司 一种创建用于深度学习作业的容器的方法和装置
CN110308910A (zh) * 2019-05-30 2019-10-08 苏宁金融服务(上海)有限公司 算法模型部署以及风险监控的方法、装置和计算机设备
CN111324379A (zh) * 2020-01-15 2020-06-23 携程旅游网络技术(上海)有限公司 基于通用soa服务的模型部署系统
CN111340230A (zh) * 2018-12-18 2020-06-26 北京小桔科技有限公司 一种服务提供方法、装置、服务器及计算机可读存储介质
CN111432022A (zh) * 2020-04-07 2020-07-17 深圳中兴网信科技有限公司 模型部署方法、服务器和计算机可读存储介质
CN111488254A (zh) * 2019-01-25 2020-08-04 顺丰科技有限公司 一种机器学习模型的部署与监控装置和方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10467039B2 (en) * 2017-08-07 2019-11-05 Open Data Group Inc. Deployment and management platform for model execution engine containers

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107707523A (zh) * 2017-08-21 2018-02-16 时瑞科技(深圳)有限公司 一种基于云端处理的可预处理的控制系统及方法
CN108764808A (zh) * 2018-03-29 2018-11-06 北京九章云极科技有限公司 数据分析处理系统及其在线模型部署方法
CN108958892A (zh) * 2018-08-14 2018-12-07 郑州云海信息技术有限公司 一种创建用于深度学习作业的容器的方法和装置
CN111340230A (zh) * 2018-12-18 2020-06-26 北京小桔科技有限公司 一种服务提供方法、装置、服务器及计算机可读存储介质
CN111488254A (zh) * 2019-01-25 2020-08-04 顺丰科技有限公司 一种机器学习模型的部署与监控装置和方法
CN110308910A (zh) * 2019-05-30 2019-10-08 苏宁金融服务(上海)有限公司 算法模型部署以及风险监控的方法、装置和计算机设备
CN111324379A (zh) * 2020-01-15 2020-06-23 携程旅游网络技术(上海)有限公司 基于通用soa服务的模型部署系统
CN111432022A (zh) * 2020-04-07 2020-07-17 深圳中兴网信科技有限公司 模型部署方法、服务器和计算机可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Application deployment using Microservice and Docker containers: Framework and optimization";Xili Wan 等;《Journal of Network and Computer Applications》;第119卷;第97-109页 *
"基于容器云的深度学习平台设计与实现";王宝生 等;《国防科技大学学报》;第21-25页 *

Also Published As

Publication number Publication date
CN112230911A (zh) 2021-01-15

Similar Documents

Publication Publication Date Title
US10956179B1 (en) Third party integration of plugins and widgets
KR102225822B1 (ko) 인공지능 수행을 위한 학습 데이터 생성장치 및 방법
US11042387B2 (en) Deploying cross-platform applications on mobile devices with native and web components
US11900263B2 (en) Augmenting neural networks
US20220237567A1 (en) Chatbot system and method for applying for opportunities
CN110046868A (zh) 一种处理审核信息的方法及设备
CN110737425B (zh) 一种计费平台系统的应用程序的建立方法及装置
CN115358404A (zh) 基于机器学习模型推理的数据处理方法、装置及设备
CN115794437A (zh) 微服务的调用方法、装置、计算机设备及存储介质
CN112230911B (zh) 模型部署方法、装置、计算机设备和存储介质
CN115358401A (zh) 一种推理服务的处理方法、装置、计算机设备及存储介质
CN113360300B (zh) 接口调用链路生成方法、装置、设备及可读存储介质
US20230412538A1 (en) Automated assistant architecture for preserving privacy of application content
CN116932147A (zh) 流式作业处理方法、装置、电子设备及介质
CN112035218A (zh) 一种提供模型服务的方法、装置及设备
CN111949259A (zh) 风险决策配置方法、系统、电子设备及存储介质
CN112235411A (zh) 基于ai的rpa流程控制端的服务器通信方法、装置、设备及介质
CN114116051B (zh) 基于神经网络模型的处理方法、装置、设备和存储介质
CN114997401B (zh) 自适应推理加速方法、装置、计算机设备和存储介质
CN114117010A (zh) Nlp任务的处理方法、装置、终端设备和存储介质
CN117395309A (zh) 数据上报方法、装置、计算机设备及存储介质
CN116594769A (zh) 一种微服务的请求响应方法、系统、计算机设备及介质
CN117806622A (zh) 应用程序的生成方法、装置、电子设备和存储介质
CN114924721A (zh) 代码生成方法、装置、计算机设备及存储介质
CN113590483A (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
CB03 Change of inventor or designer information

Inventor after: Wang Dejia

Inventor after: Yang Boya

Inventor after: Zhu Xuguang

Inventor before: Zhu Xuguang

Inventor before: Wang Dejia

Inventor before: Yang Boya

CB03 Change of inventor or designer information
GR01 Patent grant
GR01 Patent grant