Copilot+ 電腦開發人員指南
Copilot+ 計算機是一種新型的 Windows 11 硬體,由高效能類神經處理單元 (NPU) 提供動力,這是一種適用於 AI 密集程式的特殊計算機晶片,例如實時翻譯和影像產生,每秒可以執行超過 40 萬億次的作業(TOPS)。 Copilot+ 電腦提供全天的電池使用時間,以及存取最先進的 AI 功能和模型。 深入了解簡介 Copilot+ 計算機 - 官方Microsoft部落格。
下列 Copilot+ 電腦開發人員指引涵蓋:
- 裝置必要條件
- 什麼是 Arm 型 Snapdragon Elite X+ 晶片?
- 具有 NPU 處理器的 Copilot+ 電腦支援的獨特 AI 功能
- 如何在 + 電腦上存取 NPU Copilot
- 如何使用 ONNX 執行時間以程式設計方式存取 + 電腦上的 NPU Copilot
- 如何測量在裝置 NPU 本機執行的 AI 模型效能
必要條件
本指南專屬於 Copilot+ 計算機。
許多新的 Windows AI 功能都需要 NPU,且能夠執行 40 個以上的 TOPS,包括但不限於:
- Arm 型 Qualcomm Snapdragon X Elite 裝置
- Intel Lunar Lake 裝置 - 即將推出
- AMD STRIX (Ryzen AI 9) 裝置 - 即將推出
什麼是 Arm 型 Snapdragon Elite X 晶片?
由高通打造的新 Snapdragon X Elite Arm 晶片強調 AI 整合,其領先業界的神經處理單元 (NPU) 。 此 NPU 能夠平行處理大量數據,每秒執行數萬億個作業,比 CPU 或 GPU 更有效率地使用 AI 工作的能量,進而產生較長的裝置電池使用時間。 NPU 可與 CPU 和 GPU 一致。 Windows 11 會將處理工作指派給最適當的位置,以提供快速且有效率的效能。 NPU 可透過企業級安全性啟用裝置上的 AI 智慧型手機體驗,以增強晶片到雲端的保護。
- 深入瞭解 高通 Snapdragon X Elite。
- 深入瞭解在Arm上使用和開發 Windows。
具有 NPU 的 Copilot+ 電腦支援的獨特 AI 功能
Copilot+ 計算機提供獨特的 AI 體驗,隨附於新式 Windows 11 版本。 這些 AI 功能,專為在裝置 NPU 上執行而設計,包括:
Windows Studio 效果:來自Microsoft的一組音訊和視訊 NPU 加速 AI 效果,包括創意篩選、背景模糊、眼球接觸、自動框架、語音焦點。 開發人員也可以針對系統層級控件,將切換新增至其應用程式。 AI 增強功能的 Windows Studio 效果清單。
回想一下:AI 支援的 UserActivity API,可讓使用者使用自然語言搜尋過去的互動,並挑選離開的位置。 透過 Windows 測試人員計畫 (WIP) 提供 Copilot+ 電腦。 深入瞭解: 使用召回來回溯您的步驟
Phi 矽:P hi 小型語言模型(SLM),可讓您的應用程式使用即將發行的 Windows 應用程式 SDK 來執行自然語言處理工作(聊天、數學、程式代碼、推理)。
文字辨識:光學字元辨識 (OCR) API,可讓您從影像和檔擷取文字。 想像將教室白板的 PDF、紙張檔或圖片轉換成可編輯的數位文字等工作。
在將影像轉換成 AI 藝術的 Microsoft 小畫家 中繪製新功能的共同建立器。
超解析度:一種領先業界的 AI 技術,使用 NPU 讓遊戲執行得更快且看起來更好。
*並非所有功能一開始都可在所有 Copilot+ 計算機上使用。
重要
最新版 Windows 中的 AI 模型可透過在組建 2024 中宣佈的 Windows Copilot 執行時間 API 取得。 適用於新 AI 功能的 API,例如 Phi 矽,受到優化以在 NPU 上執行(推斷)的模型所支援,並將在即將發行的 Windows 應用程式 SDK 中出貨。
如何在 + 電腦上存取 NPU Copilot
類神經處理單元 (NPU) 是新的硬體資源。 如同電腦上的其他硬體資源,NPU 需要特別設計軟體,以利用它所提供的優點。 NPU 是專為執行構成 AI 模型的深度學習數學作業所設計。
上述 Windows 11 Copilot+ AI 功能已特別設計來利用 NPU。 針對以 NPU 為目標的 AI 模型,使用者將會獲得改善的電池使用時間,以及更快的推斷運行時間。 Windows 11 對 NPU 的支援將包含 Arm 型 Qualcomm 裝置,以及 Intel 和 AMD 裝置(即將推出)。
針對具有 NPU 的 裝置,任務管理器 現在可以用來檢視 NPU 資源使用量。
在裝置 NPU 上推斷(執行 AI 工作)的建議方式是使用 ONNX Runtime。 ONNX 運行時間是一個彈性且高效能的堆疊,可針對 NPU 以及 GPU 和 CPU 進行程式設計,可讓您攜帶自己的 AI 模型,或使用網路上找到的 開放原始碼 AI 模型。 深入瞭解如何使用 ONNX Runtime 來存取下方的 NPU,或深入瞭解如何在 Windows 應用程式中使用 機器學習 模型。
注意
使用其他適用於 PyTorch 或 Tensorflow 的運行時間呢? Windows 也支援 PyTorch、Tensorflow 和其他晶片廠商提供的 SDK 類型的其他運行時間。 目前您可以藉由轉換成彈性 ONNX 格式來執行 PyTorch、TensorFlow 和其他模型類型,但原生支援即將推出。
如何使用 ONNX 執行時間以程式設計方式存取 + 電腦上的 NPU Copilot
Microsoft提供稱為 ONNX Runtime 的完整 開放原始碼 推斷和定型架構。 ONNX Runtime 是建議 開放原始碼 Microsoft 解決方案,在 NPU 上執行 AI 模型。 由於 ONNX 運行時間具有彈性,而且支援許多不同的選項來執行 AI 模型,因此選擇可能會造成混淆。 本指南將協助您選取 Windows Copilot+ 計算機特有的選擇。
- Qualcomm Snapdragon X:目前,開發人員應以使用 Qualcomm AI Engine Direct SDK (QNN) 的 Qualcomm QNN 執行提供者 (EP) 為目標。 具有 QNN 支援的預先建置套件 可供下載。 這是 Windows Copilot 執行時間目前所使用的相同堆疊,以及 + PC Qualcomm 裝置上的 Copilot體驗。 Qualcomm Snapdragon X Elite NPU 的 DirectML 和 WebNN 支援已在 Build 2024 上宣佈,即將推出。
- Intel 和 AMD NPU 裝置:其他 NPU 裝置將於 2024 年稍後提供。 DirectML 是以這些裝置為目標的建議方法。
支援的模型格式
AI 模型通常會以較大的數據格式定型和可用,例如 FP32。 不過,許多 NPU 裝置只支援低位格式的整數數學,例如 INT8,以提高效能和電源效率。 因此,AI 模型必須經過轉換(或「量化」,才能在 NPU 上執行。 有許多模型已轉換成現成可用的格式。 您也可以 自備模型 (BYOM)來轉換或優化。
- Qualcomm AI Hub (計算):Qualcomm 提供已驗證 Copilot以在具有 Snapdragon X Elite 的電腦上使用的 AI 模型,以及特別針對此 NPU 有效率執行而優化的可用模型。 深入瞭解: 使用 Qualcomm AI Hub 加速模型部署 |Microsoft組建 2024。
- ONNX 模型動物園:此 開放原始碼 存放庫以 ONNX 格式提供預先定型、最先進的模型精心策劃的集合。 這些模型建議用於所有 Copilot+ 計算機的 NPU,包括 Intel 和 AMD 裝置(即將推出)。
對於那些想要攜帶您自己的模型的人來說,我們建議使用硬體感知模型優化工具 Olive。 Olive 可協助模型壓縮、優化和編譯,以使用 ONNX 運行時間作為 NPU 效能優化解決方案。 深入瞭解: AI 更容易:ONNX 運行時間和橄欖工具鏈如何協助您進行問答 |組建 2023。
如何測量在裝置 NPU 本機執行的 AI 模型效能
若要測量應用程式中 AI 功能整合的效能,以及相關聯的 AI 模型運行時間:
記錄追蹤:記錄一段時間的裝置活動稱為系統追蹤。 系統追蹤會產生「追蹤」檔案,可用來產生報表,並協助您識別如何改善應用程式的效能。 深入瞭解: 擷取系統追蹤以分析記憶體使用量。
檢視 NPU 使用方式:檢查哪些進程正在使用 NPU 和提交工作的 callstack。
檢視 CPU 上的工作和呼叫堆疊:檢查工作前饋送 AI 模型和工作後處理 AI 模型的結果。
載入和運行時間:檢查載入 AI 模型並建立 ONNX 執行時間會話的時間長度。
運行時間參數:檢查影響模型運行時間效能和優化的 ONNX 執行時間組態和執行提供者 (EP) 參數。
個別推斷時間:從 NPU 追蹤個別推斷時間和子詳細數據。
分析工具:分析 AI 模型作業,以查看每個操作員花費多少時間來參與總推斷時間。
NPU 特定:檢查 NPU 子詳細數據,例如子 HW 計量、記憶體頻寬等等。
若要執行這些測量,我們建議使用下列診斷和追蹤工具:
- 任務管理員:讓使用者能夠檢視其裝置上安裝的 Windows 作業系統效能,包括進程、效能、應用程式歷程記錄、啟動應用程式、使用者、詳細數據及服務。 將會針對您的裝置 CPU、記憶體、記憶體磁碟、Wi-Fi、GPU 顯示即時效能資料...和 現在 NPU。 數據報括使用率百分比、可用的記憶體、共用記憶體、驅動程式版本、實體位置等等。
- Windows Performance Recorder (WPR):WPR 現在隨附類神經處理配置檔來記錄 NPU 活動。 這會記錄 Microsoft計算驅動程式模型 (MCDM) 與 NPU 的互動。 開發人員現在可以看到 NPU 使用方式、使用 NPU 的進程,以及提交工作的呼叫堆疊。
- Windows 效能分析器 (WPA):WPA 會建立 Windows 事件追蹤 (ETW) 事件圖表和數據表,這些事件是由 Windows Performance Recorder (WPR)、Xperf 或評定平臺中執行的評定所記錄。 它提供方便的存取點來分析 CPU、磁碟、網路、ONNX 運行時間事件...和 NPU 分析的新數據表,全都在單一時間軸中。 WPA 現在可以在與工作前饋送 AI 模型和工作後處理 AI 模型結果相關的 CPU 上檢視工作和呼叫堆疊。 從 Microsoft 市集下載 Windows 效能分析器。
- GPUView:GPUView 是一種開發工具,可從事件追蹤記錄檔 (.etl) 檔案讀取記錄的視訊和核心事件,並以圖形方式向使用者呈現數據。 此工具現在同時包含 GPU 和 NPU 作業,以及支持檢視 MCDM 裝置的 DirectX 事件,例如 NPU。
- Windows 效能分析器 中的 ONNX 運行時間事件:從 ONNXRuntime 1.17 開始(並在 1.18.1 中增強),下列使用案例適用於運行時間中發出的事件:
- 查看載入 AI 模型並建立 ONNX 運行時間工作階段所花費的時間。
- 請參閱影響模型運行時間效能和優化之 ONNX 運行時間組態和執行提供者 (EP) 參數。
- 從 NPU (QNN) 追蹤每個推斷時間和子詳細數據。
- 分析 AI 模型作業,以查看每個運算子花費多少時間來貢獻總推斷時間。
- 深入瞭解 ONNX 執行時間執行提供者 (EP) 分析。
注意
WPR UI(可用來支援 Windows 中包含的命令行 WPR 的使用者介面)、WPA 和 GPUView 都是 Windows Performance Toolkit (WPT), 2024 年 5 月版本+ 的一部分。 若要使用 WPT,您必須: 下載 Windows ADK 工具組。
如需使用 Windows 效能分析器 檢視 ONNX 運行時間事件的快速入門(WPA),請遵循下列步驟:
下載 ort.wprp 和 etw_provider.wprp。
開啟命令列並輸入:
wpr -start ort.wprp -start etw_provider.wprp -start NeuralProcessing -start CPU echo Repro the issue allowing ONNX to run wpr -stop onnx_NPU.etl -compress
將 Windows Performance Recorder (WPR) 配置檔與其他 內建錄製配置檔 結合,例如 CPU、磁碟等。
從 Microsoft 市集下載 Windows 效能分析器 (WPA)。
在
onnx_NPU.etl
WPA 中開啟檔案。 按兩下以開啟這些圖形:- 「神經處理 -> NPU 使用率
- ONNX 事件的泛型事件
要考慮搭配上述Microsoft Windows 工具使用的其他效能測量工具,包括:
- Qualcomm Snapdragon Profiler (qprof):GUI 和全系統的效能分析工具,旨在將系統效能可視化,以及識別 Qualcomm SoC CPU、GPU、DSP 和其他 IP 區塊的優化和應用程式調整改善機會。 Snapdragon Profiler 允許檢視 NPU 子詳細數據,例如子 HW 計量、記憶體頻寬等等。
加法資源
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應