一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于多计算平台的AI在线交互式开发方法及相关设备与流程

2022-12-20 21:59:56 来源:中国专利 TAG:

基于多计算平台的ai在线交互式开发方法及相关设备
技术领域
1.本发明涉及人工智能技术领域,特别涉及一种基于多计算平台的ai在线交互式开发方法及相关设备。


背景技术:

2.人工智能领域的开发工作通常要求特定的软硬件支撑环境:硬件加速资源有gpu(gpu:graphic processing unit,中文名为图形处理器,通常适用于处理大规模并发运算)、npu(npu:neural-network processing units,中文名为嵌入式神经网络处理器,其采用“数据驱动并行计算”的架构,特别擅长处理视频、图像类的海量多媒体数据)和mlu(mlu:machine learning unit,中文名为机器学习单元,是一种云端ai芯片)等多种类型;开发框架有pytorch、tensorflow、mindspore和paddlepaddle等多种类型。开发者在开发工作开启之前,通常需要花费较多的时间配置开发环境,包括软件版本和底层硬件加速资源的版本适配等。在线人工智能交互式开发系统能够为开发者提供开箱即用的开发环境,用户只需连接互联网,即可使用在线环境进行开发工作。
3.业务需求是提供兼容多计算平台的在线交互式开发环境,可以支持多种硬件加速资源,多种开发框架,并提供可配置的在线运行环境,为用户在线开发提供便捷工具支持。
4.人工智能领域的开发者在准备开发所需环境时,通常采用以下几种方式:1)、自行购买硬件设备;2)、租用云服务器;3)、使用在线开发平台。
5.第一种方式需要花费较多资金购置设备,并且自行安装系统、驱动、框架等一系列的软件。不能随意尝试新的硬件设备,并且开发环境通常是本地或者局域网内的,难以实现异地工作。
6.第二种方式比第一种方式更灵活一些,无需自行安装底层操作系统并维护硬件设施。但云服务器通常为单一环境,如果需要体验多环境仍旧需要购买多台云服务器;同时云服务器按指定时间段租赁,受限于用户使用时间,在非开发时间也是需要为资源付费。
7.已有的在线开发环境,通常面向的是单一的硬件资源和单一的开发框架,比如ai studio提供的是paddlepaddle开发框架和gpu计算资源,modelarts提供的是mindspore开发框架和npu计算资源。当用户需要完成算法或模型在多个底层硬件环境适配时,就不得不准备多类型硬件设备或在多个平台间切换,造成工作不便。
8.因而现有技术还有待改进和提高。


技术实现要素:

