CN117827393A - 模型的运维服务方法、装置、电子设备及存储介质 - Google Patents
模型的运维服务方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117827393A CN117827393A CN202311596648.5A CN202311596648A CN117827393A CN 117827393 A CN117827393 A CN 117827393A CN 202311596648 A CN202311596648 A CN 202311596648A CN 117827393 A CN117827393 A CN 117827393A
- Authority
- CN
- China
- Prior art keywords
- task
- target
- model
- execution node
- state information
- 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 69
- 238000012423 maintenance Methods 0.000 title claims abstract description 33
- 238000012544 monitoring process Methods 0.000 claims abstract description 15
- 230000004044 response Effects 0.000 claims abstract description 12
- 238000012549 training Methods 0.000 claims description 32
- 230000006870 function Effects 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 13
- 238000004806 packaging method and process Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 3
- 238000004422 calculation algorithm Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 11
- 238000013473 artificial intelligence Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本申请提供一种模型的运维服务方法、装置、电子设备及存储介质,该方法包括接收模型任务请求,并为所述模型任务请求分配第一任务执行节点;控制第一任务执行节点执行与模型任务请求对应的目标任务;监控目标任务在所述第一任务执行节点中的执行进度,并保存目标任务对应的多个中间状态信息;响应于确定所述目标任务在第一任务执行节点中执行失败,从多个中间状态信息中确定目标中间状态信息;控制第一任务执行节点基于所述目标中间状态信息重新执行所述目标任务,从而在第一任务执行节点发生崩溃时,可以根据事先保存的目标中间状态信息接着第一任务执行节点发生崩溃前的状态,继续执行目标任务,而不需要从头开始执行目标任务。
Description
技术领域
本申请涉及模型的运维服务技术领域,尤其涉及一种模型的运维服务方法、装置、电子设备及存储介质。
背景技术
人工智能技术及其相关产品在各行业及各领域近几年陆续展开了较好的研究和应用,也取得不俗的建设成效。但由于各专业人工智能算法模型采用不同的AI技术框架构建,模型的技术标准、管理规范、模型的存储和运行环境等各不相同,建设厂家不同,技术路线差异等原因,通常只能通过各自厂家或技术路线提供的接口方式提供服务,无法直观的进行功能展示,用户体验较差,开放能力弱,同时部署和运行维护的方式不一,难以做到集约化管理,导致建设和运维成本较高。
同时,模型在作业的过程中,若当前作业的节点发生崩溃,需要从新开始作业,特别对于人工智能算法来说,在正式工作前需进行模型训练作业,通常,深度学习算法业务存在Caffe、Torch、Horovod等多个框架,基于大型数据集上需进行数十万次迭代,如若训练作业节点发生崩溃,相关技术中需要从头开始训练模型,这无疑将会损失数天的训练成果,噪声严重的资源浪费。而且实际AI算法正式作业时,由于为满足多用户的使用,供学习或作业的海量数据集多不存储在本地,学习算法对数据集的多次传输带来了严重的网络负载,也存在上述隐患问题。
发明内容
有鉴于此,本申请的目的在于提出一种模型的运维服务方法、装置、电子设备及存储介质,用于解决或部分解决背景技术中提到的问题。
基于上述目的,本申请提供了一种模型的运维服务方法,包括:
接收模型任务请求,并为所述模型任务请求分配第一任务执行节点;
控制所述第一任务执行节点执行与所述模型任务请求对应的目标任务;
监控所述目标任务在所述第一任务执行节点中的执行进度,并保存所述目标任务对应的多个中间状态信息;
响应于确定所述目标任务在所述第一任务执行节点中执行失败,从所述多个中间状态信息中确定目标中间状态信息;
控制所述第一任务执行节点基于所述目标中间状态信息重新执行所述目标任务。
基于同一发明构思,本申请实施例还提供了一种模型的运维服务装置,包括:
接收模块,接收模型任务请求,并为所述模型任务请求分配第一任务执行节点;
第一执行模块,控制所述第一任务执行节点执行与所述模型任务请求对应的目标任务;
监控模块,监控所述目标任务在所述第一任务执行节点中的执行进度,并保存所述目标任务对应的多个中间状态信息;
确定模块,响应于确定所述目标任务在所述第一任务执行节点中执行失败,从所述多个中间状态信息中确定目标中间状态信息;
第二执行模块,控制所述第一任务执行节点基于所述目标中间状态信息重新执行所述目标任务。
基于同一发明构思,本申请示例性实施例还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可由所述处理器执行的计算机程序,所述处理器执行所述程序时实现如上所述的模型的运维服务方法。
基于同一发明构思,本申请实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行如上所述的模型的运维服务方法。
从上面所述可以看出,本申请提供的模型的运维服务方法、装置、电子设备及存储介质,接收模型任务请求,并为所述模型任务请求分配第一任务执行节点;控制所述第一任务执行节点执行与所述模型任务请求对应的目标任务;监控所述目标任务在所述第一任务执行节点中的执行进度,并保存所述目标任务对应的多个中间状态信息;响应于确定所述目标任务在所述第一任务执行节点中执行失败,从所述多个中间状态信息中确定目标中间状态信息;控制所述第一任务执行节点基于所述目标中间状态信息重新执行所述目标任务,从而在第一任务执行节点发生崩溃时,可以根据事先保存的目标中间状态信息接着第一任务执行节点发生崩溃前的状态,继续执行所述目标任务,而不需要从头开始执行目标任务,通过中间状态信息实现了崩溃前的执行状态的延续。
附图说明
为了更清楚地说明本申请或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例的一种模型的运维服务方法的流程示意图;
图2为本申请实施例的另一种模型的运维服务方法的流程示意图;
图3为本申请实施例的一种模型的运维服务装置的结构示意图;
图4为本申请实施例的一种具体的电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本申请进一步详细说明。
需要说明的是,除非另外定义,本申请实施例使用的技术术语或者科学术语应当为本申请所属领域内具有一般技能的人士所理解的通常意义。本申请实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
可以理解的是,在使用本申请中各个实施例的技术方案之前,均会通过恰当的方式对所涉及的个人信息的类型、使用范围、使用场景等告知用户,并获得用户的授权。
例如,在响应于接收到用户的主动请求时,向用户发送提示信息,以明确的提示用户,其请求执行的操作将需要获取和使用到用户的个人信息。从而,使得用户可以根据提示信息来自主的选择是否向执行本申请技术方案的操作的电子设备、应用程序、服务器或存储介质等软件或硬件提供个人信息。
作为一种可选的但非限定的实现方式,响应于接受到用户的主动请求,向用户发送提示信息的方式例如可以是弹窗的方式,弹窗中可以以文字的方式呈现提示信息。此外,弹窗中还可以承载供用户选择“同意”或者“不同意”向电子设备提供个人信息的选择控件。
可以理解的是,上述通知和获取用户授权过程仅是示意性的,不对本申请的实现方式构成限定,其他满足相关法律法规的方式也可应用于本申请的实现方式中。
如背景技术所述,目前相关技术中,若当前模型作业的节点发生崩溃,需要从新开始作业,特别对于人工智能算法来说,在正式工作前需进行模型训练作业,通常,深度学习算法业务存在Caffe、Torch、Horovod等多个框架,基于大型数据集上需进行数十万次迭代,如若训练作业节点发生崩溃,相关技术中需要从头开始训练模型,这无疑将会损失数天的训练成果。而且实际AI算法正式作业时,由于为满足多用户的使用,供学习或作业的海量数据集多不存储在本地,学习算法对数据集的多次传输带来了严重的网络负载,从而很容易参数作业节点的崩溃,使得目前相关技术中很容易存在上述隐患问题。
综上所述,为解决上述问题,本申请提出了一种模型的运维服务方法,接收模型任务请求,并为所述模型任务请求分配第一任务执行节点;控制所述第一任务执行节点执行与所述模型任务请求对应的目标任务;监控所述目标任务在所述第一任务执行节点中的执行进度,并保存所述目标任务对应的多个中间状态信息;响应于确定所述目标任务在所述第一任务执行节点中执行失败,从所述多个中间状态信息中确定目标中间状态信息;控制所述第一任务执行节点基于所述目标中间状态信息重新执行所述目标任务,从而在第一任务执行节点发生崩溃时,可以根据事先保存的目标中间状态信息接着第一任务执行节点发生崩溃前的状态,继续执行所述目标任务,而不需要从头开始执行目标任务,通过中间状态信息实现了崩溃前的执行状态的延续。此外,本申请提供的模型的运维服务方法备较好的可靠性,能保证在训练或作业节点奔溃时,依据可靠的中间状态信息快速的进行故障的检测和恢复。
参考图1,为本申请实施例的一种模型的运维服务方法的流程示意图,该方法包括以下步骤:
S101,接收模型任务请求,并为所述模型任务请求分配第一任务执行节点。
具体实施时,模型任务请求可以是用户通过本申请方法提供的统一的API接口发生的模型任务请求,该模型任务请求可以包括训练模型的任务请求和通过训练好的AI模型进行作业的任务请求。可选的,本申请的方法可以应用于人工智能运维服务云平台或系统中。人工智能运维服务云平台或系统在接收到接收模型任务请求后,可以随机或根据需要为所述模型任务请求分配第一任务执行节点。
S102,控制所述第一任务执行节点执行与所述模型任务请求对应的目标任务。
具体实施时,在为所述模型任务请求分配第一任务执行节点后,可以控制该第一任务执行节点执行与所述模型任务请求对应的目标任务。可选的,与模型任务请求对应的,目标任务可以包括训练目标模型的任务和模型作业的任务。可选的,在所述第一任务执行节点执行与所述模型任务请求对应的目标任务时,通过K8S(kubernetes)为所述第一任务执行节点分配资源。
S103,监控所述目标任务在所述第一任务执行节点中的执行进度,并保存所述目标任务对应的多个中间状态信息。
具体实施时,在第一任务执行节点执行目标任务的过程中,监控所述目标任务在所述第一任务执行节点中的执行进度,并保存所述目标任务对应的多个中间状态信息。可选的,所述中间状态信息为目标任务在执行过程中产生的非最终结果的中间信息,例如,在训练模型过程中,本应该完成1万次模型训练,中间状态信息可以是进行了5000次模型训练时得到的模型调节后的参数。或者,在通过训练好的AI模型进行训练时,模型在中间计算过程中产生的中间结果。
在一些实施例中,保存所述目标任务对应的多个中间状态信息,具体包括:
基于预设时间间隔保存所述目标任务对应的多个中间状态信息。
具体实施时,可以根据需要设置预设时间间隔,对此不做限定,例如,可以将预设时间间隔设置为10秒或1分钟等。在一些实施例中,预设时间间隔的大小可根据用户对故障的容忍度进行合理配置。
在一些实施例中,保存所述目标任务对应的多个中间状态信息,具体包括:
响应于在执行所述目标任务的过程中产生了预设关键参数,将所述预设关键参数对应的中间状态信息保存。
具体实施时,可以实现设置一些预设关键参数,并重点对这些预设关键参数对应的中间状态信息保存,从而使得目标执行过程中的一些关键信息得以保存。具体的预设关键参数可以根据需要进行设置,对此不做限定。例如,考虑到在训练模型时,模型的输出结果的准确度一般从0到达某个临界准确度时,标志着模型的训练可能接近尾声,或者进入微调阶段,那么就可以将训练模型过程中的临界准确度设置为预设关键参数。
S104,响应于确定所述目标任务在所述第一任务执行节点中执行失败,从所述多个中间状态信息中确定目标中间状态信息。
具体实施时,当确定所述目标任务在所述第一任务执行节点中执行失败,即第一任务执行节点报错或发生奔溃时,可以从所述多个中间状态信息中确定目标中间状态信息。可选的,可以将距离当前时间最近的中间状态信息确定为目标中间状态信息。或者先从多个中间状态信息确定出正常的中间状态信息,然后将距离当前时间最近的正常的中间状态信息确定为目标中间状态信息。
S105,控制所述第一任务执行节点基于所述目标中间状态信息重新执行所述目标任务。
具体实施时,在确定了目标中间状态信息,就可以控制第一任务执行节点根据该目标中间状态信息重新执行所述目标任务,即可以根据目标中间状态信息使目标任务从中间状态开始执行,而不是从头开始执行,从而提高了节点重新执行目标任务的效率。
在一些实施例中,在控制所述第一任务执行节点基于所述目标中间状态信息重新执行所述目标任务之后,所述方法还包括:
响应于确定所述目标任务在所述第一任务执行节点中执行失败的次数大于预设次数,重新为所述模型任务请求分配第二任务执行节点;
控制所述第二任务执行节点基于所述目标中间状态信息重新执行所述目标任务。
具体实施时,考虑到当第一任务执行节点中执行失败的次数大于预设次数,此时第一任务执行节点本身可能存在一定的故障,因此,此时可以考虑为模型任务请求重新分配任务执行节点,即第二任务执行节点,然后由第二任务执行节点基于所述目标中间状态信息重新执行所述目标任务。可选的,预设次数可以根据需要进行设置,对此不做限定。
在一些实施例中,所述目标任务包括训练目标模型的任务,所述目标中间状态信息包括已训练样本数据信息和模型参数调整信息;控制所述第一任务执行节点基于所述目标中间状态信息重新执行所述目标任务,具体包括:
基于所述模型参数调整信息调节所述目标模型的参数;
基于所述已训练样本数据信息确定所述目标模型的待训练样本数据;
控制所述第一任务执行节点基于所述待训练样本数据训练参数调节后的所述目标模型。
具体实施时,当目标任务为训练目标模型的任务时,所述目标中间状态信息包括已训练样本数据信息和模型参数调整信息,通过所述模型参数调整信息可以调节所述目标模型的参数,使得目标模型的参数被调整为处于模型训练的中间状态时对应的参数。通过所述已训练样本数据信息可以确定所述目标模型的待训练样本数据,即未进行训练的样本数据,从而使得模型从未进行训练的样本数据开始训练,而不是从之前已经训练过的样本数据开始训练。
在一些实施例中,所述目标任务包括模型作业的任务;在为所述模型任务请求分配第一任务执行节点之后,所述方法还包括:
基于预设模型功能列表从多个作业模型中确定所述目标任务需要的目标作业模型;
获取所述目标作业模型对应的模型接口;
将所述目标作业模型对应的模型接口发送到所述第一任务执行节点中,以使所述第一任务执行节点基于所述模型接口调用所述目标作业模型。
具体实施时,当目标任务为模型作业的任务时,需要进一步通过模型任务请求确定所述目标任务需要的目标作业模型,以及目标作业模型对应的模型接口,以便于第一任务执行节点可以通过目标作业模型对应的模型接口来调用函数。可选的,预设模型功能列表包括了各个模型的功能介绍,即每个模型具体用于执行什么任务,通过该预设模型功能列表就可以知道当前的目标任务需要的目标作业模型是什么。多个作业模型为事先设置好的已完成训练的AI模型,分别用于执行不同的任务请求。
在一些实施例中,所述目标任务包括模型作业的任务;在为所述模型任务请求分配第一任务执行节点之后,所述方法还包括:
基于预设微服务功能列表从多个微服务中确定所述目标任务需要的目标微服务;其中,每个微服务对应一个封装模型;
将所述目标微服务发送到所述第一任务执行节点中,以使所述第一任务执行节点基于所述目标微服务调用所述目标微服务对应的封装模型。
具体实施时,在本实施例中,可以通过微服务来调用目标任务需要的封装模型。可选的,预设微服务功能列表与预设模型功能列表类似,可以根据需要进行设置,其中包括了各个微服务的功能,即每个微服务对应的封装模型的功能。多个微服务为事先设置好的微服务,且每个微服务对应一个事先封装好的封装模型。
在一些实施例中,可以使用容器化技术,将AI模型算法打包成一个容器,以便于在不同的环境中进行部署和调用。容器化技术可以保证模型的可移植性和可扩展性。其次,将训练好AI模型算法采用微服务进行封装,以微服务方式提供调用。微服务架构可以提高系统的灵活性和可维护性,同时也可以实现模型规范化调用。
在一些实施例中,人工智能运维服务云平台或系统包括的AI模型经过训练后,通过k8s架构下容器进行部署和发布,并通过接口和微服务两种方式提供调用。对商业化原生模型,推荐采用原生的接口进行调用;对企业自研模型,推荐采用微服务的方式提供调用。
参考图2,为本申请实施例的另一种模型的运维服务方法的流程示意图;其中,所述运维服务方法应用的人工智能运维服务云平台或系统为支撑不同技术框架的机器学习算法,并实现学习或工作任务崩溃时能快速故障状态检测和回滚恢复,其框架内设计并配置了API接口组件、MongoDB数据库、LCM生命周期管理组件、Control控制器组件、ETCD分布式键值存储组件、共享NFS卷、帮助器组件、学习器\作业器组件、云存储设备,其中,所述API接口组件通过所配置标准gRPC和REST网络API接口,实时接收不同用户的学习训练和实际作业任务;其中,所述MongoDB数据库存储训练和作业任务的元数据,包括各项作业参数和神经网络参数,为发生故障时进行负载平衡和故障迁移提供支持。其中,所述LCM生命周期管理组件,对训练和作业任务进行生命周期的管理,包括部署、监控、终止和资源回收。其中,所述Control控制器组件为训练和作业任务进行实际控制和调度的管理组件。当收到LCM下发的训练和作业任务后,Control控制器组件通过接收作业的所有元数据并将作业任务在学习器/作业器组件中进行部署并对其进度进行实时监控。部署过程依据作业所需要资源,如GPU等由K8S进行动态申请,Control控制器组件设置共享NFS卷以监控训练进度、设置K8S策略以对多用户在平台网络和租户环境访问进行管理,以减少故障风险。如果Control控制器组件在学习和作业任务部署中发生故障或崩溃,可由K8S进行重启,重启后的Control控制器组件将回滚先前部署的训练和作业任务。若存在持续故障,并超出故障阈值后,Control控制器组件将放弃该作业部署并将MongoDB中的作业标记为FAILED。其中,所述所述帮助器组件作为“辅助”容器,提供了加载数据、日志收集、存储结果等“辅助”功能。其中,所述学习器/作业器组件为实际部署的学习训练和实际作业工作节点。进一步地,所述帮助器组件通过监视学习器/作业器进程的执行和退出状态,并通过读取其输出结果,实现训练和作业任务进程的完成和失败监测。其中,所述共享NFS卷为一个公共NFS文件系统,由Control控制器组件使用K8S持久卷挂载,为帮助器组件及学习器/作业器组件共享挂载使用。其中,所述ETCD分布式键值存储组件实现学习器/作业器各项任务状态的管理,由于帮助器和学习器/作业器组件共享一个文件系统,为减少组件之间的耦合并确保获取到可靠的更新状态,采用ETCD分布式键值存储组件将每个学习器/作业器组件的当前状态记录在ETCD组件中,并由其配置的Raft协议保证其一致性。由Control控制器组件读取并收集每个学习器/作业器状态,并提供用户调用查询。采用ETCD组件对每个学习器/作业器状态进行监测管理,当状态发生故障时,Control控制器组件可读取其当前状态和以前状态,并通过向共享NFS卷写入适当的退出代码,由其最近的一次正常状态进行回滚或重启。回滚或重启后,恢复的学习器/作业器组件获取原参数数据,并从最新检查点进行继续训练或作业,由于故障或奔溃而丢失的工作量可由检查点所配置的时间间隔而确定。进一步地,由于机器学习训练作业多需要长期运行,有必要按照一定预设时间间隔配置相关检查点,其间隔大小可根据用户对故障的容忍度进行合理配置,所述检查点可作为训练参数存储在云存储设备中。所述云存储设备对多用户各算法所需的海量训练样本库、实际作业所采集到的音视频数据,以及检查点等数据信息等提供云存储介质,以提供各学习器/作业器调用获取。
本申请提供的模型的运维服务方法,接收模型任务请求,并为所述模型任务请求分配第一任务执行节点;控制所述第一任务执行节点执行与所述模型任务请求对应的目标任务;监控所述目标任务在所述第一任务执行节点中的执行进度,并保存所述目标任务对应的多个中间状态信息;响应于确定所述目标任务在所述第一任务执行节点中执行失败,从所述多个中间状态信息中确定目标中间状态信息;控制所述第一任务执行节点基于所述目标中间状态信息重新执行所述目标任务,从而在第一任务执行节点发生崩溃时,可以根据事先保存的目标中间状态信息接着第一任务执行节点发生崩溃前的状态,继续执行所述目标任务,而不需要从头开始执行目标任务,通过中间状态信息实现了崩溃前的执行状态的延续。此外,本申请提供的模型的运维服务方法备较好的可靠性,能保证在训练或作业节点奔溃时,依据可靠的中间状态信息快速的进行故障的检测和恢复。
需要说明的是,本申请实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本申请实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本申请的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种模型的运维服务装置。
参考图3,所述模型的运维服务装置,包括:
接收模块201,接收模型任务请求,并为所述模型任务请求分配第一任务执行节点;
第一执行模块202,控制所述第一任务执行节点执行与所述模型任务请求对应的目标任务;
监控模块203,监控所述目标任务在所述第一任务执行节点中的执行进度,并保存所述目标任务对应的多个中间状态信息;
确定模块204,响应于确定所述目标任务在所述第一任务执行节点中执行失败,从所述多个中间状态信息中确定目标中间状态信息;
第二执行模块205,控制所述第一任务执行节点基于所述目标中间状态信息重新执行所述目标任务。
在一些实施例中,所述监控模块203,具体用于:
基于预设时间间隔保存所述目标任务对应的多个中间状态信息。
在一些实施例中,所述监控模块203,具体用于:
响应于在执行所述目标任务的过程中产生了预设关键参数,将所述预设关键参数对应的中间状态信息保存。
在一些实施例中,所述装置还包括重新分配模块,用于:
响应于确定所述目标任务在所述第一任务执行节点中执行失败的次数大于预设次数,重新为所述模型任务请求分配第二任务执行节点;
控制所述第二任务执行节点基于所述目标中间状态信息重新执行所述目标任务。
在一些实施例中,所述目标任务包括训练目标模型的任务,所述目标中间状态信息包括已训练样本数据信息和模型参数调整信息;所述第二执行模块,具体用于:
基于所述模型参数调整信息调节所述目标模型的参数;
基于所述已训练样本数据信息确定所述目标模型的待训练样本数据;
控制所述第一任务执行节点基于所述待训练样本数据训练参数调节后的所述目标模型。
在一些实施例中,所述目标任务包括模型作业的任务;所述装置还包括模型接口模块,用于:
基于预设模型功能列表从多个作业模型中确定所述目标任务需要的目标作业模型;
获取所述目标作业模型对应的模型接口;
将所述目标作业模型对应的模型接口发送到所述第一任务执行节点中,以使所述第一任务执行节点基于所述模型接口调用所述目标作业模型。
在一些实施例中,所述目标任务包括模型作业的任务;所述装置还包括微服务模块,用于:
基于预设微服务功能列表从多个微服务中确定所述目标任务需要的目标微服务;其中,每个微服务对应一个封装模型;
将所述目标微服务发送到所述第一任务执行节点中,以使所述第一任务执行节点基于所述目标微服务调用所述目标微服务对应的封装模型。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本申请时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述任一实施例中相应的模型的运维服务方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的模型的运维服务方法。
图4示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述任一实施例中相应的模型的运维服务方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的模型的运维服务方法。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的模型的运维服务方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本申请的范围(包括权利要求)被限于这些例子;在本申请的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本申请实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本申请实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本申请实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本申请实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本申请的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本申请实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本申请的具体实施例对本申请进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本申请实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本申请实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种模型的运维服务方法,其特征在于,包括:
接收模型任务请求,并为所述模型任务请求分配第一任务执行节点;
控制所述第一任务执行节点执行与所述模型任务请求对应的目标任务;
监控所述目标任务在所述第一任务执行节点中的执行进度,并保存所述目标任务对应的多个中间状态信息;
响应于确定所述目标任务在所述第一任务执行节点中执行失败,从所述多个中间状态信息中确定目标中间状态信息;
控制所述第一任务执行节点基于所述目标中间状态信息重新执行所述目标任务。
2.根据权利要求1所述的方法,其特征在于,保存所述目标任务对应的多个中间状态信息,具体包括:
基于预设时间间隔保存所述目标任务对应的多个中间状态信息。
3.根据权利要求1所述的方法,其特征在于,保存所述目标任务对应的多个中间状态信息,具体包括:
响应于在执行所述目标任务的过程中产生了预设关键参数,将所述预设关键参数对应的中间状态信息保存。
4.根据权利要求1所述的方法,其特征在于,在控制所述第一任务执行节点基于所述目标中间状态信息重新执行所述目标任务之后,所述方法还包括:
响应于确定所述目标任务在所述第一任务执行节点中执行失败的次数大于预设次数,重新为所述模型任务请求分配第二任务执行节点;
控制所述第二任务执行节点基于所述目标中间状态信息重新执行所述目标任务。
5.根据权利要求1所述的方法,其特征在于,所述目标任务包括训练目标模型的任务,所述目标中间状态信息包括已训练样本数据信息和模型参数调整信息;控制所述第一任务执行节点基于所述目标中间状态信息重新执行所述目标任务,具体包括:
基于所述模型参数调整信息调节所述目标模型的参数;
基于所述已训练样本数据信息确定所述目标模型的待训练样本数据;
控制所述第一任务执行节点基于所述待训练样本数据训练参数调节后的所述目标模型。
6.根据权利要求1所述的方法,其特征在于,所述目标任务包括模型作业的任务;在为所述模型任务请求分配第一任务执行节点之后,所述方法还包括:
基于预设模型功能列表从多个作业模型中确定所述目标任务需要的目标作业模型;
获取所述目标作业模型对应的模型接口;
将所述目标作业模型对应的模型接口发送到所述第一任务执行节点中,以使所述第一任务执行节点基于所述模型接口调用所述目标作业模型。
7.根据权利要求1所述的方法,其特征在于,所述目标任务包括模型作业的任务;在为所述模型任务请求分配第一任务执行节点之后,所述方法还包括:
基于预设微服务功能列表从多个微服务中确定所述目标任务需要的目标微服务;其中,每个微服务对应一个封装模型;
将所述目标微服务发送到所述第一任务执行节点中,以使所述第一任务执行节点基于所述目标微服务调用所述目标微服务对应的封装模型。
8.一种模型的运维服务装置,其特征在于,包括:
接收模块,接收模型任务请求,并为所述模型任务请求分配第一任务执行节点;
第一执行模块,控制所述第一任务执行节点执行与所述模型任务请求对应的目标任务;
监控模块,监控所述目标任务在所述第一任务执行节点中的执行进度,并保存所述目标任务对应的多个中间状态信息;
确定模块,响应于确定所述目标任务在所述第一任务执行节点中执行失败,从所述多个中间状态信息中确定目标中间状态信息;
第二执行模块,控制所述第一任务执行节点基于所述目标中间状态信息重新执行所述目标任务。
9.一种电子设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可由所述处理器执行的计算机程序,所述处理器执行所述程序时实现如权利要求1至7中任意一项所述的方法。
10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行根据权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311596648.5A CN117827393A (zh) | 2023-11-27 | 2023-11-27 | 模型的运维服务方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311596648.5A CN117827393A (zh) | 2023-11-27 | 2023-11-27 | 模型的运维服务方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117827393A true CN117827393A (zh) | 2024-04-05 |
Family
ID=90518024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311596648.5A Pending CN117827393A (zh) | 2023-11-27 | 2023-11-27 | 模型的运维服务方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117827393A (zh) |
-
2023
- 2023-11-27 CN CN202311596648.5A patent/CN117827393A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11467879B2 (en) | Techniques for implementing rollback of infrastructure changes in a cloud infrastructure orchestration service | |
US10824981B2 (en) | Transaction orchestration for microservice | |
US10684868B2 (en) | Configuration for application using microservices | |
US10430172B2 (en) | Re-configuration in cloud computing environments | |
US8954579B2 (en) | Transaction-level health monitoring of online services | |
CN109901985B (zh) | 分布式测试装置及方法、存储介质和电子设备 | |
US20150100831A1 (en) | Method and system for selecting and executing test scripts | |
US10310964B2 (en) | System and method for determining relevance of application software maintenance | |
CN115328752B (zh) | 一种用于Kubernetes控制面测试的集群模拟方法及系统 | |
CN113553178A (zh) | 任务处理方法、装置和电子设备 | |
CN116541142A (zh) | 任务调度方法、装置、设备、存储介质及计算机程序产品 | |
US11169910B2 (en) | Probabilistic software testing via dynamic graphs | |
CN112346965A (zh) | 测试用例分配方法、装置及存储介质 | |
CN109828830B (zh) | 用于管理容器的方法和装置 | |
CN113419818A (zh) | 基础组件部署方法、装置、服务器及存储介质 | |
US20230367936A1 (en) | Verification method, electronic device and storage medium | |
US10073689B2 (en) | Managing application lifecycles within a federation of distributed software applications | |
CN114006815A (zh) | 云平台节点的自动化部署方法、装置、节点及存储介质 | |
US20230195512A1 (en) | Monitoring container-implemented software applications | |
CN117827393A (zh) | 模型的运维服务方法、装置、电子设备及存储介质 | |
CN114968644A (zh) | 系统软件转储方法、装置、电子设备及可读存储介质 | |
CN112882921B (zh) | 故障模拟方法和装置 | |
CN113760768A (zh) | 一种测试方法、监控平台、电子设备及存储介质 | |
CN112463514A (zh) | 分布式缓存集群的监测方法和装置 | |
CN113835846B (zh) | k8s集群的创建方法、装置及计算机可读存储介质 |
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 |