Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Aby uzyskać wskazówki koncepcyjne, zobacz Uruchamianie modeli ONNX z systemem Windows ML).
Interfejsy API w pakiecie NuGet Microsoft.WindowsAppSDK.ML można traktować jako nadzbiór tych dwóch zestawów:
- Interfejsy API uczenia maszynowego systemu Windows. Interfejsy API uczenia maszynowego systemu Windows w przestrzeni nazw Microsoft.Windows.AI.MachineLearning , takie jak klasa ExecutionProviderCatalog i jego metody (czyli interfejsy API środowiska uruchomieniowego systemu Windows).
- Interfejsy API środowiska uruchomieniowego ONNX. Implementacje uczenia maszynowego systemu Windows (w pakiecie NuGet Microsoft.WindowsAppSDK.ML ) niektórych interfejsów API ze środowiska uruchomieniowego ONNX (ORT). Aby uzyskać dokumentację, zobacz dokumentację API środowiska uruchomieniowego ONNX. Na przykład element strukturalny OrtCompileApi. Przykłady kodu korzystające z tych interfejsów API i więcej linków do dokumentacji można znaleźć w samouczku Używanie usługi Windows ML do uruchamiania modelu ResNet-50 .
Pakiet NuGet Microsoft.WindowsAppSDK.ML
Środowisko uruchomieniowe Microsoft Windows ML udostępnia interfejsy API dla operacji uczenia maszynowego i sztucznej inteligencji w aplikacjach systemu Windows. Pakiet Microsoft.WindowsAppSDK.ML NuGet udostępnia pliki środowiska uruchomieniowego uczenia maszynowego .winmd systemu Windows do użycia zarówno w projektach C#, jak i C++.
Koła pywinrt języka Python
Środowisko uruchomieniowe microsoft Windows ML korzysta z projektu pywinrt w celu zapewnienia dostępu języka Python do tych samych interfejsów API uczenia maszynowego systemu Windows. Nazwa pakietu to winui3-Microsoft.Windows.AI.MachineLearning. Do korzystania z zestawu SDK aplikacji systemu Windows w języku Python są wymagane dodatkowe pakiety. Aby uzyskać szczegółowe informacje, zobacz temat Run ONNX models with Windows ML (Uruchamianie modeli ONNX z systemem Windows ML ).
Interfejsy API uczenia maszynowego systemu Windows
Aby uzyskać dokumentację referencyjną interfejsu API i przykłady kodu, zobacz przestrzeń nazw Microsoft.Windows.AI.MachineLearning .
Uwagi dotyczące implementacji
Środowisko uruchomieniowe uczenia maszynowego systemu Windows jest zintegrowane z zestawem SDK aplikacji systemu Windows i opiera się na jego mechanizmach wdrażania i uruchamiania:
- Automatycznie odnajduje dostawców usług wykonawczych zgodnych z aktualnym sprzętem.
- Zarządza okresem istnienia i aktualizacjami pakietów
- Obsługuje rejestrację i aktywację pakietu
- Obsługuje różne wersje dostawców usług wykonawczych
Wdrożenie zależne od struktury
Usługa Windows ML jest dostarczana jako składnik zależny od platformy . Oznacza to, że aplikacja musi:
- Dodaj odwołanie do głównego pakietu NuGet Windows App SDK, dodając odwołanie do
Microsoft.WindowsAppSDK(zalecane) - Lub, odwołaj się również do obu
Microsoft.WindowsAppSDK.MLiMicrosoft.WindowsAppSDK.Runtime
Aby uzyskać więcej informacji na temat wdrażania aplikacji zestawu SDK aplikacji systemu Windows, zobacz dokumentację Package and deploy Windows apps (Pakowanie i wdrażanie aplikacji systemu Windows ).
Używanie środowiska uruchomieniowego ONNX z systemem Windows ML
W przypadku aplikacji języka C++, po zarejestrowaniu dostawców wykonania, użyj bezpośrednio interfejsu API środowiska uruchomieniowego ONNX do tworzenia sesji i przeprowadzania wnioskowania.
W przypadku aplikacji języka C# użyj środowiska uruchomieniowego ONNX bezpośrednio do wnioskowania przy użyciu Microsoft.ML.OnnxRuntime przestrzeni nazw.
W przypadku aplikacji języka Python użyj koła onnxruntime-windowsml środowiska uruchomieniowego ONNX w celu wnioskowania.
Uwagi dotyczące języka Python
Inicjowanie zestawu SDK aplikacji systemu Windows
Wszystkie wywołania uczenia maszynowego systemu Windows powinny wystąpić po zainicjowaniu zestawu SDK aplikacji systemu Windows. Można to zrobić za pomocą następującego kodu:
from winui3.microsoft.windows.applicationmodel.dynamicdependency.bootstrap import (
InitializeOptions,
initialize
)
with initialize(options = InitializeOptions.ON_NO_MATCH_SHOW_UI):
# Your Windows ML code here
Rejestracja jest wykonywana poza systemem Windows ML
Środowisko uruchomieniowe ONNX jest zaprojektowane w sposób, w którym środowiska python i natywne są oddzielone. Wywołania natywnej rejestracji w tym samym procesie nie będą działać w środowisku języka Python. W związku z tym rejestracja dostawców wykonywania powinna odbywać się bezpośrednio przy użyciu interfejsu API języka Python.
Usuń pakowany vcruntime z pywinrt
Projekt pywinrt zawiera msvcp140.dll w pakiecie winrt-runtime. Może to powodować konflikt z innymi pakietami. Usuń tę bibliotekę dll, aby uniknąć tego problemu i zainstalować brakujące biblioteki vcruntime przy użyciu pakietu redystrybucyjnego vc