一种基于Web页面的AI教学实训编程平台的构建方法技术

技术编号:36454292 阅读:9 留言:0更新日期:2023-01-25 22:51
本发明专利技术公开了基于Web页面的AI教学实训编程平台的构建方法。本发明专利技术的方法包括如下步骤:(1)构建底层云原生环境,包括Kubernetes集群、Ceph存储层、Harbor镜像管理和Nacos服务发现;(2)后端采用微服务技术,以Pod形式部署在Kubernetes集群上,并注册到Nacos上,通过统一网关入口进行服务发现和访问;(3)前端同样采用微服务技术,通过Nginx代理实现统一入口访问;(4)建立数据库,用来存放平台的用户、资源等一些与平台相关的信息。本发明专利技术使得用户可以方便、快速、高效的学习及应用人工智能技术。解决了用户个人开发搭建环境不统一、多人教学不便捷、用户管理效率低等一系列问题。便捷、用户管理效率低等一系列问题。便捷、用户管理效率低等一系列问题。

【技术实现步骤摘要】
一种基于Web页面的AI教学实训编程平台的构建方法


[0001]本专利技术涉及人工智能、推荐算法和自动化机器学习领域,具体涉及一种基于Web页面的AI教学实训编程平台的构建方法。

技术介绍

[0002]随着人工智能时代的到来,越来越多的高校及科研院所开展AI课程教学,但是AI学习环境版本繁杂、依赖巨多,光是Tensorflow就有很多版本,更不用说Pytorch等其它AI软件的版本管理了,对于新人安装及其不友好,且会造成多人多环境的局面,不利于教师统一教学管理。必须采用统一、高效、稳定的AI学习环境。
[0003]为了解决这些问题,市场上涌现出了很多的AI编排平台,例如KubeFlow、MLFlow等,但是这些平台同样存在着一些问题,有些是平台重,个人安装部署难;有些是缺乏高效、有用的统一管理功能,老师无法方便有效的进行管理;同时用户个人环境资源配置也不一定满足平台的最低要求且无法体验到流畅学习全流程。

技术实现思路

