NVIDIA 正在将完整的 NVIDIA Run:ai 平台作为开源软件提供,让客户、开发者和生态合作伙伴能够获得生产级 AI 工作负载与 GPU 编排能力。此次发布扩展了 NVIDIA DSX AI Factory 平台,将 NVIDIA Run:ai 确立为开放基础,使更广泛的生态系统能够更快地将差异化解决方案推向市场,以响应不断变化的客户需求。
在过去几年中,NVIDIA Run:ai 通过动态分配 GPU 资源并管理从数据处理、训练到推理的完整生命周期工作负载,帮助组织在 Kubernetes 上大规模运行 AI 工作负载。
通过将 NVIDIA Run:ai 平台能力作为 NVIDIA DSX AI Factory 的一部分开源,现在每个 NVIDIA DSX 生态合作伙伴和 AI 云都可以提高工作负载吞吐量、改善 GPU 利用率,并更高效、更有效地运营共享 AI 基础设施。
本文详细介绍了此次开源发布,其中包括完整的 NVIDIA Run:ai 平台以及四个也可独立采用的组件:KAI Scheduler、GPU Fractioning Operator、KAI Resource Management、Workload Map。这些组件与额外的平台代码共同构成了集成的 NVIDIA Run:ai 平台。平台团队和生态合作伙伴可以将 NVIDIA Run:ai 作为一个集成整体采用,在其基础上构建自己的产品和服务,或根据自身需求集成单个组件。
如何采用开源 NVIDIA Run:ai
NVIDIA Run:ai 可以直接作为开源软件采用,也可以通过 NVIDIA DSX 生态合作伙伴的产品采用。
直接部署开源平台
NVIDIA Run:ai 的完整源代码可在 NVIDIA DSX AI Factory GitHub 组织内的 NVIDIA Run:ai 仓库中获取。团队可以检查代码、为其开发做出贡献、在该平台之上进行构建,或独立采用其模块化组件。
完整的开源 NVIDIA Run:ai 平台也作为 Community Product 在 NVIDIA NGC 上提供,并附带用于安装集成栈的 Helm chart。
注意:NVIDIA Run:ai 源代码受其适用的开源许可证约束。从 NGC 下载 Community Product 需要接受适用的 NVIDIA 软件许可协议以及 NVIDIA AI 产品特定条款。Community Product 不需要付费的 NVIDIA Run:ai 订阅或 NVIDIA 支持权益,且不包含 NVIDIA 企业支持。
通过 NVIDIA DSX 生态合作伙伴采用开源 NVIDIA Run:ai
开源 NVIDIA Run:ai 让 NVIDIA DSX 生态合作伙伴能够直接获取 AI 工作负载与 GPU 编排创新,并将其用于自己的 NVIDIA DSX AI 工厂解决方案。通过采用完整平台或集成单个组件,合作伙伴可以更快地将这些创新推向市场,并更迅速地响应不断变化的客户与运营需求。
Crusoe 将 NVIDIA Run:ai 与 Crusoe Managed Kubernetes 集成,把 GPU 工作负载编排与托管 Kubernetes 及 GPU 基础设施相结合。Mirantis 以 NVIDIA Run:ai 扩展 k0rdent AI,交付生命周期管理的、从 Metal 到 Model 的 AI 工厂栈,实现基础设施配置自动化并最大化 GPU 利用率。Nebius 在 Nebius AI Cloud 中将 NVIDIA Run:ai 作为一键应用部署提供,让客户能够以简化方式在 Nebius Managed Service for Kubernetes 上部署和运营完整平台。OpenNebula Systems 通过 OneKS 将 NVIDIA Run:ai 与 OpenNebula AI Cloud Platform 集成,把 GPU 工作负载编排与基础设施配置及生命周期管理相结合,服务于开放且主权的 AI 云。Rafay 正在扩展其 NVIDIA Run:ai 集成,将其作为完全托管服务交付。Rafay 自动化整个栈,从 GPU 基础设施和集群到 NVIDIA Run:ai 控制平面和租户,使 AI 云提供商和企业能够通过自己的自助服务目录提供该服务。Saturn Cloud 集成 NVIDIA Run:ai,帮助 AI 云运营商通过其 Token Factory 平台推出白标 AI 推理服务,将 GPU 编排与专用及多租户模型服务、按 token 计量和自动计费相结合。Spectro Cloud 将 NVIDIA Run:ai 集成到 PaletteAI 中,使客户能够通过 PaletteAI Studio 部署它,并使用与其 AI 基础设施中相同的生命周期自动化进行管理。vCluster 通过经过预验证的部署模板提供 NVIDIA Run:ai,为每个租户搭建完整环境,使运营商能够加强租户边界,同时 NVIDIA Run:ai 继续在一个 GPU 资源池上调度。
对于 NVIDIA Enterprise AI Factory 部署,NVIDIA Run:ai 继续通过 NVIDIA 支持的商业产品提供,包括作为独立产品、通过 NVIDIA Mission Control 和 NVIDIA AI Enterprise,以及部分云市场。可用性、许可和支持条款因产品而异。
对于已有平台并需要填补特定能力缺口的团队,以下各节描述何时以及如何独立使用每个模块化组件。
NVIDIA Run:ai 平台的模块化开源组件
本节详细介绍了开源版本中包含的四个组件:KAI Scheduler、GPU Fractioning Operator、KAI Resource Management 和 Workload Map。结合额外的平台代码,这些组件构成了集成的 NVIDIA Run:ai 平台。您可以将 NVIDIA Run:ai 作为一个整体采用,也可以根据您的独特需求集成单个组件。
KAI Scheduler:NVIDIA Run:ai 背后的调度引擎
KAI Scheduler 是 Kubernetes 原生的调度器,为 NVIDIA Run:ai 平台提供支持。NVIDIA 以 Apache 2.0 许可证将 KAI Scheduler 作为开源软件发布,并将其贡献给 CNCF 作为沙箱项目。KAI 仍然是 NVIDIA Run:ai 背后的上游引擎,所有调度器开发都在社区仓库中进行,因此每一项改进都通过相同的代码库流动。NVIDIA 继续支持项目的维护者,并与更广泛的生态系统合作,以推进大规模 AI 工作负载调度。
KAI Scheduler 专为大规模 GPU 工作负载而构建,协调:
- 具有预调度内存模拟的组调度,因此多 Pod 作业以全有或全无的方式放置,不会不必要地被驱逐
- 公平份额(包括基于时间的公平份额)和配额分配,保持团队之间的资源份额平衡
- 调度决策级别的拓扑感知和装箱
- GPU 共享,允许多个工作负载共享单个或多个 GPU(MIG、MPS、时间共享、HaMi、CUDA 13.4 MPS 分片)
- 动态资源分配(DRA)支持
要了解有关关键功能的更多信息,请访问 kai-scheduler/KAI-Scheduler GitHub 仓库。
将 KAI Scheduler 用于需要公平访问集群资源和拓扑感知放置的各种 AI 工作负载。它可以与当前软件栈一起部署在现有集群中,而无需完整的 NVIDIA Run:ai 平台。
关注项目,在 CNCF Slack 的 #kai-scheduler 频道提问,并在 kai-scheduler/KAI-Scheduler GitHub 仓库上贡献。
GPU Fractioning:Kubernetes 上 GPU 分片的 Operator
NVIDIA Run:ai 平台长期以来一直支持分数 GPU 分配,使多个工作负载能够共享一个 GPU,并具有硬内存隔离。可以按需请求分片并即时设置,无需管理员提前进行每节点设置。这是 ML 团队在运行不需要 GPU 全部内存的工作负载(包括交互式笔记本和较小模型的推理)时最广泛使用的功能之一。NVIDIA Run:ai 通过专有实现开创了这种体验。
GPU Fractioning Operator 将 CUDA 原生的 GPU 分片能力引入 Kubernetes,其专有实现已被弃用,转而采用 CUDA 13.4. 中提供的原生能力。CUDA 驱动程序对每个工作负载的 GPU 内存强制执行硬性限制,每个工作负载只能看到分配给其分片的 GPU 内存。目前仍然需要的是一种在 Kubernetes 上使用该能力的简洁方式。这正是 GPU Fractioning Operator 所提供的:一个在集群上启用 CUDA GPU 分片的 Operator,以及一个用于按 Pod 查看正在使用的分片的指标导出器。它是一个 Kubernetes 集成层,允许工作负载使用 CUDA 原生分片能力,并且与调度器无关。
对于可以共享未充分利用的 GPU 容量的工作负载,包括 notebook、开发会话和较小的模型,请使用 GPU Fractioning Operator。GPU Fractioning Operator 与 KAI Scheduler 集成,将可用的 GPU 容量转化为实际的放置决策,同时保持与其他调度器的兼容性。
GPU Fractioning Operator 将 CUDA 13.4 原生的 GPU 分片能力引入 Kubernetes,并与 KAI Scheduler 集成。要开始使用,请参阅 GPU Fractioning Operator 文档。
KAI Resource Management:组织层
调度器决定工作如何放置,而 KAI Resource Management 则管理谁获得什么:
项目和部门:将资源映射到使用它们的团队和计划的组织结构,即“组织层”。具有组织层级结构的资源管理:在该组织结构中分配、保证和共享 GPU 容量的能力,具有公平共享和配额语义。节点池:对异构硬件进行分组和定向,使工作负载落在正确的资源上。
这些能力共同让平台团队超越原始的 Kubernetes 调度,按照组织实际运作的方式来管理 GPU:按团队、按部门、按计划以及按资源保证。
对于由多个团队共享且需要明确容量份额的异构集群,请使用 KAI Resource Management。例如,平台团队可以为研究团队保证集群 50% 的容量,同时防止任何单个团队垄断剩余容量。如果你已经在电子表格中跟踪配额权益,或按团队手动维护命名空间,那么这一层就是用来替代它的。它可以在你的集群中与 KAI Scheduler 结合使用。
要了解更多关于这些概念如何映射到实际部署的信息,请参阅 KAI Resource Management 文档。
Workload Map:Kubernetes 的工作负载管理契约
Workload Map 是 NVIDIA Run:ai 用来支持任何工作负载类型的契约。KAI Scheduler 使用它进行调度和 gang 语义;平台的其余部分使用它进行工作负载发现、监控和生命周期管理。
在 Kubernetes 中,AI 工作负载几乎从来都不是一个裸的 Deployment 或 Job。它是一个 PyTorchJob、一个 RayCluster、一个 JobSet、一个 KServe InferenceService、一个 Dynamo 图部署,或者公司自己的自定义资源。每种类型都有其内部结构、具有不同角色的组件(driver 和 worker、head 和 worker、prefill 和 decode)、自己的扩缩容和 gang 语义,以及自己报告状态的方式。
Workload Map 提供了一种一致的方式,在整个生命周期中将这些工作负载视为一等对象:
- 描述 Pod、组件和角色
- 提交和配置
- 具有 gang 和拓扑感知的调度
- 一致地观察状态和健康
- 在准入或运行时应用策略
这个工作负载管理层位于 Kubernetes 原语与调度器、仪表板、SRE 和故障排查工具、成本工具、备份工具以及服务于用户的 ML 平台之间。Workload Map 不是让每个工具为每个 CRD 构建私有的、部分的集成,而是为每种工作负载类型定义一次,这样任何平台或工具都可以一致地调度、观察、操作和治理它,而无需硬编码每个 CRD。
对于必须理解和管理多种 Kubernetes 工作负载类型而无需硬编码每个 CRD 的平台和工具,请使用 Workload Map。它作为一个 Go 库发布,可以在非结构化对象上离线工作,因此您无需向集群添加任何内容即可采用它。它刻意保持狭窄:Workload Map 描述工作负载结构,不进行调度、排队、自动扩缩容或跨集群传播。
在 dsx-ai-factory/workload-map GitHub 仓库中了解更多信息,并查看采用者项目。
相关开源平台软件
以下开源项目解决了互补的 AI 基础设施挑战。它们可以独立采用,也可以纳入包含完整 NVIDIA Run:ai 平台或选定组件的更广泛解决方案中。
Model Streamer:减少冷启动延迟
在 Kubernetes 上冷启动推理工作负载可能需要几分钟,在此期间 GPU 被分配但闲置,仅用于一个步骤:将模型权重从存储加载到 GPU。Model Streamer 并发读取权重并将其直接流式传输到 GPU 内存,从而缩短大型模型的加载时间。
自发布以来,Model Streamer 已被整个推理栈采用,包括推理引擎、云提供商和存储平台供应商。
推理引擎
Model Streamer 已上游集成到 vLLM 和 SGLang 中,可以通过 --load-format runai_streamer
标志启用,也集成到 ModelExpress 中。支持涵盖本地文件系统、S3 兼容存储和网络文件共享,以及下面详述的几种云后端。
云
主要云提供商现在在其自己的指南中记录了 Model Streamer。
AWS:Model Streamer 随 vLLM 深度学习容器一同发布,并且是官方 EKS 运行 AI/ML 推理文档中推荐的快速路径,其中包含针对 S3 调优的并发与分块大小。Google Cloud:与 NVIDIA 合作构建的原生 Cloud Storage 支持,包括GKE 文档,用于直接从存储桶流式传输到加速器内存。Microsoft Azure:Azure Blob Storage 集成,由 Microsoft 与 NVIDIA Run:ai 联合开发,为 Azure 客户提供一流的模型流式传输。已发布的基准测试在八台 NVIDIA H100 虚拟机上显示,加载速度比默认加载器快 3 到 6 倍,并稳定达到 80 Gbps,而默认路径约为 40 Gbps。
存储平台
多家 AI 数据基础设施合作伙伴已独立对 Model Streamer 进行基准测试并发布了结果:
WEKA仅用 3.5 秒即加载到 GPU 内存,比从本地 NVMe 加载快约 40%——使组织能够构建 PB 级共享模型仓库,从而加速模型就绪,而无需在推理环境中维护重复模型副本所需的时间、精力和容量。- VAST Data 测得 1.7 秒,比从本地 NVMe 加载提升 60%
DDN在 8 块 GPU 上以不到四秒的时间流式传输了 65.5 GB 的 Qwen3-32B,并将其转化为成本:与使用本地存储相比,每天最多可节省 10% 的 GPU 运行时间。
当启动新副本和加载模型权重是主要瓶颈时,请使用 Model Streamer。
Grove:一个 API,适配任意推理架构
新兴的工作负载模式——包括智能体流水线、分离式服务和专家混合训练——由多个相互连接的组件组成,这些组件必须一起扩展。Grove 提供了一个 Kubernetes API 来编排这些工作负载,从单个 Pod 到跨越数万块 GPU 的部署。
Grove 提供拓扑感知的自动扩缩容和分层 gang 调度,允许诸如 prefill 和 decode 之类的组件以全有或全无的单元启动。在 NVIDIA GB200 NVL72 上,它还能自动管理 ComputeDomain 资源,通过单个注解即可实现多节点 NVLink 性能,而无需手写 YAML。
Grove 是 NVIDIA Dynamo 的模块化组成部分,可以独立使用,并且已经为多家公司的大规模训练和推理流水线提供支持。近期工作包括支持 llm-d 和 Volcano 作为调度器后端,Kueue 支持正在进行中。
对于具有不同角色和耦合扩缩容需求的基于图的工作负载,请使用 Grove。
开始使用开源 NVIDIA Run:ai
NVIDIA Run:ai 现已在 NVIDIA DSX AI Factory GitHub 组织中作为开源软件提供。如需了解更多信息并开始使用,请查看以下资源:
NVIDIA Run:ai完整平台KAI Scheduler调度引擎KAI Resource Management用于项目、部门、配额和节点池GPU Fractioning Operator用于 Kubernetes 上的 CUDA GPU 分数化,并提供每个 Pod 的指标Workload Map工作负载管理契约
相关的开源项目包括:
Model Streamer用于快速加载模型权重Grove用于多组件推理编排
我们很高兴将这项工作带给社区,并以开放的方式构建下一代 AI 工作负载和 GPU 编排。我们欢迎您的贡献、问题和反馈。
