Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Kavramsal rehberlik için bkz. Windows ML ile ONNX modellerini çalıştırma).
Microsoft.WindowsAppSDK.ML NuGet paketindeki API'leri şu iki kümenin üst kümesi olarak düşünebilirsiniz:
- Windows ML API'leri. ExecutionProviderCatalog sınıfı ve yöntemleri (Windows Çalışma Zamanı API'leri) gibi Microsoft.Windows.AI.MachineLearning ad alanında Windows ML API'leri.
- ONNX Çalışma Zamanı API'leri. Microsoft.WindowsAppSDK.ML NuGet paketinde bulunan ONNX Çalışma Zamanı'ndan (ORT) belirli API'lerin Windows ML uygulamaları. Belgeler için ONNX Çalışma Zamanı API belgelerine bakın. Örneğin, OrtCompileApi yapısı. Bu API'leri kullanan kod örnekleri ve daha fazla belge bağlantısı için ResNet-50 model öğreticisini çalıştırmak için Windows ML kullanma öğreticisine bakın.
Microsoft.WindowsAppSDK.ML NuGet paketi
Microsoft Windows ML çalışma zamanı, Windows uygulamalarında makine öğrenmesi ve yapay zeka işlemleri için API'ler sağlar.
Microsoft.WindowsAppSDK.ML NuGet paketi, hem C# hem de C++ projelerinde kullanılmak üzere Windows ML çalışma zamanı .winmd dosyalarını sağlar.
pywinrt Python tekerlekleri
Microsoft Windows ML çalışma zamanı, aynı Windows ML API'lerine Python erişimi sağlamak için pywinrt projesinden yararlanıyor. Paket adı winui3-Microsoft.Windows.AI.MachineLearning şeklindedir. Python'da Windows Uygulama SDK'sını kullanmak için ek paketler gerekir. Ayrıntılar için Windows ML ile ONNX modellerini çalıştırma konusuna bakın.
Windows ML API'leri
API başvurusu belgeleri ve kod örnekleri için bkz . Microsoft.Windows.AI.MachineLearning ad alanı.
Uygulama notları
Windows ML çalışma zamanı, Windows Uygulama SDK'sı ile tümleşiktir ve dağıtım ve önyükleme mekanizmalarına dayanır:
- Geçerli donanımla uyumlu yürütme sağlayıcılarını otomatik olarak bulur
- Paket ömrünü ve güncelleştirmelerini yönetir
- Paket kaydını ve etkinleştirmeyi işler
- Yürütme sağlayıcılarının farklı sürümlerini destekler
Çerçeveye bağımlı dağıtım
Windows ML, çerçeveye bağımlı bir bileşen olarak sunulur. Bu, uygulamanızın aşağıdakilerden birini yapması gerektiği anlamına gelir:
- Ana Windows Uygulama SDK'sı NuGet paketine başvurmak için
Microsoft.WindowsAppSDK(önerilen) bir başvuru ekleyin - Ya da hem
Microsoft.WindowsAppSDK.MLhem deMicrosoft.WindowsAppSDK.Runtime
Windows Uygulama SDK'sı uygulamalarını dağıtma hakkında daha fazla bilgi için Windows uygulamalarını paketleme ve dağıtma belgelerine bakın.
Windows ML ile ONNX Çalışma Zamanı Kullanma
C++ uygulamaları için, yürütme sağlayıcılarını kaydettikten sonra oturumlar oluşturmak ve çıkarım çalıştırmak için doğrudan ONNX Çalışma Zamanı C API'sini kullanın.
C# uygulamalarında çıkarım için Microsoft.ML.OnnxRuntime ad alanını kullanarak doğrudan ONNX Runtime'ı kullanın.
Python uygulamaları için çıkarım için ONNX Çalışma Zamanı tekerleğini onnxruntime-windowsml kullanın.
Python notları
Windows Uygulama SDK'sı başlatma
Tüm Windows ML çağrıları, Windows Uygulama SDK'sı başlatıldıktan sonra gerçekleşmelidir. Bu işlem aşağıdaki kodla yapılabilir:
from winui3.microsoft.windows.applicationmodel.dynamicdependency.bootstrap import (
InitializeOptions,
initialize
)
with initialize(options = InitializeOptions.ON_NO_MATCH_SHOW_UI):
# Your Windows ML code here
Kayıt, Windows ML dışında gerçekleşir
ONNX çalışma zamanı, Python ve yerel ortamların ayrı olduğu bir şekilde tasarlanmıştır. Ayrıca aynı işlemdeki yerel kayıt çağrıları Python ortamında çalışmaz. Bu nedenle yürütme sağlayıcılarının kaydı doğrudan Python API'siyle yapılmalıdır.
pywinrt'in paketlenmiş vcruntime'ını kaldırma
pywinrt projesi winrt-runtime paketinde bir msvcp140.dll içerir. Bu, diğer paketlerle çakışabilir. Bu sorunu önlemek için lütfen bu dll dosyasını kaldırın ve eksik vcruntime kitaplıklarını vc yeniden dağıtılabilir ile yükleyin