0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

工具平台对MLOps技术实践的支持

jf_9aVl32Dp 来源:Arm软件开发者 作者:Arm软件开发者 2022-10-26 10:20 次阅读

在【AI工程】02-AI工程(AI Engineering)面面观中,提到Gartner把AI工程化作为未来重要战略技术趋势,Gartner认为AI工程主要由DataOps、MLOps和DevOps三部分核心技术组成,其目标是通过跨职能协作、自动化、快速反馈等方法,来缩短数据分析、机器学习和应用部署上线的周期,从而让AI模型快速、持续地提供业务价值。开发者基于传统的工具平台很难实现MLOps等AI工程领域的实践,需要新的工具来完成对MLOps等技术实践的支持。

26041920-5477-11ed-a3b6-dac502259ad0.jpg

Kubeflow是一个基于K8S的机器学习平台,为开发者提供了从实验(Notebook)、训练(MLOps流水线)、调优以及部署、监控的端到端能力,也是当前排名第一的开源MlOps工具。

262e3cb4-5477-11ed-a3b6-dac502259ad0.jpg

Kubeflow本身也是由一系列的开源工具组成,从它的架构图中不难看出,Kubeflow主要提供三部分能力:

ML工具:主流开源框架支持,如Tensorflow,PyTorch等。

Kubeflow应用及脚手架工具:

(1). jupyter Notebook:开箱即用的Notebook,支持多AI框架。

(2). 分布式训练:支持Tensorflow、PyTorch等多框架的分布式训练(参数服务器形式)。

(3). 流水线管理:基于Argo的工作流管理,提供训练流水线管理能力。

(4). 镜像构建:将训练、notebook代码打包,以支持训练及部署任务。

(5). Serving部署:支持多AI框架的部署。

3.周边配套:支持三方部署、监控等能力。

Canonical公司(Ubuntude发行商)在Kubeflow的基础上,包装了Charmed Kubeflow项目,提供构成KubeFlow最新版本的30多个应用程序和服务,并且让Kubeflow的部署更快,更简单。

最新的1.6版本中,Charmed Kubeflow的Notebook原生支持了MindSpore,下面我们来看下如何基于Charmed Kubeflow 快速启动支持MindSpore的Notebook。

安装Charmed Kubeflow

要安装Kubeflow,首先得准备好K8S集群,然后通过juju这个运维管理工具安装Charmed Kubeflow。

通过MicroK8S工具部署K8S集群

Canonical提供了一个和Minikube类似的工具MicroK8S,通过Snap工具可以快速完成其安装。

在Ubuntu 20.04系统上执行如下命令:

sudo snap install microk8s --classic --channel=1.22/stable

安装完成后,为了方便使用,可以将当前的用户加入到microk8s的用户组中。

sudo usermod -a -G microk8s $USER
newgrp microk8s

确认用户可以访问kubectl的配置文件。

sudo chown -f -R $USER ~/.kube

MicroK8s在安装的时候就会启动,为了运行kubeflow,我们还需要一些额外的能力,比如DNS(服务发现)、存储、ingress(负载均衡),MicroK8S可以以插件的形式快速的添加这些能力

microk8s enable dns storage ingress metallb:10.64.140.43-10.64.140.49

整个安装需要花费一点时间,通过microk8s status --wait-ready可以确认MicroK8S是否安装成功。

microk8s is running
high-availability: no
  datastore master nodes: 127.0.0.1:19001
  datastore standby nodes: none
……

MicroK8S提供了kubectl命令,但是每次都需要在命令行输入microk8s kubectl,可以考虑增加一个别名alias kubectl='microk8s kubectl'方便使用,其次,如果集群的配置信息没有写到~/.kube/中,可以通过microk8s config > ~/.kube/config完成覆写。

通过juju安装Charmed Kubeflow

Charmed Operator Lifecycle Manager (OLM)是一个应用(以特殊格式封装,称为Charm Operator)编排的平台,它可以方便的管理混合云中部署在虚机、K8S集群、裸机上的应用,对应用进行安装、配置、维护及更新。Canonical提供了这样的OLM框架,名为Juju,同时也提供了juju这个同名的命令行工具。