9.本发明的主要目的在于提供一种基于多计算平台的ai在线交互式开发方法及相关设备,旨在解决现有技术中的在线开发环境无法是适配多个底层硬件环境,而导致的开发门槛高和便利性差的问题。
10.为了达到上述目的,本发明采取了以下技术方案:
11.一种基于多计算平台的ai在线交互式开发方法,所述基于多计算平台的ai在线交
互式开发方法包括以下步骤:
12.交互式开发平台对多个智算中心进行注册和配置;
13.所述交互式开发平台接收注册用户建立的开发任务请求,根据所述开发任务请求选择适配的智算中心资源,以选择多个预选智算中心;
14.所述交互式开发平台根据平台调度策略从多个所述预选智算中心中选择适配智算中心后,获取所述适配智算中心的智能计算平台的授权信息,并发送分配资源环境请求至所述智能计算平台;
15.所述交互式开发平台根据所述适配智算中心的api接口要求将所述开发任务请求进行封装后,发送至所述适配智算中心中的智能计算平台;
16.所述智能计算平台根据所述分配资源环境请求分配所述开发任务请求所需的资源和环境,并发送访问资源链接至所述交互式开发平台;
17.所述交互式开发平台将所述访问资源链接与所述开发任务请求进行关联,并将所述访问资源链接发送至所述注册用户;
18.所述交互式开发平台接收来自所述注册用户的停止任务请求,根据所述停止任务请求选择所述适配智算中心,并将所述停止任务请求发送至所述适配智算中心,以所述适配智算中心释放占用资源。
19.所述基于多计算平台的ai在线交互式开发方法中,所述交互式开发平台对多个智算中心进行注册和配置的步骤具体包括:
20.交互式开发平台对可调用的多个智算中心进行注册和配置,分别获取多个智算中心的鉴权信息和资源信息。
21.所述基于多计算平台的ai在线交互式开发方法中,所述交互式开发平台接收注册用户建立的开发任务请求,根据所述开发任务请求选择适配的智算中心资源,以选择多个预选智算中心的步骤具体包括:
22.所述交互式开发平台依次接收待注册用户的注册和登陆信息,并接收所述注册用户进行配置所需任务参数的操作后得到的所述开发任务请求;
23.所述交互式开发平台提取所述开发任务请求中的所需硬件资源,并与所述智算中心资源进行匹配,选择多个所述预选智算中心。
24.所述基于多计算平台的ai在线交互式开发方法中,所述交互式开发平台根据平台调度策略从多个所述预选智算中心中选择适配智算中心后,获取所述适配智算中心的智能计算平台的授权信息,并发送分配资源环境请求至所述智能计算平台的步骤具体包括:
25.所述交互式开发平台根据所述平台调度策略从多个所述预选智算中心中选择所述适配智算中心;
26.所述交互式开发平台调用所述智能计算平台的第一api接口,接收所述第一api接口的输入参数,并接收所述第一api接口返回的所述智能计算平台的api访问授权信息;
27.所述交互式开发平台基于所述api访问授权信息调用所述第一api接口,传输所述分配资源环境请求至所述智能计算平台。
28.所述基于多计算平台的ai在线交互式开发方法中,所述交互式开发平台根据所述适配智算中心的api接口要求将所述开发任务请求进行封装后,发送至所述适配智算中心中的智能计算平台的步骤具体包括:
29.所述交互式开发平台根据所述智能计算平台的所述api接口要求将所述开发任务请求进行封装;
30.所述交互式开发平台依据第一api接口返回的所述api访问授权信息,将封装后的开发任务请求通过第二api接口发送至所述智算中心中的智能计算平台。
31.所述基于多计算平台的ai在线交互式开发方法中,所述智能计算平台根据所述分配资源环境请求分配所述开发任务请求所需的资源和环境,并发送访问资源链接至所述交互式开发平台的步骤具体包括:
32.所述智能计算平台根据分配资源环境请求分配所述开发任务请求所需的资源和环境;
33.所述智能计算平台发送访问资源链接至所述交互式开发平台。
34.所述基于多计算平台的ai在线交互式开发方法中,所述交互式开发平台将所述访问资源链接与所述开发任务请求进行关联,并将所述访问资源链接发送至所述注册用户的步骤具体包括:
35.所述交互式开发平台将所述访问资源链接与所述开发任务请求进行关联;
36.所述交互式开发平台将所述访问资源链接发送至所述注册用户。
37.所述基于多计算平台的ai在线交互式开发方法中,所述交互式开发平台接收来自所述注册用户的停止任务请求,根据所述停止任务请求选择所述适配智算中心,并将所述停止任务请求发送至所述适配智算中心,以所述适配智算中心释放占用资源的步骤具体包括:
38.所述交互式开发平台接收所述注册用户发起的所述停止任务请求;
39.所述交互式开发平台根据所述停止任务请求选择所述适配智算中心;
40.所述交互式开发平台调用所述适配智算中心的第三api接口将所述停止任务请求发送至所述适配智算中心;
41.所述适配智算中心依据停止任务请求停止任务,并释放任务占用的资源。
42.所述基于多计算平台的ai在线交互式开发方法中,所述鉴权信息包括授权给交互式开发平台进行登录的用户名和密码;所述资源信息包括硬件加速芯片类型和型号。
43.所述基于多计算平台的ai在线交互式开发方法中,所述所需任务参数包括所需硬件资源、资源规格和开发框架。
44.所述基于多计算平台的ai在线交互式开发方法中,所述输入参数为所述智能计算平台配置的所述授权信息。
45.所述基于多计算平台的ai在线交互式开发方法中,所述资源包括硬件加速资源、cpu、内存和存储,所述环境包括在线可访问的容器,所述容器包括ai开发框架。
46.一种基于多计算平台的ai在线交互式开发系统,所述基于多计算平台的ai在线交互式开发系统包括:交互式开发平台和智算中心;所述交互式开发平台包括用户管理模块、智算资源管理模块、用户请求预处理模块、任务管理模块和调度分发模块;
47.所述用户管理模块用于接收待注册用户的注册和登录信息;
48.所述智算资源管理模块用于对多个智算中心进行注册和配置;
49.所述用户请求预处理模块用于接收注册用户建立的开发任务请求;
50.所述调度分发模块用于根据所述开发任务请求选择适配的智算中心资源,以选择
多个预选智算中心;
51.所述调度分发模块用于获取智能计算平台的授权信息,并发送分配资源环境请求至所述智能计算平台;
52.所述调度分发模块还用于根据平台调度策略选择适配智算中心,并根据所述适配智算中心的api接口要求将所述开发任务请求进行封装后,发送至所述适配智算中心中的智能计算平台;
53.所述智能计算平台用于根据所述分配资源环境请求分配所述开发任务请求所需的资源和环境,并发送访问资源链接至所述调度分发模块;
54.所述任务管理模块用于将所述访问资源链接与所述开发任务请求进行关联,并将所述访问资源链接发送至所述注册用户;
55.所述任务管理模块还用于接收来自所述注册用户的停止任务请求,根据所述停止任务请求选择所述适配智算中心,并将所述停止任务请求发送至所述适配智算中心。
56.一种计算机可读存储介质,所述计算机可读存储介质存储有基于多计算平台的ai在线交互式开发程序,所述基于多计算平台的ai在线交互式开发程序被处理器执行时实现如上所述的基于多计算平台的ai在线交互式开发方法的步骤。
57.相较于现有技术,本发明提供的一种基于多计算平台的ai在线交互式开发方法及相关设备,所述方法包括:交互式开发平台接收开发任务请求后选择适配的智算中心资源;根据平台调度策略选择适配智算中心,并获取所述适配智算中心的智能计算平台的授权信息;以及根据适配智算中心的api接口要求将开发任务请求进行封装;智能计算平台根据分配资源环境请求分配开发任务请求所需的资源和环境,并发送访问资源链接至交互式开发平台;交互式开发平台将访问资源链接与开发任务请求进行关联,并将访问资源链接发送至注册用户。通过建立统一的交互式开发平台,接入多个智能计算平台并通过互联网面向用户提供ai交互式开发环境,提高了开发的便利性和降低了开发成本。
附图说明
58.图1为本发明提供的基于多计算平台的ai在线交互式开发方法的较佳实施例的流程图;
59.图2为本发明提供的基于多计算平台的ai在线交互式开发方法的较佳实施例中步骤s200的流程图;
60.图3为本发明提供的基于多计算平台的ai在线交互式开发方法的较佳实施例中步骤s300的流程图;
61.图4为本发明提供的基于多计算平台的ai在线交互式开发方法的较佳实施例中步骤s400的流程图;
62.图5为本发明提供的基于多计算平台的ai在线交互式开发方法的较佳实施例中步骤s500的流程图;
63.图6为本发明提供的基于多计算平台的ai在线交互式开发方法的较佳实施例中步骤s600的流程图;
64.图7为本发明提供的基于多计算平台的ai在线交互式开发方法的较佳实施例中步骤s700的流程图;
65.图8为本发明提供的创建交互式开发任务流程图;
66.图9为兼容多计算平台的在线人工智能开发系统架构图。
具体实施方式
67.为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
68.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
69.本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
70.为了方便理解本技术实施例,首先在此介绍本发明实施例中基于多计算平台的ai在线交互式开发方法的实现过程:
71.通过多智算中心(智算中心是智慧时代最主要的计算力生产中心,它以融合架构计算系统为平台,以数据为资源,能够以强大算力驱动ai模型对数据进行深度加工,源源不断产生各种智慧计算服务,并通过网络以云服务形式供应给组织及个人)的开放式api(api:application programming interface,中文名为“应用程序编程接口”,是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节),建立统一的在线交互式ai开发平台,汇聚多智算中心的能力,可同时提供多种计算芯片硬件设施,多类型ai开发框架的开发环境。
72.类似于云计算服务,智算中心对其拥有的ai集群设备进行统一的管理,通过网络以云服务的形式提供给组织及个人使用。与云计算中提供的是云服务器环境不同,智算中心用户使用该云服务的形式是指定所需的计算资源,并提交ai任务申请;服务端依据资源请求配置好相应的任务环境,并分配给用户使用。用户仅在执行ai任务期间使用该资源,当任务停止后该资源即被释放。
73.因此,本发明提供了一种基于多计算平台的ai在线交互式开发方法及相关设备。本发明中通过交互式开发平台根据接收到的注册用户建立的开发任务请求选择适配的智算中心资源,以选择多个预选智算中心,并在获取所述智能计算平台的授权信息后,发送分配资源环境请求至所述智能计算平台;而所述智能计算平台则会根据所述分配资源环境请求分配所述开发任务请求所需的资源和环境,并发送访问资源链接至所述交互式开发平
台,然后,所述交互式开发平台将所述访问资源链接与所述开发任务请求进行关联,并将所述访问资源链接发送至所述注册用户,从而实现了提供兼容多计算平台的在线交互式开发环境,可以支持多种硬件加速资源和多种开发框架,并提供可配置的在线运行环境,为用户在线开发提供便捷工具支持,从而有效地降低了ai开发门槛、降低了开发成本、提高了便利性,以及提高了资源利用率。
74.下面通过具体示例性的实施例对基于多计算平台的ai在线交互式开发方法设计方案进行描述,需要说明的是,下列实施例只用于对发明的技术方案进行解释说明,并不做具体限定:
75.请参阅图1,本发明提供的一种基于多计算平台的ai在线交互式开发方法,所述基于多计算平台的ai在线交互式开发方法包括以下步骤:
76.s100、交互式开发平台对多个智算中心进行注册和配置。
77.具体地,所述交互式开发平台与多个所述智算中心之间进行连接,即所述交互式开发平台对在线人工智能开发平台(交互式开发平台)可调用的智算中心进行注册和配置,从而告诉所述交互式开发平台能够使用的所述智算中心有多少个。
78.更进一步地,所述s100、交互式开发平台对多个智算中心进行注册和配置的步骤具体包括:
79.s110、交互式开发平台对可调用的多个智算中心进行注册和配置,分别获取多个智算中心的鉴权信息和资源信息。其中,所述鉴权信息包括授权给交互式开发平台进行登录的用户名和密码;所述资源信息包括硬件加速芯片类型和型号。
80.具体地,所述交互式开发平台与多个所述智算中心之间进行连接,即所述交互式开发平台对在线人工智能开发平台可调用的智算中心进行注册和配置,主要包括智算中心中的ai计算平台的鉴权信息,即授权给平台登录和调用api的用户名、密码、访问token(access token:访问令牌或访问token,是api接口调用的凭证,用于校验api接口调用是否有权限)等信息;ai计算平台的资源信息包括硬件加速芯片类型和型号(如gpu nvidia 2080ti或npu ascend910),资源规格类型(如1卡gpu 8核cpu 16g内存)和可用开发框架(如pytorch、tensorflow、mindspore)。其中,ai计算平台是智算中心对外提供算力服务的应用程序。
81.进一步地,请继续参阅图1,s200、所述交互式开发平台接收注册用户建立的开发任务请求,根据所述开发任务请求选择适配的智算中心资源,以选择多个预选智算中心。
82.具体地,在完成对多个智算中心进行注册和配置之后,当注册用户建立的所述开发任务请求时,所述交互式开发平台根据所述开发任务请求选择适配的智算中心资源,以便选择多个所述预选智算中心。即完成了将所述开发任务请求与所述交互式开发平台提供的可选的智算中心进行适配,从与所述交互式开发平台进行连接的所有所述智算中心中选择可选的智算中心,即得到多个(也可能是一个)所述预选智算中心。本发明中通过建立统一的ai开发平台(交互式开发平台),接入多个ai计算平台并通过互联网面向用户提供ai交互式开发环境,解决了ai领域开发者在专属环境使用方面的问题。
83.更进一步地,请参阅图2,s200、所述交互式开发平台接收注册用户建立的开发任务请求,根据所述开发任务请求选择适配的智算中心资源,以选择多个预选智算中心的步骤具体包括:
84.s210、所述交互式开发平台依次接收待注册用户的注册和登陆信息,并接收所述注册用户进行配置所需任务参数的操作后得到的所述开发任务请求;其中,所述所需任务参数包括所需硬件资源、资源规格和开发框架。
85.s220、所述交互式开发平台提取所述开发任务请求中的所需硬件资源,并与所述智算中心资源进行匹配,选择多个所述预选智算中心。
86.具体地,在完成对多个智算中心进行注册和配置之后,所述注册用户创建所述交互式开发任务的具体过程为:所述待注册用户在线人工智能开发平台上进行注册和登录操作,以便完成平台用户注册和登录鉴权功能,成为了所述注册用户,然后,开始创建所述交互式开发任务,并配置任务参数,包括所需硬件资源、资源规格和开发框架,完成任务配置后提交任务。接下来,所述交互式开发平台提取所述开发任务请求中的所需硬件资源,并与所述智算中心资源进行匹配,以便选择多个所述预选智算中心。
87.进一步地,请继续参阅图1,s300、所述交互式开发平台根据平台调度策略从多个所述预选智算中心中选择适配智算中心后,获取所述适配智算中心的智能计算平台的授权信息,并发送分配资源环境请求至所述智能计算平台。
88.具体地,在根据所述开发任务请求匹配选择多个所述预选智算中心之后,所述交互式开发平台依据平台调度策略,确定所述开发任务请求具体分发到地哪一个智算中心,即确定所述开发任务请求分发到所述适配智算中心;并所述交互式开发平台进一步地获取所述适配智算中心的智能计算平台(ai计算平台)的授权信息(访问token),从而完成了根据所述开发任务请求具体适配到一个最合适的所述适配智算中心,以便能够最合理化且最大化地利用智算中心资源,最后,向所述智能计算平台发送所述分配资源环境请求。
89.更进一步地,请继续参阅图3,s300、所述交互式开发平台根据平台调度策略从多个所述预选智算中心中选择适配智算中心后,获取所述适配智算中心的智能计算平台的授权信息,并发送分配资源环境请求至所述智能计算平台的步骤具体包括:
90.s310、所述交互式开发平台根据所述平台调度策略从多个所述预选智算中心中选择所述适配智算中心;
91.s320、所述交互式开发平台调用所述智能计算平台的第一api接口,接收所述第一api接口的输入参数,并接收所述第一api接口返回的所述智能计算平台的api访问授权信息;其中,所述输入参数为所述智能计算平台配置的所述授权信息;
92.s330、所述交互式开发平台基于所述api访问授权信息调用所述第一api接口,传输所述分配资源环境请求至所述智能计算平台。
93.具体地,在根据所述开发任务请求中的所需硬件资源匹配选择多个所述预选智算中心之后,所述交互式开发平台根据所述平台调度策略从多个所述预选智算中心中选择所述适配智算中心,以便确定所述开发任务请求具体分发到地哪一个智算中心;然后,所述交互式开发平台调用所述智能计算平台的第一api接口,接收所述第一api接口的输入参数(所述输入参数为所述智能计算平台配置的所述授权信息),并接收所述第一api接口返回的所述智能计算平台的api访问授权信息;最后,所述交互式开发平台基于所述api访问授权信息调用所述第一api接口,传输所述分配资源环境请求至所述智能计算平台。
94.进一步地,请继续参阅图1,s400、所述交互式开发平台根据所述适配智算中心的api接口要求将所述开发任务请求进行封装后,发送至所述适配智算中心中的智能计算平
台。
95.具体地,在获取所述适配智算中心的智能计算平台的授权信息之后,所述交互式开发平台根据所述适配智算中心的api接口要求将所述开发任务请求进行封装,并将封装之后的开发任务请求发送至所述适配智算中心中的智能计算平台,从而将统一不同平台上api接口的接口规范,可以减少因不同ai计算平台上api接口之间出现不适配,而导致的无法接收的情况出现,有利于开发任务请求在不同接口之间的传输。
96.更进一步地,请参阅图4,s400、所述交互式开发平台根据所述适配智算中心的api接口要求将所述开发任务请求进行封装后,发送至所述适配智算中心中的智能计算平台的步骤具体包括:
97.s410、所述交互式开发平台根据所述智能计算平台的所述api接口要求将所述开发任务请求进行封装;
98.s420、所述交互式开发平台依据第一api接口返回的所述api访问授权信息,将封装后的开发任务请求通过第二api接口发送至所述智算中心中的智能计算平台。
99.具体地,在获取所述智能计算平台的授权信息之后,所述交互式开发平台根据所述智能计算平台的所述api接口要求将所述开发任务请求进行封装,这是由于不同的ai计算平台其api参数可能不相同,如果需要在不同的ai计算平台进行任务的传输,则需要依据对应api接口规范进行请求内容封装。然后,所述交互式开发平台依据所述适配智算中心的第一api接口返回的api访问授权信息,将封装后的开发任务请求通过所述适配智算中心的第二api接口发送至所述智算中心中的智能计算平台。
100.进一步地,请继续参阅图1,s500、所述智能计算平台根据所述分配资源环境请求分配所述开发任务请求所需的资源和环境,并发送访问资源链接至所述交互式开发平台。其中,所述资源包括硬件加速资源、cpu、内存和存储,所述环境包括在线可访问的容器,所述容器包括ai开发框架。
101.具体地,在所述交互式开发平台将所述分配资源环境请求发送至所述智能计算平台之后,所述智能计算平台根据所述分配资源环境请求分配所述开发任务请求所需的资源(所述资源包括硬件加速资源、cpu、内存和存储)和环境(所述环境包括在线可访问的容器,所述容器包括ai开发框架),并发送访问资源链接(资源访问url链接)至所述交互式开发平台,从而实现根据所述分配资源环境请求分配所述开发任务请求所需的资源和环境。
102.更进一步地,请参阅图5,s500、所述智能计算平台根据所述分配资源环境请求分配所述开发任务请求所需的资源和环境,并发送访问资源链接至所述交互式开发平台的步骤具体包括:
103.s510、所述智能计算平台根据所述分配资源环境请求分配所述开发任务请求所需的资源和环境;
104.s520、所述智能计算平台发送访问资源链接至所述交互式开发平台。
105.具体地,在所述智能计算平台接收到所述分配资源环境请求之后,所述智能计算平台根据所述分配资源环境请求分配所述开发任务请求所需的资源和环境,同时,所述智能计算平台发送所述访问资源链接至所述交互式开发平台。其中,所述访问资源链接和任务一一对应的。
106.进一步地,请继续参阅图1,s600、所述交互式开发平台将所述访问资源链接与所
述开发任务请求进行关联,并将所述访问资源链接发送至所述注册用户。
107.具体地,在所述智能计算平台发送所述访问资源链接至所述交互式开发平台后,所述交互式开发平台将所述访问资源链接与所述开发任务请求进行关联,并发送所述访问资源链接至所述注册用户,从而实现了将访问资源链接与开发任务请求进行关联,使得所述访问资源链接与所述开发任务请求具有专一的匹配关系。
108.更进一步地,请参阅图6,s600、所述交互式开发平台将所述访问资源链接与所述开发任务请求进行关联,并将所述访问资源链接发送至所述注册用户的步骤具体包括:
109.s610、所述交互式开发平台将所述访问资源链接与所述开发任务请求进行关联;
110.s620、所述交互式开发平台将所述访问资源链接发送至所述注册用户。
111.具体地,在所述智能计算平台接收到所述访问资源链接之后,由于ai开发平台后端数据库会记录ai开发任务和为任务分配的资源链接的url对应关系,所以所述交互式开发平台能够将所述访问资源链接与所述开发任务请求之间建立起关联,然后,所述交互式开发平台将所述访问资源链接发送至所述注册用户。
112.进一步地,请继续参阅图1,s700、所述交互式开发平台接收来自所述注册用户的停止任务请求,根据所述停止任务请求选择所述适配智算中心,并将所述停止任务请求发送至所述适配智算中心,以。
113.具体地,在所述注册用户接收到所述访问资源链接后,可以在所述访问资源链接上发起所述停止任务请求至所述交互式开发平台,然后,所述交互式开发平台根据所述停止任务请求选择所述适配智算中心,以便将所述停止任务请求发送至所述适配智算中心,最终,所述适配智算中心释放所述占用资源,真正地停止了任务,从而实现在所述访问资源链接上发起所述停止任务请求,就可以使得所述交互式开发平台轻松控制所述适配智算中心释放所述占用资源,进而实现资源随ai任务的结束而释放,降低了开发成本,提高了资源利用率。并且,当ai任务释放后,资源也会被释放,同时资源链接无效。
114.更进一步地,请参阅图7,s700、所述交互式开发平台接收来自所述注册用户的停止任务请求,根据所述停止任务请求选择所述适配智算中心,并将所述停止任务请求发送至所述适配智算中心,以所述适配智算中心释放占用资源的步骤具体包括:
115.s710、所述交互式开发平台接收所述注册用户发起的所述停止任务请求;
116.s720、所述交互式开发平台根据所述停止任务请求选择所述适配智算中心;
117.s730、所述交互式开发平台调用所述适配智算中心的第三api接口将所述停止任务请求发送至所述适配智算中心;
118.s740、所述适配智算中心依据停止任务请求停止任务,并释放任务占用的资源。
119.具体地,所述注册用户接收到所述访问资源链接后,用户通过web页面访问所述访问资源链接后会弹出一个交互式开发环境窗口,当所述注册需要间断或者已完成开发工作时,可以关闭所述交互式开发环境窗口,并在所述交互式开发平台上通过按下停止操作按键来选择停止任务,即向所述交互式开发平台发起所述停止任务请求;然后,所述交互式开发平台根据所述停止任务请求选择相应地所述适配智算中心,并调用所述适配智算中心的第三api接口将所述停止任务请求发送至所述适配智算中心,最后,所述适配智算中心接收到所述停止任务请求后,停止任务并回收任务占用的相应的资源。那么,最终的创建交互式开发任务流程图如图8所示。
120.进一步地,请参阅图9,本发明提供的一种基于多计算平台的ai在线交互式开发系统,所述基于多计算平台的ai在线交互式开发系统包括:交互式开发平台10(图9中的在线人工智能开发平台)和智算中心20(包括图9中的智算中心a和智算中心b);所述交互式开发平台10包括用户管理模块11、智算资源管理模块12、用户请求预处理模块13、任务管理模块14和调度分发模块15;
121.所述用户管理模块11用于接收待注册用户的注册和登录信息;
122.所述智算资源管理模块12用于对多个智算中心20进行注册和配置;
123.所述用户请求预处理模块13用于接收注册用户建立的开发任务请求;
124.所述调度分发模块15用于根据所述开发任务请求选择适配的智算中心资源,以选择多个预选智算中心21;
125.所述调度分发模块15用于获取智能计算平台30的授权信息,并发送分配资源环境请求至所述智能计算平台30;
126.所述调度分发模块15还用于根据平台调度策略选择适配智算中心211,并根据所述适配智算中心211的api接口要求将所述开发任务请求进行封装后,发送至所述适配智算中心211中的智能计算平台30;
127.所述智能计算平台30用于根据所述分配资源环境请求分配所述开发任务请求所需的资源和环境,并发送访问资源链接至所述调度分发模块15;
128.所述任务管理模块14用于将所述访问资源链接与所述开发任务请求进行关联,并将所述访问资源链接发送至所述注册用户;
129.所述任务管理模块14还用于接收来自所述注册用户的停止任务请求,根据所述停止任务请求选择所述适配智算中心211,并将所述停止任务请求发送至所述适配智算中心211。
130.具体地,图9所示的是兼容多计算平台的在线人工智能开发系统架构图,其中,以m个(待注册)用户在在线人工智能开发平台(交互式开发平台)上进行注册和登记,两个智算中心(智算中心a和智算中心b)的两个ai计算平台(也叫智能计算平台,ai计算平台1和ai计算平台2)为例,ai计算平台内包含api接口层、任务调度层和资源管理层。
131.通过建立一个面向互联网用户的统一的人工智能交互式开发平台,该平台接收用户发起的ai交互式开发任务请求,并依据任务的资源需求将其分发至平台连接的ai计算平台,兵器人,每个ai计算平台管理一个ai计算集群资源(ai集群是由多台ai服务器组成的),并将ai任务分配至集群内的服务器。
132.那么,具体地人工智能交互式开发平台的工作原理介绍如下:由于基于多计算平台的ai在线交互式开发系统上是实现基于多计算平台的ai在线交互式开发方法的,其中,具体地基于多计算平台的ai在线交互式开发方法具体介绍如下:
133.首先,所述智算资源管理模块12用于对多个智算中心20进行注册和配置,以便对在线人工智能开发平台可调用的ai计算平台进行注册和配置,主要包括智算中心中的ai计算平台的鉴权信息,即授权给平台登录和调用api的用户名、密码、访问token(access token:访问令牌或访问token,是api接口调用的凭证,用于校验api接口调用是否有权限)等信息;ai计算平台的资源信息包括硬件加速芯片类型和型号(如gpu nvidia 2080ti或npu ascend910),资源规格类型(如1卡gpu 8核cpu 16g内存)和可用开发框架(如pytorch、
tensorflow、mindspore)。
134.然后,所述待注册用户通过web页面访问在线人工智能开发平台(交互式开发平台),完成用户注册、登录和发起交互式开发任务请求等操作,具体为:
135.所述待注册用户注册和登录在线人工智能开发平台,所述用户管理模块11接收所述待注册用户的注册和登录信息,即基于在线人工智能开发平台的所述用户管理模块11,完成平台用户注册和登录鉴权功能;并且,所述注册用户在所述在线人工智能开发平台新建一个交互式开发任务后向所述交互式开发平台提交。
136.其次,所述交互式开发平台对接收到的所述开发任务请求进行处理,并根据所述注册用户设置的交互式开发任务环境需求,实现任务请求的分发,即通过api接口调用底层的ai计算平台发明计算资源,并将获取到的资源信息返回给所述注册用户,具体为:
137.在所述注册用户在所述在线人工智能开发平台新建一个交互式开发任务后,所述用户请求预处理模块13接收注册用户建立的开发任务请求,所述调度分发模块15则根据所述开发任务请求选择适配的智算中心资源,以便选择多个预选智算中心21;而后,所述调度分发模块15获取所述智能计算平台30的授权信息,并发送分配资源环境请求至所述智能计算平台30;同时,所述调度分发模块15还用于根据平台调度策略(调度分发模块15内的调度算法,该算法可以有不同的实现方式)选择适配智算中心211,并根据所述适配智算中心211的api接口要求将所述开发任务请求进行封装后,发送至所述适配智算中心211中的智能计算平台30;所述智能计算平台30则根据所述分配资源环境请求分配所述开发任务请求所需的资源和环境,并发送访问资源链接至所述调度分发模块15;最终,所述任务管理模块14将所述访问资源链接与所述开发任务请求进行关联,并将所述访问资源链接发送至所述注册用户。
138.在所述注册用户接收到所述访问资源链接后,可以在所述访问资源链接上发起所述停止任务请求至所述交互式开发平台,所述任务管理模块14接收来自所述注册用户的停止任务请求,根据所述停止任务请求选择所述适配智算中心,并将所述停止任务请求发送至所述适配智算中心,最终,所述适配智算中心释放所述占用资源,真正地停止了任务。
139.本发明中通过建立统一的ai开发平台,接入多个ai计算平台并通过互联网面向用户提供ai交互式开发环境,解决了ai领域开发者在专属环境使用方面的问题,并且具有为ai开发者提供在线开发环境,有效地降低了ai开发门槛,提高了便利性;同时,提供多类型ai加速芯片基础设施,从而开发者可在单个平台按需选择多种环境;还有,资源随ai任务开启和结束而释放,可以降低开发成本,提高资源利用率。
140.本发明中基于统一在线交互式ai开发平台,用户只需连接互联网即可使用ai开发所需硬件资源,无需购买设备,也无需自行配置设备基础环境和网络设施;并且,基于单平台即可在多类型基础设施环境开展工作,无需切换平台;还能资源按需使用,随任务灵活开启和关闭,有效地提高了智算中心资源的整体利用率。
141.进一步地,本发明提供的一种计算机可读存储介质,所述计算机可读存储介质存储有基于多计算平台的ai在线交互式开发程序,所述基于多计算平台的ai在线交互式开发程序被处理器执行时实现如上所述的基于多计算平台的ai在线交互式开发方法的步骤;由于上述对该所述基于多计算平台的ai在线交互式开发方法的步骤进行了详细的描述,在此不再赘述。
142.综上所述,本发明提供的一种基于多计算平台的ai在线交互式开发方法及相关设备,所述方法包括:交互式开发平台接收开发任务请求后选择适配的智算中心资源;根据平台调度策略选择适配智算中心,并获取所述适配智算中心的智能计算平台的授权信息;以及根据适配智算中心的api接口要求将开发任务请求进行封装;智能计算平台根据分配资源环境请求分配开发任务请求所需的资源和环境,并发送访问资源链接至交互式开发平台;交互式开发平台将访问资源链接与开发任务请求进行关联,并将访问资源链接发送至注册用户。通过建立统一的交互式开发平台,接入多个智能计算平台并通过互联网面向用户提供ai交互式开发环境,提高了开发的便利性和降低了开发成本。
143.可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献