简介#

现代企业应用程序正变得越来越云原生,并基于微服务架构。微服务,顾名思义,由通过明确定义的 API 进行通信的小型独立服务集合组成。在大多数情况下,AI 应用程序也很好地遵循了这种架构设计,因为通常有许多不同的组件需要在训练和推理工作流程中协同工作。

为了在生产环境中部署应用程序,该应用程序还必须满足以下标准

  • 可靠性

  • 安全性

  • 性能

  • 可扩展性

  • 互操作性

什么是 NVIDIA AI 工作流?#

NVIDIA AI 工作流旨在提供如何利用 NVIDIA 框架构建 AI 解决方案以解决常见用例的参考方案。这些工作流提供诸如微调和 AI 模型创建之类的指导,以构建在 NVIDIA 框架之上。重点介绍了创建应用程序的管道,以及关于如何部署定制应用程序并将其与企业环境中常见的各种组件(例如用于编排和管理、存储、安全、网络等的组件)集成的一些建议。

通过为您的特定用例利用 AI 工作流,您可以按照工作流提供的示例简化 AI 解决方案的开发,从而

  • 缩短开发时间,降低成本

  • 提高准确性和性能

  • 利用 NVIDIA AI 专业知识,对结果更有信心

使用示例工作流,您将确切地知道要使用哪个 AI 框架、如何将数据引入管道以及如何处理输出的数据。AI 工作流被设计为微服务,这意味着它可以单独部署在 Kubernetes 上,也可以与其他微服务一起部署,以创建一个可用于无缝扩展的生产就绪型应用程序。工作流云部署包可以在不同的云实例中使用,并且是可自动化和可互操作的。

NVIDIA AI 工作流在 NVIDIA NGC 上为 NVIDIA AI Enterprise 软件客户提供。

NVIDIA AI 工作流组件#

NVIDIA AI 工作流以软件包形式部署,其中包含 AI 框架以及用于自动化云原生解决方案的工具。AI 工作流还具有打包组件,其中包括企业就绪的实现和最佳实践,这些实践可确保可靠性、安全性、性能、可扩展性和互操作性,同时允许您偏离路径。

一个典型的工作流可能类似于以下图示

_images/image0.png

在每个工作流中,在此堆栈的每一层都提供了指导性意见和示例组件,以及关于如何将 AI 解决方案与这些组件集成的信息

硬件

需要 NVIDIA AI Enterprise 支持的 GPU 加速本地硬件或云实例。每个工作流都提供了具体的要求和规范。

基础设施和编排

NVIDIA 云原生堆栈被用作工作流可以部署和编排的 Kubernetes 发行版示例。

支持软件

NVIDIA 云原生服务附加包用于部署一组组件,这些组件用于执行生产企业环境中通常需要的功能,例如身份验证/授权、监控、存储/数据库等。

应用

示例微服务以一系列 Helm chart 和定制容器的形式提供,这些容器作为工作流的一部分部署,以演示如何使用 NVIDIA 框架定制和构建 AI 应用程序,以及如何将此应用程序与其他微服务和企业软件组件集成。

注意

工作流中使用的组件和说明旨在用作集成的示例,并且可能如所述那样本身不足以用于生产。应自定义工作流并将其集成到自己的基础设施中,并将工作流用作参考。例如,这些工作流中的所有说明都假定为单节点基础设施,而生产部署应在高可用性 (HA) 环境中执行。

有关详细组件和软件堆栈的更多信息,请参阅每个工作流的指南。