Compartilhar via


O que é o Windows ML?

O Windows Machine Learning (ML) permite que desenvolvedores C#, C++e Python executem modelos de IA ONNX localmente em computadores Windows por meio do ONNX Runtime, com gerenciamento automático do provedor de execução para diferentes hardwares (CPUs, GPUs, NPUs). O ONNX Runtime pode ser usado com modelos de PyTorch, Tensorflow/Keras, TFLite, scikit-learn e outras estruturas.

Um diagrama ilustrando um modelo ONNX passando pelo Windows ML para alcançar NPUs, GPUs e CPUs.

Se você ainda não estiver familiarizado com o ONNX Runtime, sugerimos ler os documentos do ONNX Runtime. Em suma, o Windows ML fornece uma cópia compartilhada em todo o Windows do ONNX Runtime, além da capacidade de baixar dinamicamente provedores de execução (EPs).

Principais benefícios

  • Obter dinamicamente os EPs mais recentes – baixa e gerencia automaticamente os provedores de execução mais recentes específicos do hardware
  • ONNX Runtime compartilhado – usa o runtime disponível no sistema em vez de incluir o seu próprio, o que reduz o tamanho do aplicativo
  • Downloads/instalações menores – não é necessário carregar grandes EPs e o ONNX Runtime em seu aplicativo
  • Amplo suporte a hardware – Execuções em computadores Windows (x64 e ARM64) e Windows Server com qualquer configuração de hardware

Requisitos do sistema

O que é um provedor de execução?

Um EP (provedor de execução) é um componente que permite otimizações específicas de hardware para operações de ML (machine learning). Os provedores de execução abstraem diferentes back-ends de computação (CPU, GPU, aceleradores especializados) e fornecem uma interface unificada para particionamento de grafo, registro de kernel e execução do operador. Para saber mais, confira os documentos do ONNX Runtime.

Você pode ver a lista de EPs compatíveis com o Windows ML aqui.

Como funciona

O Windows ML inclui uma cópia do ONNX Runtime e permite que você baixe dinamicamente provedores de execução específicos do fornecedor (EPs), para que sua inferência de modelo possa ser otimizada em toda a variedade de CPUs, GPUs e NPUs no ecossistema do Windows.

Implantação automática

  1. Instalação do aplicativo – O carregador de inicialização do SDK de Aplicativos do Windows inicializa o Windows ML
  2. Detecção de hardware – o runtime identifica os processadores disponíveis
  3. Download de EP – baixa automaticamente os provedores de execução ideais
  4. Pronto para execução – seu aplicativo pode usar imediatamente modelos de IA

Isso elimina a necessidade de:

  • Provedores de execução de pacote para fornecedores de hardware específicos
  • Criar compilações de aplicativos separadas para diferentes provedores de execução
  • Gerenciar atualizações do provedor de execução manualmente

Observação

Você ainda é responsável por otimizar seus modelos para hardwares diferentes. O Windows ML manipula a distribuição do provedor de execução, não a otimização do modelo. Consulte o Kit de Ferramentas de IA e os Tutoriais de Runtime do ONNX para obter mais informações sobre otimização.

Otimização de desempenho

A versão mais recente do Windows ML funciona diretamente com provedores de execução dedicados para GPUs e NPUs, fornecendo um desempenho otimizado para hardware que é comparável aos SDKs dedicados do passado, como TensorRT para RTX, AI Engine Direct e a Extensão da Intel para PyTorch. Desenvolvemos o Windows ML para ter o melhor desempenho de GPU e NPU da categoria, enquanto mantemos os benefícios de escrever uma vez e executar em qualquer lugar que a solução anterior baseada em DirectML oferecia.

Usando provedores de execução com o Windows ML

O runtime do Windows ML fornece uma maneira flexível de acessar EPs (provedores de execução) de machine learning (ML), que podem otimizar a inferência do modelo de ML em diferentes configurações de hardware. Esses EPs são distribuídos como pacotes separados que podem ser atualizados independentemente do sistema operacional. Consulte a documentação inicializar provedores de execução com o Windows ML para obter mais informações sobre o download e registro dinâmico de EPs.

Convertendo modelos em ONNX

Você pode converter modelos de outros formatos em ONNX para que você possa usá-los com o Windows ML. Consulte os documentos do Kit de Ferramentas de IA do Visual Studio Code sobre como converter modelos no formato ONNX para saber mais. Consulte também os Tutoriais de Runtime do ONNX para obter mais informações sobre como converter modelos PyTorch, TensorFlow e Hugging Face em ONNX.

Gerenciamento de modelos

O Windows ML fornece opções flexíveis para gerenciar modelos de IA:

  • Catálogo de Modelos – Baixar dinamicamente modelos de catálogos online sem agrupar arquivos grandes
  • Modelos locais – Incluir arquivos de modelo diretamente em seu pacote de aplicativos

Integração com o ecossistema de IA do Windows

O Windows ML serve como base para a plataforma de IA do Windows mais ampla:

  • APIs de IA do Windows – modelos internos para tarefas comuns
  • Foundry Local – Modelos de IA prontos para uso
  • Modelos personalizados – Acesso direto à API do Windows ML para cenários avançados

Fornecendo comentários

Encontrou um problema ou tem sugestões? Pesquise ou crie problemas no GitHub do SDK de Aplicativos do Windows.

Próximas etapas