Delen via


Wat is Windows ML?

Met Windows Machine Learning (ML) kunnen C#-, C++- en Python-ontwikkelaars ONNX AI-modellen lokaal uitvoeren op Windows-pc's via de ONNX Runtime, met automatisch beheer van de uitvoeringsprovider voor verschillende hardware (CPU's, GPU's, NPU's). U kunt modellen van PyTorch, Tensorflow/Keras, TFLite, scikit-learn en andere frameworks gebruiken met ONNX Runtime.

Een diagram met een ONNX-model dat via Windows ML gaat om vervolgens NPU's, GPU's en CPU's te bereiken.

Als u nog niet bekend bent met de ONNX Runtime, raden we u aan de ONNX Runtime-documenten te lezen. Kortom, Windows ML biedt een gedeelde versie van de ONNX Runtime, plus de mogelijkheid om uitvoeringsproviders (EPs) dynamisch te downloaden.

Belangrijkste voordelen

  • Dynamisch nieuwste EPs ophalen : de meest recente hardwarespecifieke uitvoeringsproviders automatisch downloaden en beheren
  • Gedeelde ONNX Runtime : maakt gebruik van systeembrede runtime in plaats van uw eigen runtime te bundelen, waardoor de app kleiner wordt
  • Kleinere downloads/installaties : u hoeft geen grote EPs en de ONNX Runtime in uw app te gebruiken
  • Brede hardwareondersteuning - Wordt uitgevoerd op Windows-pc's (x64 en ARM64) en Windows Server met elke hardwareconfiguratie

Systeemvereisten

Wat is een uitvoeringsprovider?

Een uitvoeringsprovider (EP) is een onderdeel dat hardwarespecifieke optimalisaties voor machine learning-bewerkingen (ML) mogelijk maakt. Uitvoeringsproviders abstraheren verschillende compute-back-ends (CPU, GPU, gespecialiseerde accelerators) en bieden een uniforme interface voor graafpartitionering, kernelregistratie en operatoruitvoering. Zie de ONNX Runtime-documenten voor meer informatie.

Hier ziet u de lijst met EPs die door Windows ML worden ondersteund.

Hoe het werkt

Windows ML bevat een kopie van de ONNX Runtime en stelt u in staat om leveranciersspecifieke uitvoeringsproviders (EPs) dynamisch te downloaden, zodat uw modeldeductie kan worden geoptimaliseerd voor de grote verscheidenheid aan CPU's, GPU's en NPU's in het Windows-ecosysteem.

Automatische implementatie

  1. App-installatie - Windows App SDK bootstrapper initialiseert Windows ML
  2. Hardwaredetectie - Runtime identificeert beschikbare processors
  3. EP-download - Downloadt automatisch optimale uitvoeringsproviders
  4. Klaar om te worden uitgevoerd : uw app kan onmiddellijk AI-modellen gebruiken

Dit elimineert de noodzaak om:

  • Bundeluitvoeringsproviders voor specifieke hardwareleveranciers
  • Afzonderlijke app-builds maken voor verschillende uitvoeringsproviders
  • Updates van de uitvoeringsprovider handmatig verwerken

Opmerking

U bent nog steeds verantwoordelijk voor het optimaliseren van uw modellen voor verschillende hardware. Windows ML verwerkt distributie van de uitvoeringsprovider, niet modeloptimalisatie. Zie de ZELFSTUDIEs voor AI Toolkit en ONNX Runtime voor meer informatie over optimalisatie.

Optimalisatie van prestaties

De nieuwste versie van Windows ML werkt rechtstreeks met toegewezen uitvoeringsproviders voor GPU's en NPU's, die prestaties leveren die vergelijkbaar zijn met toegewezen SDK's uit het verleden, zoals TensorRT voor RTX, AI Engine Direct en Intel-extensie voor PyTorch. We hebben Windows ML ontworpen om de beste GPU- en NPU-prestaties te hebben, terwijl de voordelen van write-once-run-anywhere behouden blijven die door de vorige DirectML-oplossing worden aangeboden.

Uitvoeringsproviders gebruiken met Windows ML

De Windows ML-runtime biedt een flexibele manier om toegang te krijgen tot ML-uitvoeringsproviders (EP's), die de inferentie van ML-modellen op verschillende hardwareconfiguraties kunnen optimaliseren. Deze EPs worden gedistribueerd als afzonderlijke pakketten die onafhankelijk van het besturingssysteem kunnen worden bijgewerkt. Zie de initialisatieproviders met Windows ML-documenten voor meer informatie over het dynamisch downloaden en registreren van IP-adressen.

Modellen converteren naar ONNX

U kunt modellen van andere indelingen converteren naar ONNX, zodat u ze kunt gebruiken met Windows ML. Zie de documentatie van visual Studio Code AI Toolkit over het converteren van modellen naar de ONNX-indeling voor meer informatie. Zie ook de ONNX Runtime-zelfstudies voor meer informatie over het converteren van PyTorch-, TensorFlow- en Hugging Face-modellen naar ONNX.

Modelbeheer

Windows ML biedt flexibele opties voor het beheren van AI-modellen:

  • Modelcatalogus - Modellen dynamisch downloaden uit online catalogi zonder grote bestanden te bundelen
  • Lokale modellen - Modelbestanden rechtstreeks opnemen in uw toepassingspakket

Integratie met Windows AI-ecosysteem

Windows ML fungeert als de basis voor het bredere Windows AI-platform:

  • Windows AI-API's - Ingebouwde modellen voor algemene taken
  • Foundry Local - Kant-en-klare AI-modellen
  • Aangepaste modellen - Directe Windows ML API-toegang voor geavanceerde scenario's

Feedback geven

Hebt u een probleem gevonden of suggesties? Zoek of maak problemen in de Windows App SDK GitHub.

Volgende stappen