首先,我们使用sudo snap install juju --classic命令安装juju。其次,通过juju bootstrap microk8s在MicroK8S部署好的集群上安装juju的controller,作为juju在集群中的代理,管理Kubeflow应用。最后为juju在集群上添加kubeflow的命名空间juju add-model kubeflow。

接下来,通过juju deploy kubeflow-lite --trust命令即可完成kubeflow的安装,通过watch -c juju status --color可以看到kubeflow组件准备状态。

2692db10-5477-11ed-a3b6-dac502259ad0.jpg

最后,通过juju refresh jupyter-ui --channel=latest/edge命令确保jupyter-ui更新到最新的版本,包含MindSpore的Notebook镜像。

配置kubeflow

Kubeflow安装完成后需要做下简单的配置才能访问。首先配置访问的地址:

juju config dex-auth public-url=http://10.64.140.43.nip.io
juju config oidc-gatekeeper public-url=http://10.64.140.43.nip.io

然后配置访问的用户名和密码:

juju config dex-auth static-username=admin
juju config dex-auth static-password=ucantseeme

接下来在浏览器中输入http://10.64.140.43.nip.io,以及刚设置的用户密码,就可以看到Kubeflow完整的Dashboard了。

26c0c66a-5477-11ed-a3b6-dac502259ad0.jpg

运行支持MindSpore的Notebook

在Kubeflow上运行Notebook非常简单。在Notebook tab选择创建notebook,输入notebook名称MindSpore,镜像选择jupyterlab,在列表中使用mindspore/jupyter-mindspore这个镜像,然后分配合适的CPU和内容资源,点击创建即可。

26e89b22-5477-11ed-a3b6-dac502259ad0.jpg

在Notebook界面很快就可以看到创建完成的提示。

27227c0c-5477-11ed-a3b6-dac502259ad0.png

点击Connect,我们就可以在另一个浏览器tab页打开notebook了。这里我们可以使用MindSpore官网现成的notebook,通过notebook页面将这个手写数字识别的notebook上传上去。

点击执行,就可以看到这个notebook直接运行起来了,不用额外的去安装MindSpore以及Vision套件。

27635b46-5477-11ed-a3b6-dac502259ad0.jpg

总结

这是MindSpore和Charmed Kubeflow集成的第一步,后续我们还将持续的把MindSpore更多能力集成到Charmed Kubeflow中,方便开发者能在MlOps平台上更方便的使用MindSpore。

审核编辑:彭静
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • AI
    AI
    +关注

    关注

    87

    文章

    30072

    浏览量

    268332
  • 机器学习
    +关注

    关注

    66

    文章

    8373

    浏览量

    132390
  • 数据分析
    +关注

    关注

    2

    文章

    1427

    浏览量

    34006

原文标题:【AI工程】08-MLOps工具-在Charmed Kubeflow上运行MindSpore

