CN111240698A - 模型部署的方法、装置、存储介质及电子设备 - Google Patents
模型部署的方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN111240698A CN111240698A CN202010038078.8A CN202010038078A CN111240698A CN 111240698 A CN111240698 A CN 111240698A CN 202010038078 A CN202010038078 A CN 202010038078A CN 111240698 A CN111240698 A CN 111240698A
- Authority
- CN
- China
- Prior art keywords
- target
- model
- node
- models
- target node
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000004044 response Effects 0.000 claims abstract description 11
- 238000012545 processing Methods 0.000 claims description 93
- 238000004590 computer program Methods 0.000 claims description 12
- 230000015654 memory Effects 0.000 claims description 10
- 238000007726 management method Methods 0.000 description 46
- 238000012549 training Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000010801 machine learning Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 238000003066 decision tree Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000003062 neural network model Methods 0.000 description 4
- 230000002354 daily effect Effects 0.000 description 3
- 238000012821 model calculation Methods 0.000 description 3
- 230000003442 weekly effect Effects 0.000 description 3
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/10—Interfaces, programming languages or software development kits, e.g. for simulating neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开涉及一种模型部署的方法、装置、存储介质及电子设备,可以通过模型管理服务器接收目标节点发送的模型部署请求消息,该模型部署请求消息用于请求部署目标模型集合中的多个目标模型;响应于接收到该模型部署请求消息,获取该目标模型集合中的多个该目标模型;将该目标模型集合中的该多个目标模型发送至该目标节点;当确定该目标模型集合中的每个该目标模型均成功被该目标节点接收后,向该目标节点发送模型装载指令,以便该目标节点根据该模型装载指令装载每个该目标模型;当确定该目标模型集合中的每个该目标模型均成功被该目标节点装载后,控制该目标节点将多个该目标模型作为当前应用模型。
Description
技术领域
本公开涉及模型部署领域,具体地,涉及一种模型部署的方法、装置、存储介质及电子设备。
背景技术
随着机器学习技术的不断发展,机器学习模型(如决策树模型、深度神经网络模型等)广泛应用在各种业务场景中,如外卖配送业务场景,机器学习流程分为线下训练和线上预测阶段,在进行线上预测之前,需要将线下训练好的机器学习模型部署到执行模型计算的服务器各节点内存中,然后传入特征进行模型计算和实时预测。
在实际的应用场景中,存在一个业务(如配送时长预测业务)需要同时依赖多个模型(可以称之为模型集合)来实现的情况,分布式环境下,需要将该模型集合中的多个模型在每个要实现该业务的集群节点中进行部署,但是,相关技术中,模型集合中各个模型的在线部署流程都是相互独立的,无法保证同步执行,即无法保证模型集合中多个模型的最新版本同时部署成功,但若一个服务所依赖的多个模型的版本存在不一致的情况,会影响线上实时预测的结果,从而会加大业务效果的分析难度。
发明内容
本公开的目的是提供一种模型部署的方法、装置、存储介质及电子设备。
第一方面,提供一种模型部署的方法,应用于模型管理服务器,所述方法包括:接收目标节点发送的模型部署请求消息,所述模型部署请求消息用于请求部署目标模型集合中的多个目标模型;响应于接收到所述模型部署请求消息,获取所述目标模型集合中的多个所述目标模型;将所述目标模型集合中的所述多个目标模型发送至所述目标节点;当确定所述目标模型集合中的每个所述目标模型均成功被所述目标节点接收后,向所述目标节点发送模型装载指令,以便所述目标节点根据所述模型装载指令装载每个所述目标模型;当确定所述目标模型集合中的每个所述目标模型均成功被所述目标节点装载后,控制所述目标节点将多个所述目标模型作为当前应用模型。
可选地,所述方法还包括:若接收到所述目标节点发送的针对所述目标模型集合中的每个所述目标模型对应的目标处理事项的处理成功消息,则确定每个所述目标模型对应的目标处理事项均成功完成,所述目标处理事项包括接收该目标模型或者装载该目标模型;或者,若接收到所述目标节点发送的至少一个目标模型对应的所述目标处理事项的处理失败消息,则控制所述目标节点重新执行至少一个所述目标模型对应的目标处理事项,直至接收到所述目标节点发送的所述至少目标模型对应的目标处理事项的处理成功消息。
可选地,若所述目标处理事项为接收该目标模型,所述控制所述目标节点重新执行至少一个所述目标模型对应的目标处理事项包括:重新向所述目标节点发送所述至少一个目标模型;若所述目标处理事项为装载该目标模型,所述控制所述目标节点重新执行至少一个所述目标模型对应的目标处理事项包括:重新向所述目标节点发送对所述至少一个目标模型的模型装载指令。
可选地,所述方法还包括:若连续预设次数接收到所述目标节点发送的至少一个目标模型对应的所述目标处理事项的处理失败消息,确定所述目标模型集合中的全部所述目标模型在所述目标节点部署失败;或者,若在第一预设时间内连续接收到所述目标节点发送的至少一个目标模型对应的所述目标处理事项的处理失败消息,确定所述目标模型集合中的全部所述目标模型在所述目标节点部署失败。
可选地,在所述接收目标节点发送的模型部署请求消息之前,所述方法还包括:确定是否存在待部署的所述目标模型集合;当确定存在所述目标模型集合时,从模型部署节点中确定所述目标节点;向所述目标节点发送模型部署信息,所述模型部署信息包括所述目标模型集合中各个目标模型的标识信息,以便所述目标节点根据所述标识信息,向所述模型管理服务器发送所述模型部署请求消息。
可选地,所述确定是否存在待部署的所述目标模型集合包括:确定预设文件目录下当前是否存在目标预设业务对应的新增模型集合,所述新增模型集合中的多个模型均为在同一个新增预设时间段内产生的模型,所述目标预设业务为多个预设业务中的任一业务;当确定所述预设文件目录下当前存在所述新增模型集合,则确定存在所述目标模型集合;或者,确定是否存在用户选择的模型集合,当确定存在所述用户选择的模型集合时,则确定存在所述目标模型集合。
可选地,所述目标节点包括多个目标节点,所述当确定所述目标模型集合中的每个所述目标模型均成功被所述目标节点接收后,向所述目标节点发送模型装载指令,以便所述目标节点根据所述模型装载指令装载每个所述目标模型包括:当确定所述待部署节点集合中的每个所述目标节点均成功接收所述目标模型集合中的所述多个目标模型后,向每个所述目标节点发送模型装载指令,以便每个所述目标节点根据所述模型装载指令装载所述目标模型集合中的多个所述目标模型;所述当确定所述目标模型集合中的每个所述目标模型均成功被所述目标节点装载后,控制所述目标节点将多个所述目标模型作为当前应用模型包括:当确定所述待部署节点集合中的每个所述目标节点均成功装载所述目标模型集合中的多个所述目标模型后,控制每个所述目标节点将多个所述目标模型作为当前应用模型。
第二方面,提供一种模型部署的装置,应用于模型管理服务器,所述装置包括:接收模块,用于接收目标节点发送的模型部署请求消息,所述模型部署请求消息用于请求部署目标模型集合中的多个目标模型;获取模块,用于响应于接收到所述模型部署请求消息,获取所述目标模型集合中的多个所述目标模型;第一发送模块,用于将所述目标模型集合中的所述多个目标模型发送至所述目标节点;第二发送模块,用于当确定所述目标模型集合中的每个所述目标模型均成功被所述目标节点接收后,向所述目标节点发送模型装载指令,以便所述目标节点根据所述模型装载指令装载每个所述目标模型;第一控制模块,用于当确定所述目标模型集合中的每个所述目标模型均成功被所述目标节点装载后,控制所述目标节点将多个所述目标模型作为当前应用模型。
可选地,所述装置还包括:第一确定模块,用于若接收到所述目标节点发送的针对所述目标模型集合中的每个所述目标模型对应的目标处理事项的处理成功消息,则确定每个所述目标模型对应的目标处理事项均成功完成,所述目标处理事项包括接收该目标模型或者装载该目标模型;或者,第二控制模块,用于若接收到所述目标节点发送的至少一个目标模型对应的所述目标处理事项的处理失败消息,则控制所述目标节点重新执行至少一个所述目标模型对应的目标处理事项,直至接收到所述目标节点发送的所述至少目标模型对应的目标处理事项的处理成功消息。
可选地,若所述目标处理事项为接收该目标模型,所述第二控制模块,用于重新向所述目标节点发送所述至少一个目标模型;若所述目标处理事项为装载该目标模型,所述第二控制模块,用于重新向所述目标节点发送对所述至少一个目标模型的模型装载指令。
可选地,所述装置还包括:第二确定模块,用于若连续预设次数接收到所述目标节点发送的至少一个目标模型对应的所述目标处理事项的处理失败消息,确定所述目标模型集合中的全部所述目标模型在所述目标节点部署失败;或者,若在第一预设时间内连续接收到所述目标节点发送的至少一个目标模型对应的所述目标处理事项的处理失败消息,确定所述目标模型集合中的全部所述目标模型在所述目标节点部署失败。
可选地,所述装置还包括:第三确定模块,用于确定是否存在待部署的所述目标模型集合;第四确定模块,用于当确定存在所述目标模型集合时,从模型部署节点中确定所述目标节点;第三发送模块,用于向所述目标节点发送模型部署信息,所述模型部署信息包括所述目标模型集合中各个目标模型的标识信息,以便所述目标节点根据所述标识信息,向所述模型管理服务器发送所述模型部署请求消息。
可选地,所述第三确定模块,用于确定预设文件目录下当前是否存在目标预设业务对应的新增模型集合,所述新增模型集合中的多个模型均为在同一个新增预设时间段内产生的模型,所述目标预设业务为多个预设业务中的任一业务;当确定所述预设文件目录下当前存在所述新增模型集合,则确定存在所述目标模型集合;或者,确定是否存在用户选择的模型集合,当确定存在所述用户选择的模型集合时,则确定存在所述目标模型集合。
可选地,所述目标节点包括多个目标节点,所述第二发送模块,用于当确定所述待部署节点集合中的每个所述目标节点均成功接收所述目标模型集合中的所述多个目标模型后,向每个所述目标节点发送模型装载指令,以便每个所述目标节点根据所述模型装载指令装载所述目标模型集合中的多个所述目标模型;所述第一控制模块,用于当确定所述待部署节点集合中的每个所述目标节点均成功装载所述目标模型集合中的多个所述目标模型后,控制每个所述目标节点将多个所述目标模型作为当前应用模型。
第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开第一方面所述方法的步骤。
第四方面,提供一种电子设备,包括:存储器,其上存储有计算机程序;处理器,用于执行所述存储器中的所述计算机程序,以实现本公开第一方面所述方法的步骤。
通过上述技术方案,接收目标节点发送的模型部署请求消息,所述模型部署请求消息用于请求部署目标模型集合中的多个目标模型;响应于接收到所述模型部署请求消息,获取所述目标模型集合中的多个所述目标模型;将所述目标模型集合中的所述多个目标模型发送至所述目标节点;当确定所述目标模型集合中的每个所述目标模型均成功被所述目标节点接收后,向所述目标节点发送模型装载指令,以便所述目标节点根据所述模型装载指令装载每个所述目标模型;当确定所述目标模型集合中的每个所述目标模型均成功被所述目标节点装载后,控制所述目标节点将多个所述目标模型作为当前应用模型,这样,只有在确定该目标模型集合中的每个目标模型均成功被目标节点接收后,才会指示目标节点对该目标模型集合中的每个目标模型进行装载,并且只有在确定该目标模型集合中的每个目标模型均成功被目标节点装载后,才会控制该目标节点统一将该多个目标模型作为该目标节点的当前应用模型,也就是说,若确定目标模型集合中的任一目标模型在目标节点接收失败或者装载失败,均不会进行部署的下一步骤,使得目标节点中对应于同一个服务的多个当前应用模型均保持旧版本,从而保证了目标模型集合中的多个目标模型在目标节点进行模型部署时版本的一致性。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据一示例性实施例示出的第一种模型部署的方法的流程图;
图2是根据一示例性实施例示出的第二种模型部署的方法的流程图;
图3是根据一示例性实施例示出的第三种模型部署的方法的流程图;
图4是根据一示例性实施例示出的第一种模型部署的装置的框图;
图5是根据一示例性实施例示出的第二种模型部署的装置的框图;
图6是根据一示例性实施例示出的第三种模型部署的装置的框图;
图7是根据一示例性实施例示出的第四种模型部署的装置的框图;
图8是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
本公开主要应用于分布式环境下模型部署的场景中,在分布式文件系统(HadoopDistributed File System,HDFS)中,假如一个服务(如外卖配送时长预测服务)需要装载多个有依赖关系的目标模型(可以称之为模型集合,如XGBoost模型和TensorFlow模型),而每个目标模型通常会按照预设周期(如每天或者每周)重新训练生成一个新版本,假设该服务有100个服务节点,需要将该最新版本的多个目标模型部署到100个服务节点的内存中,待后续进行实时预测,现有的模型部署方案是各个目标模型各自独立进行部署,并且该100个服务节点各自定时执行模型部署任务,也就是说,具有依赖关系的各个目标模型的模型部署流程,以及该100个服务节点部署模型的流程各自均是独立的任务,不能保证同步执行,当部署任务的任何一个环节出问题,都有可能导致模型集合中的各个模型存在版本不一致,和/或该节点部署的模型版本与其它节点不一致,但在实际的业务实现过程中,无论是对于多个节点中部署的同一模型的模型版本不一致,还是对于在同一节点部署的一个服务所依赖的多个模型的版本存在不一致的情况,均会影响线上实时预测的结果,从而会加大业务效果的分析难度。
为解决上述存在的问题,本公开提供一种模型部署的方法、装置、存储介质及电子设备,该方法可以应用于模型管理服务器,本公开以目标模型集合中的多个目标模型作为模型部署的控制整体,该目标模型集合中的多个目标模型同步地进行模型下载、装载和切换,以保证该目标模型集合中多个目标模型的模型部署一致性,与此同时,若存在多个目标节点均需部署该目标模型集合中的多个目标模型,可以将该多个目标节点组成的待部署节点集合作为另一个模型部署的控制整体,该待部署节点集合中的多个目标节点同步的进行模型下载、装载和切换,以保证该待部署节点集合中多个目标节点模型部署一致性。
具体地,首先可以接收待部署节点集合中的每个目标节点发送的模型部署请求消息,该模型部署请求消息用于请求部署目标模型集合中的多个目标模型,模型管理服务器响应于接收到该模型部署请求消息,获取该目标模型集合中的多个目标模型,并且将该多个目标模型发送至每个目标节点,之后每个该目标节点可以接收该多个目标模型(可以理解为目标节点下载该多个目标模型),模型管理服务器可以根据该目标节点返回的对每个目标模型的接收通知消息(包括接收成功消息或者接收失败消息),确定该目标模型集合中的每个该目标模型是否均成功被该目标节点接收,若确定该目标模型集合中的每个该目标模型均成功被该目标节点接收,可以向该目标节点发送模型装载指令,以便该目标节点根据该模型装载指令装载每个该目标模型,同样的,当确定该目标模型集合中的每个该目标模型均成功被该目标节点装载后,可以控制该目标节点将多个该目标模型作为当前应用模型,这样,只有在确定该目标模型集合中的每个目标模型均成功被目标节点接收后,才会指示目标节点对该目标模型集合中的每个目标模型进行装载,并且只有在确定该目标模型集合中的每个目标模型均成功被该目标节点装载后,才会控制该目标节点统一将该多个目标模型作为该目标节点的当前应用模型,也就是说,若确定目标模型集合中的任一目标模型在目标节点接收失败或者装载失败,均不会进行部署的下一步骤,使得目标节点中的多个当前应用模型均保持旧版本,从而保证了目标模型集合中的多个目标模型在目标节点进行模型部署时版本的一致性。
下面结合附图,对本公开的具体实施方式进行说明。
图1是根据一示例性实施例示出的一种模型部署的方法的流程图,该方法可以应用于模型管理服务器,如图1所示,该方法包括以下步骤:
在步骤101中,接收目标节点发送的模型部署请求消息,该模型部署请求消息用于请求部署目标模型集合中的多个目标模型。
其中,该目标节点可以包括根据业务需求需要同时部署该目标模型集合中的多个该目标模型的节点,并且该目标节点可以包括一个或者多个,该目标模型可以包括重新训练得到的最新版本的模型(通常可以通过Spark/MR训练得到该目标模型),或者用户选择的任一版本的模型(例如,用户操作模型版本降级,使得目标节点的当前应用模型恢复到之前的某个版本),该目标模型可以包括决策树模型、神经网络模型等机器学习模型,该目标模型集合为由对应于同一业务的多个该目标模型组成的集合,也就是说,一个业务(如配送时长预测业务)需要同时依赖该目标模型集合中的多个该目标模型来实现,另外,该目标模型集合中的多个该目标模型通常为在同一个预设时间段内训练产生的模型,并且每个该目标模型可以按照预设版本更新频率(如每天或者每周)重新训练生成一个新版本。
模型部署通常包括模型下载、模型装载以及模型切换(或者模型使用),在本步骤中,该模型部署请求消息可以包括模型下载请求信息,进一步地,该模型下载请求信息可以包括该目标模型集合中各个目标模型的标识信息,用于请求下载该目标模型集合中的多个该目标模型。
需要说明的是,在执行本步骤之前,通常需要确定是否存在待部署的该目标模型集合,若确定存在该目标模型集合,可以从分布式集群环境下各个模型部署节点中确定该目标节点,然后向该目标节点发送模型部署信息,该模型部署信息包括该目标模型集合中各个目标模型的标识信息,以便该目标节点可以根据该标识信息,向该模型管理服务器发送该模型部署请求消息。其中,该模型部署节点可以包括需要依赖该目标模型集合中的全部目标模型完成模型计算的节点,该目标节点可以为该模型部署节点中还未部署该目标模型集合中的多个该目标模型的节点。
在本公开中,可以通过以下两种方式中的任意一种方式确定是否存在待部署的该目标模型集合:
方式一:可以通过确定预设文件目录下当前是否存在目标预设业务对应的新增模型集合,该新增模型集合中的多个模型均为在同一个新增预设时间段内产生的模型,该目标预设业务为多个预设业务中的任一业务;当确定该预设文件目录下当前存在该新增模型集合,则确定存在该目标模型集合。
其中,该预设文件目录为分布式文件系统中用户预先设置的文件目录,在一种可能的实现方式中,可以预先设置模型集合中各个模型的版本更新频率,例如,若该版本更新频率为每天更新一次,该预设时间段即为历史时间中的某一天,此时,若当前时刻为11月27号的24点,该新增预设时间段即为11月27号的0点到24点,此时,该新增模型集合即为由同一业务实现所依赖的,并且均在11月27号的0点到24点这个时间段内训练产生的多个模型组成的集合,此处仅是举例说明,本公开对此不作限定。
在分布式文件系统中,在通过线下训练得到由最新版本的多个模型组成的该新增模型集合之前,通常需要在模型管理服务器上进行模型注册,例如,定义模型集合的名称、模型名称、模型类型、模型版本信息以及模型集合在该HDFS的预设文件目录下的存储路径等注册信息,并且为便于查询,可以将同一业务实现所依赖的多个模型作为一个模型集合存储在同一路径下,这样,在训练生成该最新版本的模型,并得到该新增模型集合后,可以根据上述注册信息对该新增模型集合进行标记,并将该新增模型集合上传至对应的存储路径下进行存储,因此,在方式一中,可以通过对HDFS下的预设文件目录进行定时扫描,来确定是否存在该新增模型集合,在确定存在该新增模型集合时,可以确定存在待部署的该目标模型。
方式二:确定是否存在用户选择的模型集合,当确定存在该用户选择的模型集合时,则确定存在该目标模型集合。
在方式二中,考虑到在实际的应用场景中,对应于不同的业务需求,用户也可以在已经生成的对应于同一个预设业务的多个模型集合(一个预设业务可以对应多个模型集合,不同的模型集合中的同一模型的模型版本不相同,同一模型集合中的多个模型的模型版本相同)中选择任一模型集合作为该目标模型集合,并对该目标模型集合中的多个目标模型进行部署,例如,用户可以操作模型版本降级,使得目标节点的多个当前应用模型均恢复到之前的某个版本,因此,在方式二中,若获取到用户选择的模型集合,可以确定存在该目标模型集合。
在实际的模型部署场景中,每个节点在完成模型部署后,可以将该节点最新部署的模型的模型标识信息(如模型名称、版本号等)上报至模型管理服务器,以便模型管理服务器可以及时掌握各节点正在使用的该当前应用模型,因此,该模型管理服务器可以根据每个节点上报的该模型标识信息确定每个该模型部署节点的该当前应用模型,若该模型部署节点中对应于同一目标业务的多个该当前应用模型中的每个该当前应用模型,与该目标模型集合(该目标模型集合为与该目标业务对应的其中一个模型集合)中对应的该目标模型的版本号均不相同,可以视为该当前应用模型与该目标模型不一致,此时,可以确定该模型部署节点为该目标节点。
在步骤102中,响应于接收到该模型部署请求消息,获取该目标模型集合中的多个该目标模型。
在一种可能的实现方式中,该模型管理服务器在接收到该模型部署请求消息后,可以获知待部署的多个该目标模型分别对应的模型标识信息,然后基于模型标识信息与模型集合标识信息的对应关系,可以进一步确定由该多个目标模型组成的该目标模型集合的目标集合标识信息,在本步骤中,为便于更快速地获取到该目标模型集合,可以基于确定的该目标集合标识信息先在该模型管理服务器的本地存储空间中查找该目标模型集合,若在该本地存储空间中未查找到该目标模型集合,可以将该模型部署请求消息转发至远程服务器,以便从该远程服务器下载该目标模型集合中的多个该目标模型,并在下载完成后,将该目标模型集合存储至该本地存储空间,以便其它目标节点可以直接从该本地存储空间中获取该目标模型集合,以提高模型获取的速率,进而提高模型部署的效率。
在步骤103中,将该目标模型集合中的该多个目标模型发送至该目标节点。
在步骤104中,当确定该目标模型集合中的每个该目标模型均成功被该目标节点接收后,向该目标节点发送模型装载指令,以便该目标节点根据该模型装载指令装载每个该目标模型。
在步骤105中,当确定该目标模型集合中的每个该目标模型均成功被该目标节点装载后,控制该目标节点将多个该目标模型作为当前应用模型。
在实际的模型部署场景中,该目标模型集合中的每个目标模型在被部署的过程中最终的状态有两种,一种是该目标模型被目标节点成功部署,该目标节点启用最新版本的该目标模型,另一种是模型部署任务的某环节重试若干次失败(或者达到第一预设时间时,仍失败)导致该目标模型在该目标节点部署失败,该目标节点不执行模型切换,继续使用与该目标模型对应的原版本模型,因此,为保证目标模型集合中多个该目标模型部署时版本的一致性,需要对该目标模型集合中各目标模型的每个模型部署环节进行控制。
在本公开模型部署的控制过程中,可以采用上报心跳的方式,对部署每个目标模型的各环节进行控制,即为目标节点向该模型管理服务器发送目标处理事项的处理通知消息(该处理通知消息包括处理成功消息或者处理失败消息,例如可以用1表示处理成功,用0表示处理失败),该目标处理事项可以包括接收该目标模型或者装载该目标模型,因此,在步骤104中,若接收到目标节点发送的,对该目标模型集合中的每个该目标模型均接收成功(即下载成功)的处理成功消息,则确定该目标模型集合中的每个该目标模型均成功被该目标节点接收,进一步可以理解为每个该目标模型均成功被该目标节点下载,在步骤105中,若接收到该目标节点发送的,对该目标模型集合中的每个该目标模型均成功装载的处理成功消息,则确定该目标模型集合中的每个该目标模型均成功被该目标节点装载。
另外,若接收到该目标节点发送的至少一个目标模型对应的该目标处理事项的处理失败消息,则控制该目标节点重新执行至少一个该目标模型对应的目标处理事项,直至接收到该目标节点发送的该至少目标模型对应的目标处理事项的处理成功消息,其中,若该目标处理事项为接收该目标模型,可以重新向该目标节点发送该至少一个目标模型;若该目标处理事项为装载该目标模型,可以重新向该目标节点发送对该至少一个目标模型的模型装载指令。
考虑到实际的应用场景中,可能会因为网络或者设备出现问题,而导致在一段时间内连续接收到该目标节点发送的对该目标模型集合中的一个或者多个目标模型对应的目标处理事项的处理失败消息,此时,为保证对目标模型集合中的每个目标模型部署时版本的一致性,在一种可能的实现方式中,若连续预设次数接收到该目标节点发送的至少一个目标模型对应的该目标处理事项的处理失败消息,确定该目标模型集合中的全部该目标模型在该目标节点部署失败;或者,若在第一预设时间内连续接收到该目标节点发送的至少一个目标模型对应的该目标处理事项的处理失败消息,确定该目标模型集合中的全部该目标模型在该目标节点部署失败,也就是说,在该目标模型集合中的至少一个该目标模型部署失败时,即可以视为该目标模型集合中全部目标模型部署失败,此时,目标节点中对应于同一目标业务的多个模型均保持旧版本的模型,以此保证对模型集合中多个模型部署时版本的一致性。
采用上述方法,只有在确定该目标模型集合中的每个目标模型均成功被目标节点接收后,才会指示目标节点对该目标模型集合中的每个目标模型进行装载,并且只有在确定该目标模型集合中的每个目标模型均成功被目标节点装载后,才会控制该目标节点统一将该多个目标模型作为该目标节点的当前应用模型,也就是说,若确定目标模型集合中的任一目标模型在目标节点接收失败或者装载失败,均不会进行部署的下一步骤,使得目标节点中的多个当前应用模型均保持旧版本,从而保证了目标模型集合中的多个目标模型在目标节点进行模型部署时版本的一致性。
图2是根据一示例性实施例示出的一种模型部署的方法的流程图,该方法应用于模型管理服务器,如图2所示,该方法包括以下步骤:
在步骤201中,确定是否存在待部署的目标模型集合。
其中,该目标模型集合中包括多个目标模型,该目标模型可以包括重新训练得到的最新版本的模型(通常可以通过Spark/MR训练得到该目标模型),或者用户选择的任一版本的模型(例如,用户操作模型版本降级,使得目标节点的当前应用模型恢复到之前的某个版本),该目标模型可以包括决策树模型、神经网络模型等机器学习模型,该目标模型集合为由对应于同一业务的多个该目标模型组成的集合,也就是说,一个业务(如配送时长预测业务)需要同时依赖该目标模型集合中的多个该目标模型来实现,另外,该目标模型集合中的多个该目标模型通常为在同一个预设时间段内训练产生的模型,并且每个该目标模型可以按照预设版本更新频率(如每天或者每周)重新训练生成一个新版本。
在本公开中,可以通过以下两种方式中的任意一种方式确定是否存在该目标模型集合:
方式一:可以通过确定预设文件目录下当前是否存在目标预设业务对应的新增模型集合,该新增模型集合中的多个模型均为在同一个新增预设时间段内产生的模型,该目标预设业务为多个预设业务中的任一业务;当确定该预设文件目录下当前存在该新增模型集合,则确定存在该目标模型集合。
其中,该预设文件目录为分布式文件系统中用户预先设置的文件目录,在一种可能的实现方式中,可以预先设置模型集合中各个模型的版本更新频率,例如,若该版本更新频率为每天更新一次,该预设时间段即为历史时间中的某一天,若当前时刻为11月27号的24点,该新增预设时间段即为11月27号的0点到24点,此时,该新增模型集合即为由同一业务实现所依赖的,并且均在11月27号的0点到24点这个时间段内训练产生的多个模型组成的集合,此处仅是举例说明,本公开对此不作限定。
在分布式文件系统中,在通过线下训练得到由最新版本的多个模型组成的该新增模型集合之前,通常需要在模型管理服务器上进行模型注册,例如,定义模型集合的名称、模型名称、模型类型、模型版本信息以及模型集合在该HDFS的预设文件目录下的存储路径等注册信息,并且为便于查询,可以将为同一业务实现提供服务的多个模型作为一个模型集合存储在同一路径下,这样,在训练生成该最新版本的模型,并得到该新增模型集合后,可以根据上述注册信息对该新增模型集合进行标记,并将该新增模型集合上传至对应的存储路径下进行存储,因此,在方式一中,可以通过对HDFS下的预设文件目录进行定时扫描,来确定是否存在该新增模型集合,在确定存在该新增模型集合时,可以确定存在待部署的该目标模型。
方式二:确定是否存在用户选择的模型集合,当确定存在该用户选择的模型集合时,则确定存在该目标模型集合。
在方式二中,考虑到在实际的应用场景中,对应于不同的业务需求,用户也可以在已经生成的对应于同一个预设业务的多个模型集合(一个预设业务可以对应多个模型集合,不同的模型集合中的同一模型的模型版本不相同,同一模型集合中的多个模型的模型版本相同)中选择任一版本的模型集合作为该目标模型集合,并对该目标模型集合中的多个目标模型进行部署,例如,用户可以操作模型版本降级,使得目标节点的多个当前应用模型均恢复到之前的某个版本,因此,在方式二中,若获取到用户选择的模型集合,可以确定存在该目标模型集合。
在步骤202中,当确定存在该目标模型集合时,从模型部署节点中确定目标节点。
其中,该模型部署节点可以包括需要依赖该目标模型集合中的全部目标模型完成模型计算的全部节点,该目标节点可以为该模型部署节点中还未部署该目标模型集合中的多个该目标模型的节点,并且该目标节点可以包括一个或者多个。
在实际的模型部署场景中,每个节点在完成模型部署后,可以将该节点最新部署的模型的模型标识信息(如模型名称、版本号等)上报至模型管理服务器,以便模型管理服务器可以及时掌握各节点正在使用的当前应用模型,因此,该模型管理服务器可以根据每个节点上报的该模型标识信息确定每个该模型部署节点的该当前应用模型,若该模型部署节点中对应于同一目标业务的多个该当前应用模型中的每个该当前应用模型,与该目标模型集合(该目标模型集合为与该目标业务对应的其中一个模型集合)中对应的该目标模型的版本号均不相同,可以视为该当前应用模型与该目标模型不一致,此时,可以确定该模型部署节点为该目标节点。
在步骤203中,向该目标节点发送模型部署信息。
其中,该模型部署信息可以包括该目标模型集合中各个目标模型的标识信息,以便该目标节点可以根据该标识信息,向该模型管理服务器发送模型部署请求消息。
在步骤204中,接收该目标节点发送的模型部署请求消息,该模型部署请求消息用于请求部署目标模型集合中的多个目标模型。
模型部署通常包括模型下载、模型装载以及模型切换(或者模型使用),在本步骤中,该模型部署请求消息可以包括模型下载请求信息,进一步地,该模型下载请求信息可以包括该目标模型集合中各个目标模型的标识信息,用于请求下载该目标模型集合中的多个该目标模型。
在步骤205中,响应于接收到该模型部署请求消息,获取该目标模型集合中的多个该目标模型。
在一种可能的实现方式中,该模型管理服务器在接收到该模型部署请求消息后,可以获知待部署的多个该目标模型分别对应的模型标识信息,然后基于模型标识信息与模型集合标识信息的对应关系,可以进一步确定由该多个目标模型组成的该目标模型集合的目标集合标识信息,在本步骤中,为便于更快速地获取到该目标模型集合,可以基于确定的该目标集合标识信息先在该模型管理服务器的本地存储空间中查找该目标模型集合,若在该本地存储空间中未查找到该目标模型集合,可以将该模型部署请求消息转发至远程服务器,以便从该远程服务器下载该目标模型集合中的多个该目标模型,并在下载完成后,将该目标模型集合中的多个该目标模型存储至该本地存储空间,以便其它目标节点可以直接从该本地存储空间中获取该目标模型集合中的多个该目标模型,以提高模型获取的速率,进而提高模型部署的效率。
在步骤206中,将该目标模型集合中的该多个目标模型发送至该目标节点。
在步骤207中,确定该目标模型集合中的每个该目标模型是否均成功被该目标节点接收。
在实际的模型部署场景中,该目标模型集合中的每个目标模型在被部署的过程中最终的状态有两种,一种是该目标模型被目标节点成功部署,该目标节点启用最新版本的该目标模型,另一种是模型部署任务的某环节重试若干次失败(或者达到第一预设时间时,仍失败)导致该目标模型在该目标节点部署失败,该目标节点不执行模型切换,继续使用与该目标模型对应的原版本模型,因此,为保证目标模型集合中多个该目标模型部署时版本的一致性,需要对该目标模型集合中各目标模型的每个模型部署环节进行控制。
在本公开模型部署的控制过程中,可以采用上报心跳的方式,对部署该目标模型的每个环节进行控制,即为目标节点向该模型管理服务器发送目标处理事项的处理通知消息(该处理通知消息包括处理成功消息或者处理失败消息,例如可以用1表示处理成功,用0表示处理失败),该目标处理事项可以包括接收该目标模型或者装载该目标模型,因此,在步骤207至步骤211中,该模型管理服务器可以根据目标节点上报的对目标模型集合中每个目标模型对应的目标处理事项的处理通知消息,进行模型部署的控制。
在本步骤中,若接收到该目标节点发送的,对该目标模型集合中的每个该目标模型均接收成功(即下载成功)的处理成功消息,则确定该目标模型集合中的每个该目标模型均成功被该目标节点接收,进一步可以理解为每个该目标模型均成功被该目标节点下载。
另外,若接收到该目标节点发送的,对该目标模型集合中至少一个目标模型接收失败(即下载失败)的处理失败消息,可以通过执行步骤208控制该模型管理服务器重新向该目标节点发送该至少一个目标模型,直至接收到该目标节点发送的成功接收该至少目标模型的处理成功消息。
示例地,假设配送时长预测业务的实现需要同时依赖模型1、模型2以及模型3三个模型来完成预测,并且该三个模型均为在同一新增预设时间段内训练得到的最新版本的模型,该三个模型可以组成与该配送时长预测业务对应的目标模型集合,在该模型管理服务器将该三个模型发送至目标节点后,可以接收目标节点发送的分别对每个模型的接收结果通知消息(即该处理通知消息),若该三个模型均被该目标节点成功接收,可以接收到该目标节点发送的:成功接收模型1的接收成功消息,成功接收模型2的接收成功消息以及成功接收模型3的接收成功消息,此时,该模型管理服务器可以确定该目标模型集合中的每个该目标模型均成功被该目标节点接收,另外,若接收到该目标节点发送的处理通知消息为:成功接收模型1的接收成功消息,未成功接收模型2的接收失败消息以及成功接收模型3的接收成功消息,可以确定该目标模型集合中的模型2未被该目标节点成功接收,此时,可以重新向该目标节点发送该模型2,若在第二预设时间段内接收到该目标节点返回成功接收模型2的接收成功消息,也可以确定该目标模型集合中的每个该目标模型均成功被该目标节点接收,上述示例仅是举例说明,本公开对此不作限定。
若确定每个该目标模型均成功被该目标节点接收,执行步骤209至210;
若确定至少一个该目标模型未被该目标节点成功接收,执行步骤208。
在步骤208中,重新向该目标节点发送该至少一个目标模型,直至接收到该目标节点发送的成功接收该至少一个目标模型的接收成功消息。
在本步骤中,若接收到该目标节点发送的,对该目标模型集合中至少一个目标模型接收失败(即下载失败)的处理失败消息,为保证该目标模型集合中每个目标模型部署时的版本一致性,可以控制该模型管理服务器重新向该目标节点发送该至少一个目标模型,以便该目标节点可以重新下载该至少一个目标模型,提高模型下载的成功率。
考虑到实际的应用场景中,可能会因为网络或者设备出现问题,而导致在一段时间内连续接收到该目标节点发送的对该目标模型集合中的一个或者多个目标模型接收失败的接收失败消息,此时,为保证对目标模型集合中的每个目标模型部署时版本的一致性,在一种可能的实现方式中,若连续预设次数接收到该目标节点发送的对至少一个目标模型的接收失败消息,确定该目标模型集合中的全部该目标模型在该目标节点部署失败;或者,若在第一预设时间内连续接收到该目标节点发送的对至少一个目标模型的接收失败消息,确定该目标模型集合中的全部该目标模型在该目标节点部署失败,此时,目标节点中对应于同一目标业务的多个模型均保持旧版本的模型,以此保证对模型集合中多个模型部署时版本的一致性。
示例地,继续以该目标模型集合中包括模型1、模型2以及模型3三个目标模型为例,在该模型管理服务器向目标节点发送该三个目标模型后,一段时间后,接收到该目标节点返回的接收通知消息为:目标节点成功接收模型1,目标节点未成功接收模型2,目标节点成功接收模型3,此时,可以向该目标节点重新发送模型2,之后可以再次接收目标节点对该模型2的接收结果通知消息,但若连续预设次数接收到目标节点返回的未成功接收模型2的接收失败消息,或者在第一预设时间内连续接收到目标节点返回的未成功接收模型2的接收失败消息,可以确定该目标节点仅成功接收了该目标模型集合中的模型1和模型3,未成功接收模型2,此时,为保证该目标模型集合中三个模型在该目标节点进行模型部署时版本的一致性,可以视为该三个模型在该目标模型均部署失败,该目标节点仍使用该三个模型的旧版本,从而实现了目标模型集合中的三个模型在目标节点保持版本一致,上述示例只是举例说明,本公开对此不作限定。
在步骤209中,向该目标节点发送模型装载指令,以便该目标节点根据该模型装载指令装载每个该目标模型。
在执行步骤207后,若确定该目标模型集合中的每个该目标模型均成功被该目标节点接收,可以控制该目标模型集合中的每个该目标模型整体进入模型部署的下一个环节,即模型装载,因此,在本步骤中,该模型管理服务器可以向每个该目标节点发送模型装载指令,以便该目标节点可以根据该模型装载指令装载该目标模型集合中的每个该目标模型。
在步骤210中,确定该目标模型集合中的每个该目标模型是否均成功被该目标节点装载。
在本步骤中,可以类比于步骤207的具体实现方式,若接收到该目标节点发送的,对该目标模型集合中的每个该目标模型均装载成功的处理成功消息,则确定该目标模型集合中的每个该目标模型均成功被该目标节点装载。
若确定每个该目标模型均成功被该目标节点装载,执行步骤212;
若确定至少一个该目标模型未被该目标节点成功转载,执行步骤211。
在步骤211中,重新向该目标节点发送对该至少一个目标模型的模型装载指令,直至接收到该目标节点发送的成功装载该至少目标模型的装载成功消息。
同样的,本步骤的具体实现方式可以类比于步骤208中的相关描述,为保证目标模型集合中每个目标模型在目标节点进行部署时版本的一致性,在一种可能的实现方式中,若连续预设次数接收到该目标节点发送的对至少一个目标模型的装载失败消息,确定该目标模型集合中的全部该目标模型在该目标节点部署失败;或者,若在第一预设时间内连续接收到该目标节点发送的对至少一个目标模型的装载失败消息,确定该目标模型集合中的全部该目标模型在该目标节点部署失败,此时,目标节点中对应于同一目标业务的多个模型均保持旧版本的模型,以此保证对模型集合中多个模型部署时版本的一致性。
在步骤212中,控制该目标节点将多个该目标模型作为当前应用模型。
在实际的模型部署场景中通常存在两种情况,一种情况是待部署目标模型的目标节点中已经部署了多个该目标模型的其它版本,这种情况下,当前的模型部署任务在于将该目标节点中的多个当前应用模型进行版本切换,切换为该多个目标模型;因此,在本步骤中,在目标节点部署该目标模型之前,若该当前应用模型为与该目标模型名称相同,但版本不同的模型(即为目标节点中已经部署了该目标模型的其它版本),可以控制该目标节点进行模型版本的替换,即将该多个目标模型的版本作为该目标节点部署后的多个当前应用模型的版本,例如,若未切换前,该目标节点对应于目标业务的三个当前应用模型分别为1.0版本的模型1,1.0版本的模型2以及1.0版本的模型3,在执行本步骤后,可以将该目标节点对应于该目标业务的三个模型切换为2.0版本的模型1,2.0版本的模型2以及2.0版本的模型3,从而实现目标节点对应于同一个目标业务的多个模型的模型版本的同时升级,同时实现了该目标模型集合中各目标模型进行模型部署时的版本一致性。
另一种情况是该目标节点中未部署实现该目标业务所依赖的多个模型的任何版本,此种情况下,当前的模型部署任务在于将该多个目标模型直接部署至该目标节点,而不进行版本切换,以便在该目标节点基于该多个目标模型实现该目标业务。
还需说明的是,上述实施例中的该目标节点可以包括一个或者多个,若该目标节点包括多个,在将该目标模型集合中的多个目标模型作为模型部署过程中的控制整体的同时,也可以将由该多个目标节点组成的待部署节点集合作为模型部署的另一个控制整体,即控制该待部署节点集合中的各目标节点,进行模型部署的每一环节全部成功时,待部署节点集合中的各目标节点可以统一将该目标模型作为当前应用模型;而当该待部署节点集合中的任意目标节点,进行模型部署的其中一个环节失败时,该待部署节点集合中的全部目标节点均不会进行下一环节的模型部署,即可视为该待部署节点集合中的全部目标节点的本次模型部署失败,此时,该待部署节点集合中的各目标节点的模型继续保持旧版本,以此保证待部署节点集合中各目标节点模型部署的版本一致性。
因此,基于本公开提供的模型部署方法,不仅可以保证一个预设业务的实现所同时依赖的多个模型在某个目标节点中进行部署时保持版本的一致性,也可以同时保证,该目标模型集合中的每个目标模型在多个节点中进行模型部署时各节点模型版本的一致性,从而提高线上实时预测的结果的准确性,也有助于减轻业务效果的分析难度。
采用上述方法,只有在确定该目标模型集合中的每个目标模型均成功被目标节点接收后,才会指示目标节点对该目标模型集合中的每个目标模型进行装载,并且只有在确定该目标模型集合中的每个目标模型均成功被目标节点装载后,才会控制该目标节点统一将该多个目标模型作为该目标节点的当前应用模型,也就是说,若确定目标模型集合中的任一目标模型在目标节点接收失败或者装载失败,均不会进行部署的下一步骤,使得目标节点中的多个当前应用模型均保持旧版本,从而保证了目标模型集合中的多个目标模型在目标节点进行模型部署时版本的一致性。
图3是根据一示例性实施例示出的一种模型部署的方法的流程图,其中,在图3所示的实施例中对该目标节点包括多个节点,将该目标模型集合中的多个目标模型部署至该多个目标节点的具体实现方式进行说明,如图3所示,该方法包括以下步骤:
在步骤301中,确定是否存在待部署的目标模型集合。
其中,该目标模型集合中包括多个目标模型,该目标模型可以包括重新训练得到的最新版本的模型(通常可以通过Spark/MR训练得到该目标模型),或者用户选择的任一版本的模型(例如,用户操作模型版本降级,使得目标节点的当前应用模型恢复到之前的某个版本),该目标模型可以包括决策树模型、神经网络模型等机器学习模型,该目标模型集合为由对应于同一业务的多个该目标模型组成的集合,也就是说,一个业务(如配送时长预测业务)需要同时依赖该目标模型集合中的多个该目标模型来实现,另外,该目标模型集合中的多个该目标模型通常为在同一个预设时间段内训练产生的模型,并且每个该目标模型可以按照预设版本更新频率(如每天或者每周)重新训练生成一个新版本。
本步骤的具体实现方式可以参考步骤201中的相关描述,在此不再赘述。
在步骤302中,当确定存在该目标模型集合时,从模型部署节点中确定多个该目标节点。
其中,该模型部署节点可以包括需要依赖该目标模型集合中的全部目标模型完成模型计算的全部节点,该目标节点可以为该模型部署节点中还未部署该目标模型集合中的多个该目标模型的节点。
本步骤的具体实现方式可以参考步骤202中的相关描述,在此不再赘述。
在步骤303中,分别向待部署节点集合中的每个该目标节点发送模型部署信息。
其中,该模型部署信息可以包括该目标模型集合中各个目标模型的标识信息,以便多个该目标节点可以根据该标识信息,向该模型管理服务器发送模型部署请求消息。
在步骤304中,接收待部署节点集合中多个该目标节点分别发送的模型部署请求消息,该模型部署请求消息用于请求部署该目标模型集合中的多个目标模型。
其中,该模型部署请求消息可以包括模型下载请求信息,进一步地,该模型下载请求信息可以包括该目标模型集合中各个目标模型的标识信息。
在步骤305中,响应于接收到该模型部署请求消息,获取该目标模型集合中的多个该目标模型。
本步骤的具体实现方式可以参考步骤205中的相关描述,在此不再赘述。
在步骤306中,将该目标模型集合中的多个目标模型发送至待部署节点集合中的每个目标节点。
在步骤307中,针对该待部署节点集合中的每个目标节点,确定该目标模型集合中的每个目标模型是否均成功被该目标节点接收。
其中,该目标节点可以为该待部署节点集合中的任一目标节点。
本公开将该多个目标节点组成一个待部署节点集合,以该待部署节点集合为模型部署时的控制整体,以保证该待部署节点集合中每个目标节点部署模型的版本一致性,与此同时,将一个业务实现需要依赖的多个该目标模型组成该目标模型集合,以该目标模型集合作为另一个模型部署时的控制整体,以保证该目标模型集合中的多个该目标模型在目标节点部署后的模型版本一致性。
本步骤在确定该目标模型集合中的每个目标模型是否均成功被该目标节点接收的过程中,可以参考步骤207中描述的具体实现方式,在此不再赘述。
另外,在本步骤中,在确定该目标模型集合中的每个该目标模型均成功被一个目标节点接收的情况下,为保证多节点模型部署的一致性,还需进一步判断该目标模型集合中的全部该目标模型是否被该待部署节点集合中的每一个目标节点均成功接收,在一种可能的实现方式中,也可以采用上报心跳的方式,对该待部署节点集合中每个该目标节点的模型部署环节进行控制,即为每个目标节点向该模型管理服务器发送目标处理事项(接收该目标模型或者装载该目标模型)的处理通知消息(该处理通知消息包括处理成功消息或者处理失败消息。
具体地,若接收到该待部署节点集合中每个该目标节点发送的接收成功消息(即为下载成功消息),则确定每个该目标节点均成功接收该目标模型集合中的多个目标模型,进一步可以理解为每个该目标节点均成功下载该目标模型集合中的多个目标模型。
示例地,假设该待部署节点集合中包括节点1、节点2以及节点3三个目标节点,该目标模型集合中包括模型1、模型2两个目标模型,并且该两个目标模型均为在同一新增预设时间段内训练得到的最新版本的模型,在执行本步骤之前,该模型管理服务器将获取到的模型1和模型2向上述三个目标节点发送,每个目标节点若成功接收到模型1和模型2,可以向该模型管理服务器返回接收成功消息,假设节点1和节点2均成功接收到该模型1和模型2,节点3仅成功接收模型1,未成功接收模型2,则一段时间后模型管理服务器可以接收到节点1和节点2发送的接收成功消息,接收到节点3发送的接收失败消息,此种情况下,模型管理服务器可以确定该待部署节点集合中的三个目标节点中,节点3当前未成功接收该目标模型集合中的多个该目标模型,此时,该模型管理服务器可以重新向该节点3发送模型1和模型2,以便节点3可以重新接收模型1和模型2,在向该节点3重新发送模型2和模型2后,假设模型1和模型2均成功被节点3接收,该模型管理服务器可以接收到节点3返回的接收成功消息,此时,可以确定该待部署节点集合中的三个目标节点均成功接收到该目标模型集合中的模型1和模型2,进而可以确定针对该待部署节点集合中的每个目标节点,该目标模型集合中的每个目标模型均成功被该目标节点接收,上述示例仅是举例说明,本公开对此不作限定。
针对该待部署节点集合中的每个目标节点,若确定该目标模型集合中的每个目标模型均成功被该目标节点接收,执行步骤310至步骤311;
若确定该待部署节点集合中的至少一个该目标节点未成功接收该目标模型集合中的多个目标模型,执行步骤308;和/或若确定该目标模型集合中的至少一个该目标模型未被该目标节点成功接收,执行步骤309。
在步骤308中,重新向至少一个该目标节点发送该目标模型集合中的多个该目标模型,直至接收到该至少目标节点发送的该接收成功消息。
在本步骤中,若接收到该待部署节点集合中至少一个该目标节点发送的接收失败消息(即为下载失败消息),为保证该待部署节点集合中每个目标节点模型部署的一致性,可以控制至少一个该目标节点重新接收(即为重新下载)该目标模型集合中的多个该目标模型,直至接收到该至少目标节点发送的该接收成功消息,具体地,可以重新向未成功接收该多个目标模型的目标节点发送该多个目标模型,以便至少一个该目标节点可以重新接收该目标模型集合中的多个该目标模型,以提高模型接收的成功率。
另外,实际应用场景中,若连续预设次数接收到至少一个该目标节点发送的该接收失败消息,或者在第二预设时间内连续接收到至少一个该目标节点发送的该接收失败消息,可能是因为网络或者设备出现问题,而导致连续接收到该接收失败消息,此时,为保证待部署节点集合中每个目标节点模型部署的一致性,可以确定该待部署节点集合中全部目标节点的模型部署失败,也就是说,在该待部署节点集合中的至少一个该目标节点的模型部署失败时,即可以将待部署节点集合中全部目标节点的模型部署视为失败,此时,该待部署节点集合中的每个目标节点中的多个模型均保持旧版本的模型,以此保证各目标节点模型版本的一致性。
示例地,继续以该待部署节点集合中包括节点1、节点2以及节点3三个目标节点,该目标模型集合中包括模型1和模型2两个目标模型为例,在该模型管理服务器分别向上述三个目标节点发送模型1和模型2后,假设在经过一段时间后,接收到节点1和节点2返回的该接收成功消息,但连续3次(即为该预设次数)接收到节点3发送的接收失败消息(或者,在10分钟内(即为第二预设时间)连续接收到节点3发送的该接收失败消息),说明该待部署节点集合中,仅节点1和节点2成功接收到该模型1和模型2,节点3未成功接收到该目标模型集合中的全部该目标模型,节点3的本次模型部署失败,此时,为保证上述三个目标节点模型部署的一致性,可以将该待部署节点集合中的节点1、节点2以及节点3三个目标节点的模型部署均视为失败,使得该待部署节点集合中的节点1、节点2以及节点3均停止部署模型1和模型2,节点1、节点2以及节点3均保持旧版本的模型,从而实现了待部署节点集合中每个目标节点模型版本的一致性,上述示例只是举例说明,本公开对此不作限定。
在步骤309中,重新向该目标节点发送该至少一个目标模型,直至接收到该目标节点发送的成功接收该至少一个目标模型的接收成功消息。
本步骤的具体实现方式可以参考步骤208中的相关描述,在此不再赘述。
在步骤310中,向每个该目标节点发送模型装载指令,以便每个该目标节点根据该模型装载指令装载该目标模型集合中的多个目标模型。
在执行步骤307后,针对该待部署节点集合中的每个目标节点,若确定该目标模型集合中的每个目标模型均成功被该目标节点接收,可以先控制该目标模型集合中的每个该目标模型在该目标节点整体进入模型部署的下一个环节,即模型装载,同时控制该待部署节点集合中的每个目标节点整体进入模型装载的环节,因此,在本步骤中,该模型管理服务器可以向每个该目标节点发送模型装载指令,以便每个该目标节点可以根据该模型装载指令装载该目标模型集合中的多个该目标模型。
在步骤311中,针对该待部署节点集合中的每个目标节点,确定该目标模型集合中的每个该目标模型是否均成功被该目标节点装载。
本步骤的具体实现方式可以类比于步骤307的具体实现方式,针对该待部署节点集合中的每个目标节点,若确定接收到该目标节点发送的该目标模型集合中的多个目标模型均成功被该目标节点装载的装载成功消息,则确定该待部署节点集合中的每个目标节点均成功装载该目标模型集合中的多个目标模型。
针对该待部署节点集合中的每个目标节点,若确定该目标模型集合中的每个该目标模型均成功被该目标节点装载,执行步骤314;
若确定该待部署节点集合中的至少一个该目标节点未成功装载该目标模型集合中的多个目标模型,执行步骤312;和/或若确定该目标模型集合中的至少一个该目标模型未被该目标节点成功装载,执行步骤313。
在步骤312中,重新向至少一个该目标节点发送模型装载指令,直至接收到该至少目标节点发送的装载成功消息。
同样的,本步骤的具体实现方式可以类比于步骤308中的相关描述,为保证待部署节点集合中每个目标节点模型部署的一致性,在一种可能的实现方式中,若连续预设次数接收到至少一个该目标节点发送的装载失败消息,或者在一段时间内连续接收到至少一个该目标节点发送的装载失败消息,同样可以确定该待部署节点集合中全部目标节点的模型部署失败,此时,该待部署节点集合中的每个目标节点中的多个模型仍然保持旧版本的模型,以此保证各目标节点模型版本的一致性。
在步骤313中,重新向该目标节点发送该至少一个目标模型,直至接收到该目标节点发送的成功装载该至少一个目标模型的装载成功消息。
本步骤的具体实现方式可以参考步骤309中的相关描述,在此不再赘述。
在步骤314中,针对该待部署节点集合中的每个目标节点,控制该目标节点将多个该目标模型作为当前应用模型。
示例地,假设在预测配送时长时,需要依赖于模型A和模型B两个目标模型实现预测,并且在分布式集群环境下,节点1、节点2均需进行配送时长的预测,在当前时刻检测到模型A在新增预设时间段内训练生成了最新的版本2.0,模型B在新增预设时间段内训练生成了最新的版本2.0,那么对应该预测配送时长业务的该目标模型集合即包括模型A-2.0和模型B-2.0两个目标模型,并且该待部署节点集合包括节点1和节点2两个目标节点,即需要将模型A-2.0和模型B-2.0两个目标模型在节点1进行部署,并且将模型A-2.0和模型B-2.0两个目标模型在节点2进行部署,假设在进行本次模型部署之前,节点1上实现配送时长预测的模型为A和模型B均为1.0版本(即模型A-1.0和模型B-1.0),在执行本步骤后,可以将该节点1将模型A-2.0和模型B-2.0作为该当前应用模型(即用模型A-2.0替换模型A-1.0,用模型B-2.0替换模型B-1.0),上述示例仅是举例说明,本公开对此不作限定。
采用上述方法,以目标模型集合中的多个目标模型作为模型部署的控制整体,该目标模型集合中的多个目标模型同步地进行模型下载、装载和切换,以保证该目标模型集合中多个目标模型的模型部署一致性,与此同时,若存在多个目标节点均需部署该目标模型集合中的多个目标模型,可以将该多个目标节点组成的待部署节点集合作为另一个模型部署的控制整体,该待部署节点集合中的多个目标节点同步的进行模型下载、装载和切换,以保证该待部署节点集合中多个目标节点模型部署一致性,从而提高线上实时预测结果的准确性,同时降低业务效果的分析难度。
图4是根据一示例性实施例示出的一种模型部署的装置的框图,应用于模型管理服务器,如图4所示,该装置包括:
接收模块401,用于目标节点发送的模型部署请求消息,该模型部署请求消息用于请求部署目标模型集合中的多个目标模型;
获取模块402,用于响应于接收到该模型部署请求消息,获取该目标模型集合中的多个该目标模型;
第一发送模块403,用于将该目标模型集合中的该多个目标模型发送至该目标节点;
第二发送模块404,用于当确定该目标模型集合中的每个该目标模型均成功被该目标节点接收后,向该目标节点发送模型装载指令,以便该目标节点根据该模型装载指令装载每个该目标模型;
第一控制模块405,用于当确定该目标模型集合中的每个该目标模型均成功被该目标节点装载后,控制该目标节点将多个该目标模型作为当前应用模型。
可选地,图5是根据图4所示实施例示出的一种模型部署的装置的框图,如图5所示,该装置还包括:
第一确定模块406,用于若接收到该目标节点发送的针对该目标模型集合中的每个该目标模型对应的目标处理事项的处理成功消息,则确定每个该目标模型对应的目标处理事项均成功完成,该目标处理事项包括接收该目标模型或者装载该目标模型;或者,
第二控制模块407,用于若接收到该目标节点发送的至少一个目标模型对应的该目标处理事项的处理失败消息,则控制该目标节点重新执行至少一个该目标模型对应的目标处理事项,直至接收到该目标节点发送的该至少目标模型对应的目标处理事项的处理成功消息。
可选地,若该目标处理事项为接收该目标模型,该第二控制模块407,用于重新向该目标节点发送该至少一个目标模型;若该目标处理事项为装载该目标模型,该第二控制模块407,用于重新向该目标节点发送对该至少一个目标模型的模型装载指令。
可选地,图6是根据图5所示实施例示出的一种模型部署的装置的框图,如图6所示,该装置还包括:
第二确定模块408,用于若连续预设次数接收到该目标节点发送的至少一个目标模型对应的该目标处理事项的处理失败消息,确定该目标模型集合中的全部该目标模型在该目标节点部署失败;或者,若在第一预设时间内连续接收到该目标节点发送的至少一个目标模型对应的该目标处理事项的处理失败消息,确定该目标模型集合中的全部该目标模型在该目标节点部署失败。
可选地,图7是根据图4所示实施例示出的一种模型部署的装置的框图,如图7所示,该装置还包括:
第三确定模块409,用于确定是否存在待部署的该目标模型集合;
第四确定模块410,用于当确定存在该目标模型集合时,从模型部署节点中确定该目标节点;
第三发送模块411,用于向该目标节点发送模型部署信息,该模型部署信息包括该目标模型集合中各个目标模型的标识信息,以便该目标节点根据该标识信息,向该模型管理服务器发送该模型部署请求消息。
可选地,该第三确定模块409,用于确定预设文件目录下当前是否存在目标预设业务对应的新增模型集合,该新增模型集合中的多个模型均为在同一个新增预设时间段内产生的模型,该目标预设业务为多个预设业务中的任一业务;当确定该预设文件目录下当前存在该新增模型集合,则确定存在该目标模型集合;或者,确定是否存在用户选择的模型集合,当确定存在该用户选择的模型集合时,则确定存在该目标模型集合。
可选地,该目标节点包括多个目标节点,该第二发送模块404,用于当确定该待部署节点集合中的每个该目标节点均成功接收该目标模型集合中的该多个目标模型后,向每个该目标节点发送模型装载指令,以便每个该目标节点根据该模型装载指令装载该目标模型集合中的多个该目标模型;该第一控制模块405,用于当确定该待部署节点集合中的每个该目标节点均成功装载该目标模型集合中的多个该目标模型后,控制每个该目标节点将多个该目标模型作为当前应用模型。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
采用上述装置,只有在确定该目标模型集合中的每个目标模型均成功被目标节点接收后,才会指示目标节点对该目标模型集合中的每个目标模型进行装载,并且只有在确定该目标模型集合中的每个目标模型均成功被目标节点装载后,才会控制该目标节点统一将该多个目标模型作为该目标节点的当前应用模型,也就是说,若确定目标模型集合中的任一目标模型在目标节点接收失败或者装载失败,均不会进行部署的下一步骤,使得目标节点中的多个当前应用模型均保持旧版本,从而保证了目标模型集合中的多个目标模型在目标节点进行模型部署时版本的一致性。
图8是根据一示例性实施例示出的一种电子设备800的框图。例如,电子设备800可以被提供为一服务器。参照图8,电子设备800包括处理器822,其数量可以为一个或多个,以及存储器832,用于存储可由处理器822执行的计算机程序。存储器832中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器822可以被配置为执行该计算机程序,以执行上述的模型部署方法。
另外,电子设备800还可以包括电源组件826和通信组件850,该电源组件826可以被配置为执行电子设备800的电源管理,该通信组件850可以被配置为实现电子设备800的通信,例如,有线或无线通信。此外,该电子设备800还可以包括输入/输出(I/O)接口858。电子设备800可以操作基于存储在存储器832的操作系统,例如Windows ServerTM,Mac OSXTM,UnixTM,LinuxTM等等。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的模型部署方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器832,上述程序指令可由电子设备800的处理器822执行以完成上述的模型部署方法。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的模型部署方法的代码部分。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
Claims (16)
1.一种模型部署的方法,其特征在于,应用于模型管理服务器,所述方法包括:
接收目标节点发送的模型部署请求消息,所述模型部署请求消息用于请求部署目标模型集合中的多个目标模型;
响应于接收到所述模型部署请求消息,获取所述目标模型集合中的多个所述目标模型;
将所述目标模型集合中的所述多个目标模型发送至所述目标节点;
当确定所述目标模型集合中的每个所述目标模型均成功被所述目标节点接收后,向所述目标节点发送模型装载指令,以便所述目标节点根据所述模型装载指令装载每个所述目标模型;
当确定所述目标模型集合中的每个所述目标模型均成功被所述目标节点装载后,控制所述目标节点将多个所述目标模型作为当前应用模型。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若接收到所述目标节点发送的针对所述目标模型集合中的每个所述目标模型对应的目标处理事项的处理成功消息,则确定每个所述目标模型对应的目标处理事项均成功完成,所述目标处理事项包括接收该目标模型或者装载该目标模型;或者,
若接收到所述目标节点发送的至少一个目标模型对应的所述目标处理事项的处理失败消息,则控制所述目标节点重新执行至少一个所述目标模型对应的目标处理事项,直至接收到所述目标节点发送的所述至少目标模型对应的目标处理事项的处理成功消息。
3.根据权利要求2所述的方法,其特征在于,若所述目标处理事项为接收该目标模型,所述控制所述目标节点重新执行至少一个所述目标模型对应的目标处理事项包括:重新向所述目标节点发送所述至少一个目标模型;
若所述目标处理事项为装载该目标模型,所述控制所述目标节点重新执行至少一个所述目标模型对应的目标处理事项包括:重新向所述目标节点发送对所述至少一个目标模型的模型装载指令。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若连续预设次数接收到所述目标节点发送的至少一个目标模型对应的所述目标处理事项的处理失败消息,确定所述目标模型集合中的全部所述目标模型在所述目标节点部署失败;或者,
若在第一预设时间内连续接收到所述目标节点发送的至少一个目标模型对应的所述目标处理事项的处理失败消息,确定所述目标模型集合中的全部所述目标模型在所述目标节点部署失败。
5.根据权利要求1所述的方法,其特征在于,在所述接收目标节点发送的模型部署请求消息之前,所述方法还包括:
确定是否存在待部署的所述目标模型集合;
当确定存在所述目标模型集合时,从模型部署节点中确定所述目标节点;
向所述目标节点发送模型部署信息,所述模型部署信息包括所述目标模型集合中各个目标模型的标识信息,以便所述目标节点根据所述标识信息,向所述模型管理服务器发送所述模型部署请求消息。
6.根据权利要求5所述的方法,其特征在于,所述确定是否存在待部署的所述目标模型集合包括:
确定预设文件目录下当前是否存在目标预设业务对应的新增模型集合,所述新增模型集合中的多个模型均为在同一个新增预设时间段内产生的模型,所述目标预设业务为多个预设业务中的任一业务;当确定所述预设文件目录下当前存在所述新增模型集合,则确定存在所述目标模型集合;或者,
确定是否存在用户选择的模型集合,当确定存在所述用户选择的模型集合时,则确定存在所述目标模型集合。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述目标节点包括多个目标节点,所述当确定所述目标模型集合中的每个所述目标模型均成功被所述目标节点接收后,向所述目标节点发送模型装载指令,以便所述目标节点根据所述模型装载指令装载每个所述目标模型包括:
当确定所述待部署节点集合中的每个所述目标节点均成功接收所述目标模型集合中的所述多个目标模型后,向每个所述目标节点发送模型装载指令,以便每个所述目标节点根据所述模型装载指令装载所述目标模型集合中的多个所述目标模型;
所述当确定所述目标模型集合中的每个所述目标模型均成功被所述目标节点装载后,控制所述目标节点将多个所述目标模型作为当前应用模型包括:
当确定所述待部署节点集合中的每个所述目标节点均成功装载所述目标模型集合中的多个所述目标模型后,控制每个所述目标节点将多个所述目标模型作为当前应用模型。
8.一种模型部署的装置,其特征在于,应用于模型管理服务器,所述装置包括:
接收模块,用于接收目标节点发送的模型部署请求消息,所述模型部署请求消息用于请求部署目标模型集合中的多个目标模型;
获取模块,用于响应于接收到所述模型部署请求消息,获取所述目标模型集合中的多个所述目标模型;
第一发送模块,用于将所述目标模型集合中的所述多个目标模型发送至所述目标节点;
第二发送模块,用于当确定所述目标模型集合中的每个所述目标模型均成功被所述目标节点接收后,向所述目标节点发送模型装载指令,以便所述目标节点根据所述模型装载指令装载每个所述目标模型;
第一控制模块,用于当确定所述目标模型集合中的每个所述目标模型均成功被所述目标节点装载后,控制所述目标节点将多个所述目标模型作为当前应用模型。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第一确定模块,用于若接收到所述目标节点发送的针对所述目标模型集合中的每个所述目标模型对应的目标处理事项的处理成功消息,则确定每个所述目标模型对应的目标处理事项均成功完成,所述目标处理事项包括接收该目标模型或者装载该目标模型;或者,
第二控制模块,用于若接收到所述目标节点发送的至少一个目标模型对应的所述目标处理事项的处理失败消息,则控制所述目标节点重新执行至少一个所述目标模型对应的目标处理事项,直至接收到所述目标节点发送的所述至少目标模型对应的目标处理事项的处理成功消息。
10.根据权利要求9所述的装置,其特征在于,若所述目标处理事项为接收该目标模型,所述第二控制模块,用于重新向所述目标节点发送所述至少一个目标模型;若所述目标处理事项为装载该目标模型,所述第二控制模块,用于重新向所述目标节点发送对所述至少一个目标模型的模型装载指令。
11.根据权利要求9所述的装置,其特征在于,所述装置还包括:
第二确定模块,用于若连续预设次数接收到所述目标节点发送的至少一个目标模型对应的所述目标处理事项的处理失败消息,确定所述目标模型集合中的全部所述目标模型在所述目标节点部署失败;或者,若在第一预设时间内连续接收到所述目标节点发送的至少一个目标模型对应的所述目标处理事项的处理失败消息,确定所述目标模型集合中的全部所述目标模型在所述目标节点部署失败。
12.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第三确定模块,用于确定是否存在待部署的所述目标模型集合;
第四确定模块,用于当确定存在所述目标模型集合时,从模型部署节点中确定所述目标节点;
第三发送模块,用于向所述目标节点发送模型部署信息,所述模型部署信息包括所述目标模型集合中各个目标模型的标识信息,以便所述目标节点根据所述标识信息,向所述模型管理服务器发送所述模型部署请求消息。
13.根据权利要求12所述的装置,其特征在于,所述第三确定模块,用于确定预设文件目录下当前是否存在目标预设业务对应的新增模型集合,所述新增模型集合中的多个模型均为在同一个新增预设时间段内产生的模型,所述目标预设业务为多个预设业务中的任一业务;当确定所述预设文件目录下当前存在所述新增模型集合,则确定存在所述目标模型集合;或者,确定是否存在用户选择的模型集合,当确定存在所述用户选择的模型集合时,则确定存在所述目标模型集合。
14.根据权利要求8至13任一项所述的装置,其特征在于,所述目标节点包括多个目标节点,所述第二发送模块,用于当确定所述待部署节点集合中的每个所述目标节点均成功接收所述目标模型集合中的所述多个目标模型后,向每个所述目标节点发送模型装载指令,以便每个所述目标节点根据所述模型装载指令装载所述目标模型集合中的多个所述目标模型;
所述第一控制模块,用于当确定所述待部署节点集合中的每个所述目标节点均成功装载所述目标模型集合中的多个所述目标模型后,控制每个所述目标节点将多个所述目标模型作为当前应用模型。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-7中任一项所述方法的步骤。
16.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010038078.8A CN111240698A (zh) | 2020-01-14 | 2020-01-14 | 模型部署的方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010038078.8A CN111240698A (zh) | 2020-01-14 | 2020-01-14 | 模型部署的方法、装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111240698A true CN111240698A (zh) | 2020-06-05 |
Family
ID=70865026
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010038078.8A Withdrawn CN111240698A (zh) | 2020-01-14 | 2020-01-14 | 模型部署的方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111240698A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111966382A (zh) * | 2020-08-28 | 2020-11-20 | 上海寻梦信息技术有限公司 | 机器学习模型的在线部署方法、装置及相关设备 |
CN113791798A (zh) * | 2020-06-28 | 2021-12-14 | 北京沃东天骏信息技术有限公司 | 模型更新方法及装置、计算机存储介质、电子设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103858122A (zh) * | 2011-08-03 | 2014-06-11 | 艾玛迪斯简易股份公司 | 保持客户端/服务器系统内的分布式复制内容的高度一致性的方法和系统 |
WO2016207520A1 (fr) * | 2015-06-26 | 2016-12-29 | Orange | Technique de reconfiguration d'un modele d'application pour un deploiement d'une application logicielle |
CN109614109A (zh) * | 2018-11-16 | 2019-04-12 | 中国银行股份有限公司 | 应用部署方法、装置和系统 |
CN110297640A (zh) * | 2019-06-12 | 2019-10-01 | 北京三快在线科技有限公司 | 模型部署的方法、装置、存储介质及电子设备 |
CN110413294A (zh) * | 2019-08-06 | 2019-11-05 | 中国工商银行股份有限公司 | 服务发布系统、方法、装置和设备 |
CN110471671A (zh) * | 2019-08-12 | 2019-11-19 | 深圳前海微众银行股份有限公司 | 应用部署方法、装置、系统、设备及计算机可读存储介质 |
CN110609732A (zh) * | 2019-08-13 | 2019-12-24 | 平安普惠企业管理有限公司 | 应用程序部署方法、装置、计算机设备和存储介质 |
US20190394258A1 (en) * | 2017-03-17 | 2019-12-26 | Oracle International Corporation | Framework for the deployment of event-based applications |
-
2020
- 2020-01-14 CN CN202010038078.8A patent/CN111240698A/zh not_active Withdrawn
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103858122A (zh) * | 2011-08-03 | 2014-06-11 | 艾玛迪斯简易股份公司 | 保持客户端/服务器系统内的分布式复制内容的高度一致性的方法和系统 |
WO2016207520A1 (fr) * | 2015-06-26 | 2016-12-29 | Orange | Technique de reconfiguration d'un modele d'application pour un deploiement d'une application logicielle |
US20190394258A1 (en) * | 2017-03-17 | 2019-12-26 | Oracle International Corporation | Framework for the deployment of event-based applications |
CN109614109A (zh) * | 2018-11-16 | 2019-04-12 | 中国银行股份有限公司 | 应用部署方法、装置和系统 |
CN110297640A (zh) * | 2019-06-12 | 2019-10-01 | 北京三快在线科技有限公司 | 模型部署的方法、装置、存储介质及电子设备 |
CN110413294A (zh) * | 2019-08-06 | 2019-11-05 | 中国工商银行股份有限公司 | 服务发布系统、方法、装置和设备 |
CN110471671A (zh) * | 2019-08-12 | 2019-11-19 | 深圳前海微众银行股份有限公司 | 应用部署方法、装置、系统、设备及计算机可读存储介质 |
CN110609732A (zh) * | 2019-08-13 | 2019-12-24 | 平安普惠企业管理有限公司 | 应用程序部署方法、装置、计算机设备和存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113791798A (zh) * | 2020-06-28 | 2021-12-14 | 北京沃东天骏信息技术有限公司 | 模型更新方法及装置、计算机存储介质、电子设备 |
CN111966382A (zh) * | 2020-08-28 | 2020-11-20 | 上海寻梦信息技术有限公司 | 机器学习模型的在线部署方法、装置及相关设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110297640B (zh) | 模型部署的方法、装置、存储介质及电子设备 | |
CN107547245B (zh) | 一种版本升级方法和装置 | |
WO2015129664A1 (ja) | 無線通信システム、無線通信装置、無線通信方法、およびプログラム | |
CN111240698A (zh) | 模型部署的方法、装置、存储介质及电子设备 | |
CN112969209B (zh) | 业务服务器的切换控制方法及装置、电子设备、存储介质 | |
KR20120066116A (ko) | 웹 서비스 정보 처리 방법과 이를 이용한 웹 서비스 조합 방법 및 장치 | |
CN111279748B (zh) | 通信链路的自适应切换方法、可移动平台和控制装置 | |
KR102225815B1 (ko) | 데이터 피드 관리 | |
CN112130980B (zh) | 操作执行方法及装置、存储介质、电子装置 | |
CN111159233A (zh) | 分布式缓存方法、系统、计算机设备以及存储介质 | |
CN114153468A (zh) | 工业协议的适配方法、装置、边缘设备及云端服务器 | |
CN112559009A (zh) | Mesh组网下同步升级的方法、装置和存储介质 | |
CN111158751A (zh) | 一种Windows环境部署方法、电子设备及存储介质 | |
CN111078238A (zh) | 容器环境下应用配置集中处理方法及装置 | |
CN113419818B (zh) | 基础组件部署方法、装置、服务器及存储介质 | |
CN112104998A (zh) | 通信测试方法、装置、存储介质及电子设备 | |
EP4092524B1 (en) | Ota differential upgrade method and system of master-slave architecture | |
CN111078322A (zh) | 服务器及基于k8s集群的公共配置参数配置方法及系统 | |
CN110945961B (zh) | 辅助信息传输方法、装置、终端、接入网设备及存储介质 | |
CN109525496B (zh) | 一种链路状态信息的更新方法及装置 | |
CN112395072A (zh) | 模型部署的方法、装置、存储介质及电子设备 | |
CN112766486A (zh) | 神经网络结构的搜索方法、终端、服务器及可读存储介质 | |
CN111078425A (zh) | 消息处理方法、装置、存储介质及电子设备 | |
CN111190630A (zh) | 一种终端应用的更新方法及服务器 | |
Huynh-Van et al. | An empirical study on approaches of internet of things reconfiguration |
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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200605 |
|
WW01 | Invention patent application withdrawn after publication |