Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Концептуальное руководство см. в разделе "Запуск моделей ONNX с помощью Windows ML").
API в пакете NuGet Microsoft.WindowsAppSDK.ML можно считать супермножеством этих двух наборов.
- API Машинного обучения Windows. API машинного обучения Windows в пространстве имен Microsoft.Windows.AI.MachineLearning , таких как класс ExecutionProviderCatalog и его методы (которые являются API среды выполнения Windows).
- API среды выполнения ONNX. Реализации Windows ML (в пакете NuGet Microsoft.WindowsAppSDK.ML) определённых API из среды выполнения ONNX (ORT). Для получения информации смотрите документацию по API среды выполнения ONNX. Например, структуру OrtCompileApi. Примеры кода, использующие эти API и дополнительные ссылки на документацию, см. в руководстве по использованию Windows ML для запуска руководства по модели ResNet-50 .
Пакет NuGet Microsoft.WindowsAppSDK.ML
Среда выполнения машинного обучения Microsoft Windows предоставляет API для операций машинного обучения и искусственного интеллекта в приложениях Windows. Пакет NuGet Microsoft.WindowsAppSDK.ML предоставляет файлы среды выполнения .winmd Windows ML для использования в проектах C# и C++.
Колеса Python pywinrt
Среда выполнения машинного обучения Microsoft Windows использует проект pywinrt для предоставления доступа Python к тем же API машинного обучения Windows. Имя пакета — winui3-Microsoft.Windows.AI.MachineLearning. Дополнительные пакеты необходимы для использования пакета SDK для приложений Windows в Python. Дополнительные сведения см. в разделе "Запуск моделей ONNX" с windows ML .
API Машинного обучения Windows
Справочная документация по API и примеры кода см. в пространстве имен Microsoft.Windows.AI.MachineLearning .
Windows ML Runtime, генерация текста и API распознавания речи (экспериментальные)
Сведения о сценариях на C/C++ с явной средой выполнения, конвейером, стадией и тензором см. в обзоре API среды выполнения Windows ML. Сведения о рабочих процессах более высокого уровня, состоящих из этих примитивов, см. в статье Создание текста с помощью собственной языковой модели с помощью Windows ML и Распознавание речи с помощью собственной модели Whisper с помощью Windows ML.
Эти собственные API-интерфейсы поставляются в пакете NuGet Microsoft.Windows.AI.MachineLearning. Python приложения могут использовать соответствующие windowsml.runtime и windowsml.tasks проекции.
Заметки о реализации
Среда выполнения Машинного обучения Windows интегрирована с пакетом SDK для приложений Windows и использует механизмы развертывания и начальной загрузки:
- Автоматически обнаруживает поставщики выполнения, совместимые с текущим оборудованием
- Управление временем существования пакета и обновлениями
- Обрабатывает регистрацию и активацию пакета
- Поддерживает разные версии поставщиков выполнения
Развертывание, зависящее от платформы
Windows ML поставляется в качестве зависимого от платформы компонента. Это означает, что ваше приложение должно либо:
- Ссылка на основной пакет NuGet пакета Sdk для приложений Windows, добавив ссылку на
Microsoft.WindowsAppSDK(рекомендуется) - Или, ссылайся на оба
Microsoft.WindowsAppSDK.MLиMicrosoft.WindowsAppSDK.Runtime
Дополнительные сведения о развертывании приложений пакета SDK для Приложений Windows см. в документации по пакету и развертыванию приложений Windows .
Использование среды выполнения ONNX с Windows ML
Для приложений C++ после регистрации поставщиков служб используйте ONNX Runtime C API непосредственно для создания сеансов и выполнения инференции.
Для приложений C# используйте среду выполнения ONNX непосредственно для проведения вычислений с помощью Microsoft.ML.OnnxRuntime пространства имен.
Для приложений Python используйте колесо onnxruntime-windowsml среды выполнения ONNX для вывода.
Заметки Python
Инициализация пакета SDK для приложений Windows
Все вызовы Машинного обучения Windows должны выполняться после инициализации пакета SDK для приложений Windows. Это можно сделать с помощью следующего кода:
from winui3.microsoft.windows.applicationmodel.dynamicdependency.bootstrap import (
InitializeOptions,
initialize
)
with initialize(options = InitializeOptions.ON_NO_MATCH_SHOW_UI):
# Your Windows ML code here
Регистрация происходит из Windows ML
Среда выполнения ONNX разработана таким образом, чтобы среды Python и собственные среды были разделены. Встроенные функции регистрации в том же процессе не будут работать в контексте Python. Таким образом, регистрация поставщиков выполнения должна выполняться непосредственно с ПОМОЩЬЮ API Python.
Удалите упакованный vcruntime из pywinrt
Проект pywinrt включает msvcp140.dll в пакет winrt-runtime. Это может конфликтовать с другими пакетами. Чтобы избежать этой проблемы, удалите библиотеку dll и установите отсутствующие библиотеки vcruntime с распространяемым пакетом VC.
См. также
- Запуск моделей ONNX с помощью Windows ML
- Обзор API среды выполнения машинного обучения Windows
- Создайте текст с помощью собственной языковой модели, используя Windows ML
- Распознавайте речь с помощью собственной модели Whisper с помощью Windows ML
- Документация по пакету SDK для приложений Windows
- Пакет SDK для приложений Windows на GitHub
- Примеры Windows ML
- Документация по API среды выполнения ONNX
- Упаковка и развертывание приложений Windows