一种AI服务平台的工作流引擎自动调度方法

文档序号:28557780发布日期:2022-01-19 16:22阅读:263来源:国知局
一种AI服务平台的工作流引擎自动调度方法
一种ai服务平台的工作流引擎自动调度方法
技术领域
1.本发明涉及人工智能的技术领域,尤其是指一种ai服务平台的工作流引擎自动调度方法。


背景技术:

2.随着人工智能技术的快速发展,对人工智能算法进行管理的科研平台研发也在如火如荼的进行,市面上出现了许多通用的ai开发平台,华为云推出的modelarts,腾讯云上线的智能态机器学习平台ti-one以及亚马逊提供的aws machine learning等都为用户提供数据预处理、模型训练、模型评估到模型服务的全流程开发支持。
3.然而,上述的通用ai开发平台都是以充足的底层资源为基础,对于高校实验室和研究所而言,在gpu等资源并不充足的情况下,用户创建的ai服务经常会因为资源不足而被强制结束,返回相应的错误信息。


技术实现要素:

4.本发明的目的在于克服现有技术在资源不足的情况下,对ai服务调度的问题,提出了一种ai服务平台的工作流引擎自动调度方法,该方法能够在ai服务平台的计算资源不充足的情况下,解决创建的ai服务直接报错的问题,通过引导用户修改ai服务的参数信息等方式,在用户可接受的等待时间范围内,执行创建的ai服务。
5.为实现上述目的,本发明所提供的技术方案为:一种ai服务平台的工作流引擎自动调度方法,包括如下步骤:
6.1)ai服务平台为用户定制ai服务的流程定义,并维护一个等待激活的ai服务实例队列q;
7.2)用户对ai服务中占用计算资源的任务设置执行的时长限制tc_limit和等待执行的时长限制tw_limit的值,并启动一个ai服务的实例;
8.3)ai服务平台计算用户启动的ai服务实例中占用计算资源的任务的执行时长tc;
9.4)ai服务平台依据计算的执行时长tc,结合ai服务平台当前计算资源的使用状况和等待激活队列的信息对用户启动的ai服务实例进行调度。
10.进一步,在步骤1)中,ai服务平台为用户定制的ai服务流程定义中存在占用计算资源的任务,若不存在该类任务,则定制的ai服务流程定义中的所有任务按流程定义顺序执行完即可。
11.进一步,在步骤2)中,ai服务平台默认设置ai服务中占用计算资源的任务执行的时长限制的值tc_limit为tc_default,设置等待执行时长限制tw_limit的值为tw_default,用户能够使用ai服务平台设置的默认值,也能够进行修改。
12.进一步,在步骤3)中,ai服务实例中占用计算资源的任务在ai服务流程中存在决定其执行时长的前置任务,ai服务平台完成其前置任务后,将ai服务实例挂起,计算ai服务实例中占用计算资源的任务的执行时长tc。
13.进一步,在步骤4)中,ai服务平台对计算得到的执行时长tc进行判断:若tc》2*tc_limit,则删除当前ai服务实例,结束ai服务;若tc_limit《tc《2*tc_limit,则提示用户是否重新设置前置任务的相关参数;若tc《tc_limit,则计算等待激活队列q中ai服务实例的占用计算资源的任务执行时长之和tw_sum,依据ai服务平台的计算资源的使用情况进行判断,具体如下:
14.若ai服务平台的计算资源没有被占用,同时tw_sum=0,即等待激活队列没有ai服务实例,则激活当前挂起的ai服务实例,执行占用计算资源的任务,若tw_sum》0,则判断tw_sum和tw_limit的大小;若ai服务平台的计算资源被占用,则计算当前正在执行的任务的剩余时间tl,若tw_sum+tl》tw_limit,则删除当前ai服务实例,结束ai服务,若tw_sum+tl《tw_limit,则将当前挂起的ai服务实例添加到等待队列q的队尾,等待占用计算资源的任务执行结束。
15.进一步,若用户重新设置前置任务的相关参数,则ai服务平台激活ai服务实例后,返回到步骤3);若用户不重新设置,则删除当前ai服务实例,结束ai服务。
16.进一步,若tw_sum《tw_limit,则将当前挂起的ai服务实例添加到等待队列q的队尾,等待占用计算资源的任务执行结束;若tw_sum》tw_limit,则删除当前ai服务实例,结束ai服务。
17.本发明与现有技术相比,具有如下优点与有益效果:
18.本发明能够在ai服务平台的计算资源不充足的情况下,解决创建的ai服务直接报错的问题,通过引导用户修改ai服务的参数信息等方式(比如对ai服务的执行时长和等待执行时长等信息进行设置),在用户可接受的等待时间范围内,执行创建的ai服务。总之,本发明将人工智能服务和工作流结合起来,提出一种ai服务平台的工作流引擎自动调度方法,用于在计算资源不充足的情况下,对创建的ai服务进行调度,大大提高了ai服务的完成率,有效提高了ai服务平台的计算资源的使用率,具有实际应用价值,值得推广。
附图说明
19.图1为本发明逻辑流程示意图。
20.图2为本发明具体流程示意图。
具体实施方式
21.下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
22.参见图1所示,本实施例公开了一种ai服务平台的工作流引擎自动调度方法,具体步骤如下:
23.1)ai服务平台定制ai服务的流程定义。ai服务平台为不同的用户定制可差异化的ai服务流程定义,例如对于模型训练,用户a的服务流程中包含对图片的预处理,用户b则不包括。不同的ai服务拥有的流程任务不尽相同,对于不包含占用计算资源的任务的ai服务,ai服务平台直接按照流程定义中的顺序执行直至流程结束。同时,ai服务平台维护一个等待激活的ai服务实例的队列q。
24.2)用户对ai服务中占用计算资源的任务设置执行的时长限制和等待执行的时长
限制,并启动一个ai服务的实例。对于包含占用计算资源的任务的ai服务,ai服务平台设置了任务执行的时长限制tc_limit和等待执行的时长限制tw_limit的默认值,防止ai服务执行时间过长或由于计算资源排队使用的问题导致ai服务等待时间过长,用户可以使用ai服务平台设置的默认值,也可以进行修改。
25.3)ai服务平台计算用户启动的ai服务实例中占用计算资源的任务的执行时长。包含占用计算资源的任务的ai服务流程中,一定存在决定任务执行时长的前置任务,用户启动一个ai服务的实例后,ai服务平台按照ai服务流程的定义顺序执行,在执行完前置任务后,将整个ai服务实例挂起,计算占用计算资源的任务的执行时长tc。
26.4)ai服务平台依据计算的执行时长tc结合当前计算资源的使用状况对用户启动的ai服务实例进行调度。通过对在步骤3)中计算得到的执行时长结果进行分析,结合等待激活队列中的信息以及ai服务平台的计算资源使用状况,ai服务平台判断对当前挂起的ai服务实例实施删除还是激活亦或是添加到等待激活队列q的操作。
27.如图2所示,为本实施例上述ai服务平台的工作流引擎自动调度方法的具体流程示意图,具体步骤如下:
28.1)用户启动ai服务平台为其定制的ai服务流程的实例。
29.2)ai服务平台判断启动的ai服务实例的流程任务中是否存在占用计算资源的任务。若不存在占用计算资源的任务,则ai服务平台直接按照流程定义中的顺序执行直至流程结束。若存在,则ai服务平台按照流程定义中的顺序执行至该任务的前置任务结束,挂起该ai服务实例,计算该ai服务实例中占用计算资源的任务的执行时长tc。
30.3)ai服务平台对计算得到的执行时长结果tc进行判断:若tc》2*tc_limit,则删除当前ai服务实例,结束ai服务;若tc_limit《tc《2*tc_limit,则根据用户是否重新设置前置任务的相关参数进行下一步;若tc《tc_limit,则计算等待激活队列q中ai服务实例的占用计算资源的任务执行时长之和tw_sum,依据ai服务平台的计算资源的使用情况和tw_sum的值进行判断。
31.若用户重新设置前置任务的相关参数,则ai服务平台激活ai服务实例后,返回到步骤2);若用户不重新设置,则删除当前ai服务实例,结束ai服务。
32.若ai服务平台的计算资源没有被占用,同时tw_sum=0,即等待激活队列没有ai服务实例,则激活当前挂起的ai服务实例,执行占用计算资源的任务,若tw_sum》0,则判断tw_sum和tw_limit的大小;若ai服务平台的计算资源被占用,则计算当前正在执行的任务的剩余时间tl,若tw_sum+tl》tw_limit,则删除当前ai服务实例,结束ai服务,若tw_sum+tl《tw_limit,则将当前挂起的ai服务实例添加到等待队列q的队尾,等待占用计算资源的任务执行结束。
33.4)若tw_sum《tw_limit,则将当前挂起的ai服务实例添加到等待队列q的队尾,等待占用计算资源的任务执行结束;若tw_sum》tw_limit,则删除当前ai服务实例,结束ai服务。
34.上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1