什么是 Windows ML?

Windows ML 是适用于 Windows 的统一高性能本地 AI 推理框架,由 ONNX 运行时提供支持。 借助 Windows ML,可以通过 Windows 管理并保持最新状态的可选执行提供程序在本地运行 AI 模型,并加速在 NPU、GPU 和 CPU 上进行推理。 可以通过 Windows ML 使用 PyTorch、TensorFlow/Keras、TFLite、scikit-learn 和其他框架中的模型。

一个图表,展示 ONNX 模型经过 Windows ML,然后到达 NPU、GPU 和 CPU.

主要优势

借助 Windows ML,可以轻松地将 AI 推理引入任何 Windows 应用:

  • 在设备上运行 AI — 模型在本地运行在用户硬件上,使数据保持私密性,消除云成本,无需 Internet 连接即可工作。
  • 使用你已有的模型,导入来自 PyTorch、TensorFlow、scikit-learn、Hugging Face 等的模型。
  • 由 Windows 促进的硬件加速 — Windows ML 允许你通过 Windows 安装的执行提供程序,并通过 Windows 更新保持更新,访问特定于 IHV 的 NPU、GPU 和 CPU,无需在应用中捆绑执行提供程序。
  • 一个运行时,多个应用 — (可选)使用 Windows ML 作为共享系统组件,这样你的应用程序可以保持小巧,设备上的所有应用程序共享相同的最新运行时,而不是每个应用程序捆绑自己的一份副本。
  • 一流的性能 - Windows ML 在 NPU 和 GPU 上提供紧贴硬件的性能,能够与用于 RTX 的 TensorRT 和 Qualcomm 的 AI 引擎 Direct 等专用 SDK 相媲美。 性能结果因硬件配置和模型而异 - 有关特定于硬件的指南,请参阅 加速 AI 模型

为什么使用 Windows ML 而不是 Microsoft ORT?

Windows ML 是由 Windows 支持和维护的 ONNX Runtime (ORT) 副本,提供系统范围的版本或独立版本。

  • 相同的 ONNX API - 对现有 ONNX 运行时代码没有更改
  • Windows 支持 - 由 Windows 团队支持和维护
  • 广泛的硬件支持 - 在 Windows 电脑(x64 和 ARM64)和具有任何硬件配置的 Windows Server 上运行
  • 可选的较小应用大小 - 选择依赖于框架的部署,并在应用之间共享运行时,而不是捆绑自己的副本
  • 可选的常青更新 - 选择依赖于框架的部署,用户始终通过 Windows 更新获取最新的运行时

此外,Windows ML 允许应用 动态获取最新的执行提供程序 来加速 AI 模型,而无需在应用中携带 EP 并为不同的硬件创建单独的生成。

请参阅 Windows ML 入门 ,自行尝试!

NPU、GPU 和 CPU 上的硬件加速

Windows ML 允许访问执行提供程序,这些提供程序可以加速现代 Windows 电脑中存在的三个硅类的推理:

  • NPU — 电池高效、持续持续的设备推理,在 Copilot+ PC 上提供最强大的 NPU
  • GPU — 图像、视频和生成 AI 等高吞吐量工作负载,它们通常会在离散 GPU 上提供最佳性能
  • CPU — 通用降级方案及 IHV 优化的 CPU 加速功能

有关完整的硅至EP映射、驱动程序要求和 EP 获取选项,请参阅 加速 AI 模型

系统要求

注释

所有受支持的Windows版本都提供对 CPU 和 GPU 的支持(通过 DirectML)。 适用于 NPU 和特定 GPU 硬件的硬件优化执行提供程序需要 Windows 11 版本 24H2(内部版本 26100)或更高版本。 有关详细信息,请参阅 Windows ML 执行提供程序

性能优化

最新版本的 Windows ML 直接与 GPU 和 NPU 的专用执行提供程序合作,提供与过去专用 SDK 相当的底层性能,例如用于 RTX 的 TensorRT、AI Engine Direct 和适用于 PyTorch 的 Intel 扩展。 我们设计了 Windows ML,具有一流的 GPU 和 NPU 性能,无需应用分发特定于 IHV 的 SDK。 性能结果因硬件配置和模型而异 - 有关特定于硬件的指南,请参阅 加速 AI 模型

将模型转换为 ONNX

可以将模型从其他格式转换为 ONNX,以便可以将模型与 Windows ML 配合使用。 请参阅 Foundry Toolkit for Visual Studio Code 的文档,了解如何将模型转换到 ONNX 格式以了解详细信息。 另请参阅 ONNX 运行时教程 ,详细了解如何将 PyTorch、TensorFlow 和 Hugging Face 模型转换为 ONNX。

模型分布

Windows ML 提供了用于分发 AI 模型的灵活选项:

  • 跨应用共享模型 - 从任何 CDN 动态下载和共享模型,而无需捆绑大型文件
  • 本地模型 - 直接在应用程序包中包含模型文件

与 Windows AI 生态系统集成

Windows ML 是更广泛的Windows AI 平台的基础:

  • Windows AI API - 常见任务的内置模型
  • Foundry Local - 随时可用的 AI 模型
  • 自定义模型 - 针对高级方案的直接 Windows ML API 访问

提供反馈

找到了问题或有建议? 在 Windows 应用 SDK GitHub 上搜索或创建问题。

后续步骤