Udostępnij przez


Wprowadzenie do języka DirectML

Parowanie języka DirectML ze środowiskiem uruchomieniowym ONNX jest często najprostszym sposobem dla wielu deweloperów, aby zapewnić użytkownikom sztuczną inteligencję przyspieszoną sprzętowo. Te trzy kroki są ogólnym przewodnikiem dotyczącym korzystania z tego zaawansowanego kombi.

1. Konwertowanie

Format ONNX umożliwia korzystanie z ONNX Runtime z DirectML, co zapewnia możliwości współpracy między różnymi sprzętami.

Aby przekonwertować model na format ONNX, możesz użyć narzędzi ONNXMLTools lub Olive.

2. Optymalizowanie

Gdy masz model onnx, wykorzystaj Olive zasilane przez DirectML, aby zoptymalizować model. Zobaczysz znaczne ulepszenia wydajności, które można wdrożyć w ekosystemie sprzętu systemu Windows.

3. Integracja

Gdy model jest gotowy, nadszedł czas, aby zapewnić aplikacji wnioskowanie przyspieszane sprzętowo za pomocą środowiska uruchomieniowego ONNX i języka DirectML. W przypadku modeli generowania sztucznej inteligencji zalecamy użycie interfejsu API ONNX Runtime Generate()

Utworzyliśmy kilka przykładów, aby pokazać, jak można używać języka DirectML i środowiska uruchomieniowego ONNX:

DirectML i PyTorch

Backend DirectML dla Pytorch umożliwia wysokiej wydajności, niskopoziomowy dostęp do sprzętu GPU, jednocześnie oferując znany interfejs API Pytorch dla deweloperów. Więcej informacji na temat używania biblioteki PyTorch z językiem DirectML można znaleźć tutaj

DirectML dla aplikacji internetowych (wersja zapoznawcza)

Internetowy interfejs API sieci neuronowej (WebNN) to nowy standard sieci Web, który umożliwia aplikacjom internetowym i strukturom przyspieszanie głębokich sieci neuronowych przy użyciu sprzętu urządzenia, takiego jak procesory GPU, procesory CPU lub specjalnie utworzone akceleratory sztucznej inteligencji, takie jak jednostki NPU. Interfejs API sieci WebNN korzysta z interfejsu API DirectML w systemie Windows, aby uzyskać dostęp do natywnych możliwości sprzętowych i zoptymalizować wykonywanie modeli sieci neuronowych. Więcej informacji na temat sieci WebNN można znaleźć tutaj