什么是 Kubeflow?

复制 URL

Kubeflow 是一种开源的 Kubernetes 原生框架,可用于开发、管理和运行机器学习(ML)工作负载。Kubeflow 是一个 AI/ML 平台,它汇集了多种工具,涵盖了主要的 AI/ML 用例:数据探索、数据管道、模型训练和模型服务。

Kubeflow 支持数据科学家通过一个门户访问这些功能,该门户提供了与这些工具进行交互的概要抽象信息。这意味着数据科学家无需了解 Kubernetes 插入这些工具所使用方法的具体细节。Kubeflow 本身专为在 Kubernetes 上运行而设计,并充分吸纳了许多关键概念,包括 Operator 模型。 

Kubeflow 通过提供一组工具和 API 来简化大规模训练和部署 ML 模型的过程,可以解决机器学习管道编排过程中涉及的诸多挑战。“管道”表示 ML 工作流,包括工作流的组件以及这些组件之间的交互方式。Kubeflow 能够满足一个项目中多个团队的需求,并允许这些团队从任何基础架构工作。这意味着,数据科学家可以从自己选择的云(包括 IBM Cloud、Google Cloud、Amazon 的 AWS 或 Azure)进行训练和提供 ML 模型。 

总的来说,Kubeflow 通过组织项目,同时利用云计算的强大功能,实现了机器学习运维(MLOp)的标准化。Kubeflow 的一些关键用例包括数据准备、模型训练、评估、优化和部署。

 

进一步了解 OpenShift 上的 MLOP

红帽资源

Kubernetes 对于加速 ML 生命周期非常重要,因为这些技术可为数据科学家提供训练、测试和部署 ML 模型所需的敏捷性、灵活性、可移植性和可扩展性。

可扩展性:Kubernetes 允许用户根据需要扩展或收缩 ML 工作负载。这可确保机器学习管道能够适应大规模处理和训练,而不干扰项目的其他元素。 

效率:Kubernetes 可根据节点可用性和容量将工作负载调度到节点上,从而优化资源分配。通过确保有意识地利用计算资源,用户可以有效降低成本,提升性能。

可移植性:Kubernetes 提供一个不受平台限制的标准化环境,允许数据科学家开发一个 ML 管道,并将其部署到多个环境和云平台。这意味着无需为兼容性问题和供应商锁定而担忧。

容错:凭借内置的容错和自我修复功能,用户可以确保 Kubernetes 即使遇到硬件或软件故障,也能保持 ML 管道正常运行。

  1. Kubeflow 中央控制面板为访问 Kubeflow 及其生态系统组件提供了一个经过验证的 Web 界面。作为一个集中式中心,它聚合了集群内各种工具和服务的用户界面,为管理机器学习平台提供了一个统一的接入点。
  2. Kubeflow 与 Jupyter Notebooks 集成,为数据探索、实验和模型开发提供了一个交互式环境。Notebooks 支持各种编程语言,包括 Python、R 和 Scala,允许用户以协作且可再现的方式创建和执行 ML 工作流。
  3. Kubeflow Pipelines 让用户能够以有向无环图(DAG)的形式定义和执行复杂的 ML 工作流。Kubeflow Pipelines 提供了一种方法,可编排并自动执行数据预处理、模型训练、评估和部署的端到端流程,从而促进了 ML 项目的可重现性、可扩展性和协作性。Kubeflow Pipelines SDK 是一组 Python 软件包,允许用户精确而高效地定义和执行机器学习工作流。
  4. Kubeflow Training Operator 为大规模训练机器学习模型提供了工具。这包括支持使用 TensorFlow、PyTorch 和 XGBoost 等框架进行分布式训练。用户可以利用 Kubernetes 的可扩展性和资源管理功能,跨机器集群高效地训练模型。
  5. Kubeflow Serving 支持用户将经过训练的 ML 模型部署为可扩展的生产就绪型服务。它为使用 TensorFlow Serving、Seldon Core 等流行框架或自定义推理服务器部署模型提供了一致的界面。模型可在实时或批处理场景中部署,通过 HTTP 端点提供预测。
  6. Kubeflow Metadata 是一个集中式存储库,用于跟踪和管理与 ML 实验、运行和工件相关的元数据。它为整个工作流提供了一致的 ML 元数据视图,可在 ML 项目中实现可重现性、协作和治理。

此外,Kubeflow 还提供了基于 Web 的用户界面(UI),用于监控和管理 ML 实验、模型训练作业和推理服务。这些 UI 可提供可视化效果、指标和日志,帮助用户跟踪其 ML 工作流的进度、解决问题并做出明智的决策。

由于采用了 Kubernetes Operator 模型,Kubeflow 具有可扩展性,并支持自定义以适应特定的用例和环境。用户可以集成其他组件,如数据预处理工具、特征平台、监控解决方案和外部数据源,以增强其 ML 工作流的功能。

红帽® OpenShift® 是值得信赖的、全面且一致的平台,适用于所有环境下的应用开发、部署和管理。凭借 DevOps 功能(如 OpenShift PipelinesOpenShift GitOps红帽 Quay)以及与硬件加速器的集成,红帽 OpenShift 可实现更好的协作,并加快 AI 驱动型应用的交付。

红帽 OpenShift AI 提供了一个可视化编辑器,用于创建和自动化基于 Kubeflow Pipelines 的数据科学管道和实验。OpenShift AI 是一个集成式 MLOps 平台,用于在混合云环境中大规模构建、训练、部署并监控依托 AI 技术的应用、预测模型和基础模型。自动化并简化将 ML 模型集成到软件开发、生产部署、监控、重新训练和重新部署的迭代流程,以保持预测准确性。

红帽 OpenShift 在 IBM Cloud、Google Cloud、AWS 和 Azure 上以原生方式提供,允许用户自动管理 Kubernetes 集群,通过生产就绪型应用平台快速构建、部署和扩展应用。 

 

在 OpenShift 上安装 Kubeflow
中心

红帽官方博客

获取有关我们的客户、合作伙伴和社区生态系统的最新信息。

所有红帽产品试用

我们的免费试用可让您亲身体验红帽的产品功能,为获得认证做好准备,或评估某个产品是否适合您的企业。

扩展阅读

预测性人工智能与生成式人工智能:有何区别

生成式人工智能和预测性人工智能在功能上有很大不同,并且各自有不同的应用场景。随着人工智能的发展,区分这两种不同类型的 AI 有助于更清楚地了解它们各自的能力和用途。

什么是代理式 AI?

代理式 AI 是一种软件系统,旨在以尽可能少的人工干预实现与数据和工具的交互。

什么是 Granite 模型?

Granite 是 IBM 为企业应用创建的一系列 LLM。Granite 基础模型可以支持涉及语言和代码的 Gen AI 用例。

AI/ML 相关资源

相关文章