[0004]专利技术目的:针对上述现有技术存在的问题和不足,本专利技术的目的是提供一种基于Web页面的AI教学实训编程平台的构建方法,集成了当下主流的AI技术和云原生框架,包括Kubernetes、Ceph、Habor等,同时从学习、存储、查询、再到计算一应俱全,涵盖了AI教学体系中的所有部分,同时也摒弃了这些原生的框架的弊端:与用户交互上的不灵活性、上手困难这些缺点,将这些技术的使用方法重新构建在网页上,提供了一种易学易用的使用方法,使得用户可以方便、快速、高效的学习及应用人工智能技术。解决了用户个人开发搭建环境不统一、多人教学不便捷、用户管理效率低等一系列问题。
[0005]技术方案:为实现上述专利技术目的,本专利技术采用的技术方案提供一种基于Web页面的AI教学实训编程平台的构建方法,包括以下步骤:(1)构建底层云原生环境,包括Kubernetes集群、Ceph存储层、Harbor镜像管理和Nacos服务发现;(2)后端采用微服务技术,以Pod形式部署在Kubernetes集群上,并注册到Nacos上,通过统一网关入口进行服务发现和访问;(3)前端同样采用微服务技术,通过Nginx代理实现统一入口访问;(4)建立数据库,用来存放平台的用户、资源等一些与平台相关的信息;其中,步骤(2)的后端服务和步骤(3)的前端服务之间可以进行远程通信,两者部署在独立的环境中;步骤(2)中后端服务接收到前端服务的每一个请求都会进行权限验证,防止恶意攻击。
[0006]进一步地,所述步骤(1)中,先部署云原生基础环境Kubernetes集群;基于Kubernetes集群部署Ceph存储层,在部署完成Ceph后,需设置Kubernetes集群底层默认存储为Ceph,Ceph用于为整个Kubernetes集群及其上的各种服务提供底层的分布式存储服
务;然后基于Kubernetes集群部署镜像管理仓库Harbor,Harbor为用户使用默认实训环境镜像及自定义实训环境镜像提供管理功能;最后基于Kubernetes集群部署Nacos服务,用于后端微服务的服务发现。
[0007]进一步地,所述步骤(2)中,首先根据前端服务的界面功能开发对应的功能微服务模块,每一个微服务模块负责处理对应不同类型的界面功能;然后针对IP地址、端口号、主机列表这些需要动态更改的配置参数,统一提取到配置文件或设置到Kubernetes集群的环境变量中,配置文件及Kubernetes集群的环境变量包括部分服务内部VIP、数据库配置以及一些配套服务的配置参数,每一个功能微服务模块都有其专属的配置参数,最后将所有微服务对应的参数或配在启动文件中或设置到Kubernetes集群环境变量中,从而正确启动相应的微服务模块;在处理前端界面功能请求时,每一个请求都有专门的方法来进行响应处理,通过SpringCloud实现的方法来控制,然后将具体的要求发送到对应的底层集群架构或微服务进行实现,然后将运行结果反馈给界面展示;同时会将用户在使用过程产生的所有数据包括操作日志存储到数据库之中。
[0008]进一步地,所述步骤(3)中,首先将平台的前端微服务编译打包至指定目录,同时将其对应的配置写到配置文件中,包括与后端微服务通信IP、端口配置信息,并通过Nginx代理实现统一入口访问,前端微服务启动时会读取配置文件,从而实现与后端微服务之间的通信;每一个界面主功能都是一个独立的微应用模块,整个平台由多个不同的微应用模块构成,管理员功能包含以下微应用模块:首页、大数据服务、我的课堂、教务管理、数据中心、实验项目、用户服务、资源管理、操作日志共九个模块,每一个模块都有自己的对应功能;教师功能包含以下微应用模块:首页、教务管理、数据中心、实验项目、用户服务、资源管理共六个模块,每一个模块都有自己的对应功能;学生功能包含以下微应用模块:首页、我的课堂、数据中心、实验项目、数据集配置共五个模块,每一个模块都有自己的对应功能。
[0009]进一步地,所述步骤(4)中,每一个微服务都对应一个数据库,不同库之间相互隔离,安装部署数据库服务,然后开放其用户权限,对一个指定的用户如果使用正确的密码,则可以在任意地址上登录使用该数据库服务,后端会将用户数据、实验数据,用户组数据、文档数据等平台相关的数据都存放在数据库中。
[0010]进一步地,步骤(2)的后端服务和步骤(3)的前端服务之间进行远程通信,两者部署在独立的环境中具体是将前后端分离后,前端服务和后端服务都可以单独运行在不同的节点上,两者之间完成了解耦,或者通过负载均衡来构建一个高可用的系统。
[0011]进一步地,步骤(2)中后端服务接收到前端服务的每一个请求都会进行权限验证,防止恶意攻击,具体方法是,对于平台的每一个用户,都会为其分配一个唯一的token,这个token就是一个身份标识符,在平台上进行的每一步操作都要验证token来确保该操作不是恶意攻击。
[0012]有益效果:本专利技术能够基于一些通用服务器来部署一个基于Web的AI教学实训编程平台, 解决了用户在建设自己的AI平台时经常遇到的一些问题,例如:选型困难、安装配置门槛高、统一用户管理不便、本地开发环境较难搭建等,易于新手学习使用AI技术或者有经验的工作者进行开发或者科研作业,对于AI行业的技术教育有着十分积极地作用。
附图说明
[0013]图1为本专利技术的管理员角色下总体流程示意图;图2为本专利技术的教师角色下总体流程示意图;图3为本专利技术的学生角色下总体流程示意图;图4为前端服务对管理员角色功能模块示意图;图5为前端服务对教师角色功能模块示意图;图6为前端服务对学生角色功能模块示意图;图7为后端服务的示意图。
具体实施方式
[0014]下面结合附图和具体实施例,进一步阐明本专利技术,应理解这些实施例仅用于说明本专利技术而不用于限制本专利技术的范围,在阅读了本专利技术之后,本领域技术人员对本专利技术的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
[0015]本专利技术提出了一种AI教学实训编程平台的构建方法本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Web页面的AI教学实训编程平台的构建方法,其特征在于,包括以下步骤:(1)构建底层云原生环境,包括Kubernetes集群、Ceph存储层、Harbor镜像管理和Nacos服务发现;(2)后端采用微服务技术,以Pod形式部署在Kubernetes集群上,并注册到Nacos上,通过统一网关入口进行服务发现和访问;(3)前端同样采用微服务技术,通过Nginx代理实现统一入口访问;(4)建立数据库,用来存放平台的用户、资源等一些与平台相关的信息;其中,步骤(2)的后端服务和步骤(3)的前端服务之间可以进行远程通信,两者部署在独立的环境中;步骤(2)中后端服务接收到前端服务的每一个请求都会进行权限验证,防止恶意攻击。2.根据权利要求1所述的一种基于Web页面的AI教学实训编程平台的构建方法,其特征在于,所述步骤(1)中,先部署云原生基础环境Kubernetes集群;基于Kubernetes集群部署Ceph存储层,在部署完成Ceph后,需设置Kubernetes集群底层默认存储为Ceph,Ceph用于为整个Kubernetes集群及其上的各种服务提供底层的分布式存储服务;然后基于Kubernetes集群部署镜像管理仓库Harbor,Harbor为用户使用默认实训环境镜像及自定义实训环境镜像提供管理功能;最后基于Kubernetes集群部署Nacos服务,用于后端微服务的服务发现。3.根据权利要求1所述的一种基于Web页面的AI教学实训编程平台的构建方法,其特征在于,所述步骤(2)中,首先根据前端服务的界面功能开发对应的功能微服务模块,每一个微服务模块负责处理对应不同类型的界面功能;然后针对IP地址、端口号、主机列表这些需要动态更改的配置参数,统一提取到配置文件或设置到Kubernetes集群的环境变量中,配置文件及Kubernetes集群的环境变量包括部分服务内部VIP、数据库配置以及一些配套服务的配置参数,每一个功能微服务模块都有其专属的配置参数,最后将所有微服务对应的参数或配在启动文件中或设置到Kubernetes集群环境变量中,从而正确启动相应的微服务模块;在处理前端界面功能请求时,每一个请求都有专门的方法来进行响应处理,通过SpringCloud实现的方法来控制,然后将具体的要求发送到对应的底层...

【专利技术属性】
技术研发人员:陈鹏奇刘志强黄宜华
申请(专利权)人:江苏鸿程大数据技术与应用研究院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1