Поделиться через


Что такое Windows ML?

Машинное обучение Windows позволяет разработчикам C#, C++/WinRT, C/C++и Python локально запускать модели ИИ ONNX на компьютерах Windows через среду выполнения ONNX с автоматическим управлением поставщиком выполнения для различных аппаратных устройств (ЦП, GPU, NPUs). Вы можете использовать модели из PyTorch, Tensorflow/Keras, TFLite, scikit-learn и других платформ с onNX Runtime.

Схема, демонстрирующая, как модель ONNX попадает в Windows ML, а затем в NPU, GPU и ЦП.

Если вы еще не знакомы со средой выполнения ONNX, рекомендуем ознакомиться с документацией по среде выполнения ONNX. Короче говоря, Windows ML предоставляет общую копию среды выполнения ONNX, а также возможность динамического скачивания поставщиков выполнения (EPS).

Ключевые преимущества

  • Общедоступная среда выполнения ONNX — необязательное общесистемное время выполнения вместо комплектования собственных, обеспечивает сокращение размера приложения
  • Динамически получайте последние поставщики выполнения - Загрузите последние исполнители, специфичные для оборудования, с одним вызовом API.
  • Загрузка и установка небольших приложений — нет необходимости переносить большие EPS и среду выполнения ONNX в приложении.
  • Широкая поддержка оборудования . Запуски на компьютерах Windows (x64 и ARM64) и Windows Server с любой конфигурацией оборудования

Системные требования

Замечание

Поддержка ЦП и GPU (через DirectML) доступна во всех поддерживаемых версиях Windows. Поставщики решений, оптимизированных производителями для NPUs и конкретного оборудования GPU, требуют Windows 11 версии 24H2 (сборка 26100) или выше. Дополнительные сведения см. в разделе "Поддерживаемые поставщики выполнения".

Что такое поставщик выполнения?

Поставщик выполнения (EP) — это компонент, который обеспечивает оптимизацию оборудования для операций машинного обучения (ML). Поставщики выполнения абстрагируют различные вычислительные подсистемы (ЦП, GPU, специализированные акселераторы) и предоставляют унифицированный интерфейс для разделения графов, регистрации ядер и выполнения операторов. Дополнительные сведения см. в документации по среде выполнения ONNX.

Здесь можно посмотреть список EP, поддерживаемых Windows ML.

Принцип работы

Windows ML включает копию среды выполнения ONNX и позволяет динамически скачивать специфические для производителя модульные исполнители (EPs), чтобы вывод модели мог быть оптимизирован на различных ЦП, GPU и NPU в экосистеме Windows.

Приобретение поставщика исполнения

  1. Обнаружение оборудования — Windows ML определяет совместимые EPs
  2. Скачивание EP — вызов API для скачивания совместимых EPs
  3. Готово к выполнению - Ваше приложение может ускорить модели ИИ с помощью EPs

Это устраняет необходимость:

  • Поставщики выполнения пакетов для определенного оборудования
  • Создание отдельных сборок приложений для разных поставщиков выполнения
  • Настраивайте обновления провайдера выполнения вручную

Замечание

Вы по-прежнему отвечаете за оптимизацию моделей для разного оборудования. Windows ML обрабатывает распределение поставщика выполнения, а не оптимизацию модели. Дополнительные сведения об оптимизации см. в статье "Набор средств ИИ" и учебники по среде выполнения ONNX .

Оптимизация производительности

Последняя версия Windows ML работает непосредственно с выделенными поставщиками вычислений для графических процессоров и NPUs, обеспечивая максимальную производительность, сравнимую с выделенными SDK прошлых лет, такими как TensorRT для RTX, AI Engine Direct и Расширение Intel для PyTorch. Мы разработали Windows ML, обеспечивая лучшую в своём классе производительность GPU и NPU, сохраняя преимущества подхода "пишется один раз, работает везде", которые предлагало предыдущее DirectML-решение.

Использование поставщиков выполнения с Windows ML

Среда выполнения Машинного обучения Windows предоставляет гибкий способ доступа к поставщикам выполнения машинного обучения (EPS), которые могут оптимизировать вывод модели машинного обучения на различных аппаратных конфигурациях. Эти EPs предоставляются как отдельные пакеты, которые можно обновлять независимо от операционной системы. Дополнительные сведения о динамической загрузке и установке EPS см. в документации по поставщикам выполнения установки .

Преобразование моделей в ONNX

Модели можно преобразовать из других форматов в ONNX, чтобы использовать их с Windows ML. Чтобы узнать больше, ознакомьтесь с документацией Visual Studio Code AI Toolkit по преобразованию моделей в формат ONNX. Дополнительные сведения о преобразовании моделей PyTorch, TensorFlow и Hugging Face в ONNX см. в руководствах по среде выполнения ONNX .

управление моделями

Windows ML предоставляет гибкие возможности для управления моделями ИИ:

  • Каталог моделей — динамическое скачивание моделей из онлайн-каталогов без объединение больших файлов
  • Локальные модели . Включение файлов моделей непосредственно в пакет приложения

Интеграция с экосистемой Windows AI

Windows ML служит основой для более широкой платформы ИИ Windows:

  • API Windows AI — встроенные модели для распространенных задач
  • Foundry Local — готовые модели ИИ
  • Пользовательские модели — прямой доступ к API машинного обучения Windows для расширенных сценариев

Предоставление отзывов

Обнаружена проблема или есть предложения? Искать или создавать задачи на GitHub Windows App SDK.

Дальнейшие шаги