Windows 機器學習 (ML) 可讓 C#、C++ 和 Python 開發人員透過 ONNX 執行階段在 Windows 電腦上本機執行 ONNX AI 模型,並針對不同的硬體 (CPU、GPU、NPU) 進行自動執行提供者管理。 ONNX Runtime 可與來自 PyTorch、Tensorflow/Keras、TFLite、scikit-learn 和其他框架的模型搭配使用。
一個圖表展示了 ONNX 模型通過 Windows ML,然後達到 NPU、GPU 和 CPU。
如果您還不熟悉 ONNX 執行階段,建議您閱讀 ONNX 執行階段文件。簡而言之,Windows ML 提供 ONNX 執行階段的共用 Windows 範圍複本,以及動態下載執行提供者 (EP) 的能力。
主要優點
- 動態取得最新的 EP - 自動下載和管理最新的硬體特定執行提供者
- 共用 ONNX 執行階段 - 使用全系統執行階段,而不是組合您自己的執行階段,從而減少應用程式大小
- 較小的下載/安裝 - 無需在您的應用程序中攜帶大型 EP 和 ONNX 運行時
- 廣泛的硬體支援 - 在具有任何硬體設定的 Windows 電腦 (x64 和 ARM64) 和 Windows Server 上執行
系統需求
- 作業系統:Windows 應用程式 SDK 支援的 Windows 版本
- 架構:x64 或 ARM64
- 硬體:任何 PC 配置(CPU、整合/獨立 GPU、NPU)
什麼是執行提供者?
執行提供者 (EP) 是一個元件,可為機器學習 (ML) 操作啟用特定於硬體的最佳化。 執行提供者抽象化不同的運算後端(CPU、GPU、專用加速器),並為圖形分割、核心註冊和運算子執行提供統一的介面。 若要深入瞭解,請參閱 ONNX 執行階段檔。
您可以 在這裡查看 Windows ML 支援的 EP 清單。
運作方式
Windows ML 包含 ONNX 執行階段 的複本,並可讓您動態下載廠商特定的 執行提供者 (EP),因此可以在 Windows 生態系統中的各種 CPU、GPU 和 NPU 中優化您的模型推斷。
自動部署
- 應用程式安裝 - Windows 應用程式 SDK 啟動載入器會初始化 Windows ML
- 硬體偵測 - 執行階段會識別可用的處理器
- EP 下載 - 自動下載最佳執行提供者
- 準備執行 - 您的應用程式可以立即使用 AI 模型
這樣就不需要:
- 特定硬體廠商的套件組合執行提供者
- 為不同的執行提供者建立個別的應用程式組建
- 手動處理執行提供者更新
備註
您仍然負責針對不同的硬體優化模型。 Windows ML 會處理執行提供者散發,而不是模型優化。 如需優化的詳細資訊,請參閱 AI 工具組 和 ONNX 執行階段教學課程 。
效能最佳化
最新版本的 Windows ML 直接與 GPU 和 NPU 的專用執行提供者配合使用,提供與過去的專用 SDK (例如 TensorRT for RTX、AI Engine Direct 和英特爾的 Extension for PyTorch) 相當的效能。 我們已將 Windows ML 設計為具有同級最佳的 GPU 和 NPU 效能,同時保留先前以 DirectML 為基礎的解決方案所提供的一次寫入、隨處執行的優點。
在 Windows ML 中使用執行提供者
Windows ML 執行階段提供靈活的方法來存取機器學習模型執行提供者(EP),以優化不同硬體配置上的 ML 模型推論。 這些 EP 會以個別套件的形式散發,並可以從作業系統獨立更新。 如需動態下載和註冊 EP 的詳細資訊,請參閱使用 Windows ML 檔初始化執行提供者 。
將模型轉換為 ONNX
您可以將模型從其他格式轉換成 ONNX,以便與 Windows ML 搭配使用。 請參閱 Visual Studio Code AI 工具組的文件,瞭解如何 將模型轉換成 ONNX 格式 以深入瞭解。 另請參閱 ONNX 執行階段教學課程 ,以取得將 PyTorch、TensorFlow 和 Hugging Face 模型轉換為 ONNX 的詳細資訊。
模型管理
Windows ML 提供靈活的選項來管理 AI 模型:
- 模型目錄 - 從線上目錄動態下載模型,無需捆綁大型檔案
- 本機模型 - 將模型檔案直接包含在應用程式套件中
與 Windows AI 生態系統整合
Windows ML 是更廣泛的 Windows AI 平臺的基礎:
- Windows AI API - 常見工作的內建模型
- Foundry Local - 即用型 AI 模型
- 自訂模型 - 進階案例的直接 Windows ML API 存取
提供意見反應
發現問題或有建議嗎? 在 Windows 應用程式 SDK GitHub 上搜尋或建立問題。
後續步驟
- 開始使用:開始使用 Windows ML
- 模型管理: 模型目錄概觀
- 深入瞭解: ONNX 執行階段檔
- 轉換模型: VS Code AI Toolkit 模型轉換