Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit onderwerp wordt beschreven hoe u Windows ML installeert en gebruikt om uitvoeringsproviders (EPs) te detecteren, downloaden en registreren voor gebruik met de ONNX Runtime die wordt geleverd met Windows ML. Windows ML verwerkt de complexiteit van pakketbeheer en hardwareselectie, waarbij automatisch de meest recente uitvoeringsproviders worden gedownload die compatibel zijn met de hardware van uw apparaat.
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.
Vereiste voorwaarden
- Versie van Windows die Windows App SDK ondersteunt
- Taalspecifieke vereisten die hieronder worden weergegeven
- .NET 6 of hoger
- Gericht op een Windows 10-specifieke TFM zoals
net6.0-windows10.0.19041.0of hoger
Stap 1: de Windows App SDK installeren of bijwerken
De modelcatalogus-API's zijn opgenomen in de experimentele versie van Windows App SDK 2.0.0 of hoger.
Zie de Windows App SDK in een bestaand project gebruiken voor het toevoegen van de Windows App SDK aan uw project, of als u al Windows App SDK gebruikt, uw pakketten bijwerken.
Stap 2: EPs downloaden en registreren
De eenvoudigste manier om aan de slag te gaan, is door Windows ML automatisch de nieuwste versie van alle compatibele uitvoeringsproviders te laten detecteren, downloaden en registreren. Uitvoeringsproviders moeten worden geregistreerd bij de ONNX Runtime in Windows ML voordat u ze kunt gebruiken. En als ze nog niet zijn gedownload, moeten ze eerst worden gedownload. Aanroepen EnsureAndRegisterCertifiedAsync() doen beide in één stap.
using Microsoft.ML.OnnxRuntime;
using Microsoft.Windows.AI.MachineLearning;
// First we create a new instance of EnvironmentCreationOptions
EnvironmentCreationOptions envOptions = new()
{
logId = "WinMLDemo", // Use an ID of your own choice
logLevel = OrtLoggingLevel.ORT_LOGGING_LEVEL_ERROR
};
// And then use that to create the ORT environment
using var ortEnv = OrtEnv.CreateInstanceWithOptions(ref envOptions);
// Get the default ExecutionProviderCatalog
var catalog = ExecutionProviderCatalog.GetDefault();
// Ensure and register all compatible execution providers with ONNX Runtime
// This downloads any necessary components and registers them
await catalog.EnsureAndRegisterCertifiedAsync();
Aanbeveling
In productietoepassingen verpakt u de EnsureAndRegisterCertifiedAsync() aanroep in een try-catch-blok om potentiële netwerk- of downloadfouten probleemloos af te handelen.
Volgende stappen
Nadat u uitvoeringsproviders hebt geregistreerd, kunt u de ONNX Runtime-API's in Windows ML gebruiken. U wilt...
- Uitvoeringsproviders selecteren - Geef aan welke uitvoeringsproviders u wilt gebruiken
- Uw modellen ophalen - Modelcatalogus gebruiken om modellen dynamisch te downloaden of lokaal op te nemen
- Modeldeductie uitvoeren : uw model compileren, laden en deductie
Zie ook
- Modelcatalogus - Modellen dynamisch downloaden uit online catalogi
- Uitvoerproviders initialiseren - Aanvullende manieren waarop u het downloaden van IP's kunt afhandelen
- Uw app distribueren - Informatie over het distribueren van een app met Windows ML
- ONNX-versies in Windows ML - Informatie over welke ONNX Runtime-versie wordt geleverd met Windows ML
- Zelfstudie : volledige end-to-end zelfstudie met Windows ML met het ResNet-50-model
- Codevoorbeelden - Onze codevoorbeelden met Windows ML