文章出处:【微信号:Arm软件开发者,微信公众号:Arm软件开发者】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Pyxos自由拓扑平台技术介绍

    的角色。 Pyxos FT EVK 评估工具包是一整套硬件和软件工具,用户可用来展示Pyxos FT技术的功能特性,并开发出用户自己的基于Pyxos FT技术的设备。 Pyxos FT
    发表于 03-11 15:35

    实时在线的技术支持和交流活动的IM工具

    实时在线的技术支持和交流活动的IM工具中电网“谈芯Q”(TCQ)是一款致力于为广大工程师用户提供实时在线的技术支持和交流活动的IM工具。下载并安装TCQ后,您可以随时随地与在线
    发表于 02-24 10:18

    云上拍客梨视频 基于阿里云的技术实践分享

    摘要: 梨视频大部分的业务都选择了阿里云,其中一个主要原因是阿里云提供基于钉钉群构建的24贴身技术支持,刘隽表示,这种服务模式可以更充分、高效的对接需求,快速得到反馈,这也让梨视频的同学有信心去尝试
    发表于 06-28 16:13

    物联网云平台的强安全实践

    物联网云平台的强安全实践
    发表于 12-27 11:26 12次下载

    SDR平台如何借助支持工具和资源在设计系统中实现应用

    传统上,SDR平台需要多种技能结合才能实现完整的SDR解决方案,包括RF和ADC设计、数字硬件、SOC装配、DSP硬件和软件开发技能。克服技能缺陷的一种办法是利用参考设计和MatLab等支持工具来帮助完成一个有效实例。
    的头像 发表于 02-05 08:10 2210次阅读

    用Intel Analytics Zoo/BigDL为客服平台添加AI的实践(一)

    ,我们将介绍为客服平台添加文本分类模块的大致流程及实践经验。 背景 在如今商业高度发达的社会,客户支持服务平台已被广泛使用在售前和售后为客户提供技术
    的头像 发表于 10-17 10:30 4648次阅读

    数据科学平台cnvrg.io携手NetApp用深度学习改变MLOps数据集缓存

    中国存储网消息,近日,数据科学平台cnvrg.io简化了模型管理并将MLOps引入行业,它宣布与NetApp公司。建立合作关系,这是第一个利用cnvrg.io数据集缓存工具工具,该
    发表于 07-20 09:09 2081次阅读

    COSMOPlat在开源技术方向的探索和实践

    在2020工业互联网大会工业互联网新技术主题论坛上,海尔卡奥斯物联生态科技有限公司云平台架构师刘安发表题为《COSMOPlat在开源技术方向的探索和实践》的演讲,分享COSMOPlat
    的头像 发表于 11-02 10:54 2028次阅读

    基于AUTOSAR技术的SOA软件平台实践的简析

    (Driver Monitoring System)场景应用和娱乐域的氛围灯的场景应用。双方联合打造的SOA软件平台,可以更好的赋能领域内的生态伙伴开展SOA软件开发实践支持产品的量产落地。 DMS应用
    发表于 11-16 11:48 570次阅读
    基于AUTOSAR<b class='flag-5'>技术</b>的SOA软件<b class='flag-5'>平台</b><b class='flag-5'>实践</b>的简析

    星环科技推企业级AI能力运营平台Sophon MLOps 助推AI模型落地

    为解决AI落地难的问题,星环科技的AI团队从用户需求端出发,倾力研发了一款基于云原生架构的企业级AI能力运营平台Sophon MLOps,助推AI模型落地。
    的头像 发表于 05-12 17:17 1980次阅读

    人工智能研发运营体系(MLOps)实践指南

    制度规范的 建立、流程的打通、工具链的建设等诸多环节面临困难。因此本指南 旨在成为组织落地 MLOps 并赋能业务的“口袋书”,围绕机器学习全 生命周期,为模型的持续构建、持续交付、持续运营等过程提供参考, 推进组织的 MLOps
    发表于 03-30 16:49 0次下载

    RISC-V设计支持工具支持RISC-V技术的基础

    RISC-V设计支持工具支持RISC-V技术的基础 ppt分享
    发表于 07-14 17:15 12次下载

    驾驭创造的力量: 生成式 AI 时代的 MLOps 演进

    以下文章来源于谷歌云服务,作者 Google Cloud 驾驭创造的力量: 生成式 AI 时代的 MLOps 演进  MLOps 是一种将机器学习模型从实验室推向生产的系统方法,它能够通过全面
    的头像 发表于 12-21 18:05 319次阅读

    基于分布式运维管理平台的智慧城市运维实践

    。这包括但不限于交通、能源、环境、医疗、教育等各个领域。分布式运维管理平台作为一种先进的技术工具,通过集成大数据、云计算、物联网等技术,为智慧城市运维提供了强大的
    的头像 发表于 03-26 16:12 475次阅读

    MLOps平台优点

    MLOps平台在提升机器学习模型的开发与部署效率、可扩展性与灵活性、透明度与可重复性以及降低风险和持续改进方面具有显著优点。
    的头像 发表于 11-06 10:10 109次阅读