介绍#
现代企业应用程序正变得更加云原生,并基于微服务架构。微服务,顾名思义,由通过明确定义的 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 工作流程还具有打包组件,其中包括企业就绪的实现以及确保可靠性、安全性、性能、可扩展性和互操作性的最佳实践,同时为您偏离方向留有余地。
典型的流程可能类似于下图

在每个工作流程中,都在此堆栈的每一层提供了带有倾向性的指导和示例组件,以及关于如何将 AI 解决方案与这些组件集成的信息
- 硬件
需要 NVIDIA AI Enterprise 支持的 GPU 加速本地部署硬件或云实例。每个工作流程都提供了具体的要求和规范。
- 基础设施和编排
NVIDIA 云原生堆栈被用作示例 Kubernetes 发行版,工作流程可以使用该发行版进行部署和编排。
- 支持软件
NVIDIA 云原生服务附加组件包用于部署一组组件,这些组件用于执行生产企业环境中通常需要的功能,例如身份验证/授权、监控、存储/数据库等。
- 应用程序
示例微服务以一系列 Helm chart 和定制容器的形式提供,这些容器作为工作流程的一部分部署,以演示如何使用 NVIDIA 框架定制和构建 AI 应用程序,以及如何将此应用程序与其他微服务和企业软件组件集成。
本 AI 工作流程中的指南#
本 AI 工作流程包含三个不同的指南。虽然所有指南都应该相对容易遵循,但它们的目标受众不同。
- 部署指南
本指南的目标受众是 IT 管理员和/或 DevOps 工程师,他们将设置基础设施并部署“下一项预测”参考应用程序。
- 部署/DevOps 定制指南
本指南的目标受众是 IT 管理员和/或 DevOps 工程师,他们将为身份验证、密钥管理、监控、报告等设置企业示例实现。
- 开发指南
本指南的目标受众是数据科学家和 ML 工程师,他们将使用 NVIDIA Merlin 框架从事生成推荐系统的建模、特征工程和数据工程。
注意
工作流程中使用的组件和说明旨在用作集成的示例,并且可能不像声明的那样本身就足以用于生产。应使用工作流程作为参考,对工作流程进行自定义并将其集成到自己的基础设施中。例如,这些工作流程中的所有说明都假定为单节点基础设施,而生产部署应在高可用性 (HA) 环境中执行。
有关详细组件和软件堆栈的更多信息,请参阅每个工作流程的指南。