云原生机器学习落地难?灵雀云助力企业快速应用 MLOps
灵雀云企业级 MLOps 解决方案帮助企业从开发运维全流程降本增效,快速实现云原生时代的 MLOps。
作为 AI 时代的 DevOps,MLOps 助力于加速企业从数字化转型到大数据转型再到智能化转型的产业升级进程,为企业沉淀行业特有的 AI 模型、AI 应用提供工具链保证。随着 Kubernetes 的应用爆发,企业也积极投身建设基于 Kubernetes 的 AI 平台,充分利用 K8s 生态提供的资源管理、应用编排、运维监控能力。
然而,企业在直接使用流行的开源 MLOps 软件如 Kubeflow[1] , MLflow[2] 等,通常需要消耗较大的调研、部署、运维、应用迁移、应用适配等成本。灵雀云 MLOps 以及其开源版本 kubeflow-chart[3],致力于极大程度地降低企业应用 MLOps 的成本,在 Kubeflow 的基础上,集成 MLFlow,SQLFlow, kfpdist,elyra 等工具,补充 Kubeflow 难以应用之处,构建完整的 MLOps 开源解决方案。
企业级云原生机器学习落地阻碍重重
关注云原生机器学习的朋友对 Kubeflow 必不会陌生。
Kubeflow 是基于容器和 Kubernetes 构建,提供面向机器学习业务的敏捷部署、开发、训练、发布和管理平台,通过集成开源生态中越来越多的项目,如 Jupyter, Knative, Seldon Core 等,搭建了机器学习应用从开发到上线到迭代的生命周期内的工具链,解决企业应用机器学习中遇到的和 DevOps 类似的工具链的困扰,因此,Kubeflow 也成为了当前云原生场景下主流的 MLOPS 平台。
然而,有了 Kubeflow,是不是在 Kubernetes 上一下子搞定机器学习、深度学习呢?事实并没有那么简单。据了解,很多企业对于 Kubeflow 调研和尝试也多以失败告终。Kubeflow 目前存在以下诸多问题导致企业直接使用 Kubeflow 应用 MLOps 颇为困难:
1. Kubeflow 部署复杂、困难
2. Kubeflow 包含组件繁多,依赖复杂,运维排错耗费人力
3. Kubeflow 许多功能易用性差,企业 AI 应用开发、迁移困难
4. Kubeflow 没有中文支持
首先,部署 Kubeflow 完整平台,需要部署大量的依赖和组件。社区提供的安装方法为使用 Kustomize 命令,并使用仓库https://github.com/kubeflow/manifests 中的层叠式 (overlayed) YAML 配置文件完成安装。当开发者需要修改某一具体配置项时,需要从庞大的 YAML 文件中寻找配置项位置,并建立新的 YAML 文件完成层叠式覆盖,非常繁琐与不便。
另外, 在多数 On-Prem (私有化)K8s 环境中,很多 Kubeflow 依赖的组件已经有原先的部署,比如 Istio, Knative, Dex 等,要和这些已有环境中的组件协同部署就不得不一个个组件的单独配置和部署,不能完成一键安装。
其次,Kubeflow 包含许多组件,每个组件都有其重要的功能,并相互依赖。当系统出现故障,排查会消耗大量的精力,如果要对使用不便的地方进行调整,就会更加耗时耗力。
再次,上手使用 Kubeflow 仍存在以下难题:诸如 Kubeflow Pipeline 工作流 Python API 的侵入式设计,开发学习成本高;实验血缘追踪使用复杂,没有针对训练任务的调度器,资源利用率不高,模型部署只能使用 YAML 配置,没有中文界面等。
灵雀云企业级 MLOps 解决方案
在灵雀云企业级 MLOps 的实践中,我们通过 kubeflow-chart,简化部署步骤,kubeflow-chart 可以将常见的配置项,比如镜像地址,认证配置信息,默认账户,依赖组件安装开关等常用配置项抽出,只需要更改一个 values.yaml 文件,即可完成 kubeflow 对不同 K8s 环境完成部署,同时我们也提供了 values-cn.yaml 免去在国内的同学对镜像下载的困扰,帮助企业快速实现 MLOps。
有了 kubeflow-chart 的助力,开发者便可以轻松实现在 Kubernetes 上快速方便地部署、使用、管理当前最流行的机器学习软件。
Kubeflow-chart 加速 MLOps 落地
为更好解决企业 AI 落地难题,Kubelfow-chart 会逐步推出下述功能,助力快速搭建适合您实际环境的 MLOps 平台,构建 MLOps 完整开源解决方案:
· 使用 Helm Chart 方式快速在任意环境部署 Kubeflow 以及其他组件
· SQLFlow 助力降低企业 AI 研发成本,使用 SQL 即可就可以完成模型训练预测
· kfpdist 统一 Kubeflow 工作流和分布式训练,无需再使用 TFJob
· elyra 实现可视化 AI 工作流建模
· Volcano 实现更适合 AI 任务的调度器,提升 CPU/GPU 资源利用率
· MLFlow 替代 Kubeflow 实验追踪,获得更易用的实验追踪功能
kubeflow-chart 是灵雀云企业级 MLOps 平台的一部分,在灵雀云企业级 MLOps 平台中我们还会提供更完整的企业级功能包括:
· 多租户
· vGPU
· 高可用和跨区域部署
· 可视化、中文化
· 丰富案例教程
· 监控报警等
如上在灵雀云企业级 MLOps 解决方案中,依托于灵雀云 ACP 以及多项企业级容器平台产品之上,集成 Kubeflow, SQLFlow 等组件将提供开箱即用,工业生产级别的 MLOps 平台。我们希望能逐步开放以上能力,包括 4-Flow (Kubeflow,SQLFlow,MLFlow,ParaFlow),推动 MLOps 技术落地进程。
灵雀云作为企业数字化转型中重要的云原生合作伙伴,始终致力于通过革命性的技术,帮助企业建设现代化的软件基础设施,完成数字化转型,直面业务挑战。此次推出的企业级 MLOps 解决方案,正是灵雀云助力企业快速向云原生机器学习进阶、加速数字化进程的又一重要工具。
点击此处,详细了解灵雀云如何帮助您快速应用云原生机器学习 MLOps,共同探索企业级MLOPS最佳实践。
引用链接
[1] Kubeflow: https://www.kubeflow.org/
[2] MLflow: https://mlflow.org/
[3] kubeflow-chart: https://github.com/alauda/kubeflow-chart
版权声明: 本文为 InfoQ 作者【York】的原创文章。
原文链接:【http://xie.infoq.cn/article/1eac8bfaa7f87908e769004fe】。文章转载请联系作者。
评论