Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O Windows ML é fornecido como parte do SDK do Aplicativo do Windows e dá suporte a dois modos de implantação: dependente de estrutura (recomendado) e autocontido. Escolha com base nos requisitos de tamanho, atualização e dependência do aplicativo.
Para saber mais sobre o Windows ML, consulte o que é o Windows ML.
Início rápido
Aqui está a breve versão de como instalar o Windows ML em seu projeto:
Para dependentes de estrutura (recomendado), instale:
- Microsoft.WindowsAppSDK.ML
- Microsoft.WindowsAppSDK.Runtime
- Em seguida, consulte Implantação para aplicativos dependentes da estrutura para saber como implantar o runtime
Para autossuficiente (aumenta o tamanho do aplicativo em aproximadamente 41 MB):
- Para aplicativos direcionados para Windows 10 Build 18362 ou superior, instale Microsoft.Windows.AI.MachineLearning
- Ou, para aplicativos direcionados para o Windows 10 Build 17763 ou superior, instale Microsoft.WindowsAppSDK.ML
- Não instale
Microsoft.WindowsAppSDK.Runtimeou o pacote principalMicrosoft.WindowsAppSDK
Para obter detalhes completos sobre cada opção, consulte as seções abaixo.
Requirements
- .NET 8 ou superior
- Identificador de estrutura de destino
net8.0-windows10.0.17763.0ou superior se estiver usando Microsoft.WindowsAppSDK.ML ou identificador de estrutura de destinonet8.0-windows10.0.18362.0ou superior se estiver usando Microsoft.Windows.AI.MachineLearning
Note
Com o .NET 6, você pode usar o Microsoft.Windows.AI.MachineLearning namespace para instalar provedores de execução, mas Microsoft.ML.OnnxRuntime as APIs não estão disponíveis. Atualize para o .NET 8 para acessar a superfície completa da API do Windows ML.
O que há no Windows ML
O Windows ML é composto por estes binários:
| Binário | Descrição | Tamanho aproximado. |
|---|---|---|
Microsoft.Windows.AI.MachineLearning.dll |
APIs do Windows ML (ExecutionProviderCatalog, etc.) |
~1 MB |
onnxruntime.dll |
O motor de execução do ONNX | ~20 MB |
DirectML.dll |
DirectML — o provedor de execução de GPU incluído | ~20 MB |
| Total | ~41 MB |
Os provedores de execução de fornecedores (QNN, VitisAI, OpenVINO, NvTensorRtRtx, MIGraphX) não fazem parte do Windows ML. Eles são obtidos separadamente — ou por meio do ExecutionProviderCatalog no tempo de execução, ou agrupados manualmente. Confira Os modelos de IA do Accelerate.
Escolhendo um modo de implantação
Ao usar o Windows ML, você pode escolher entre dois modos de implantação: dependente de estrutura (recomendado) e autocontido.
| Dependente da estrutura (recomendado) | Autossuficiente | |
|---|---|---|
| Idiomas com suporte | C#, C++/WinRT, Python | C#, C++/WinRT, C/C++ |
| Tipos de empacotamento com suporte | Desempacotado e empacotado (MSIX) | Desempacotado e empacotado (MSIX) |
| Implantação empresarial | Supported | Supported |
| Tamanho do aplicativo | Menor : binários do Windows ML são compartilhados em todo o sistema | Tamanho maior — os binários do Windows ML são incluídos com seu aplicativo (aproximadamente 41 MB) |
| Atualizações do Windows ML | Automático – os usuários recebem atualizações por meio da manutenção do SDK de Aplicativo do Windows | Manual – você envia uma nova versão quando escolhe |
| Dependência do runtime instalado | Sim — O runtime do SDK de Aplicativos do Windows deve estar presente | Não — todas as dependências estão no pacote do seu aplicativo |
| Pacote NuGet (C#/C++) | Microsoft.WindowsAppSDK.ML + Microsoft.WindowsAppSDK.Runtime |
Microsoft.Windows.AI.MachineLearning Ou Microsoft.WindowsAppSDK.ML |
| Mais adequado para | Aplicativos que exigem um tamanho mínimo de download/instalação; Envio de aplicativos pela Microsoft Store | Controlo de versões rigoroso |
Instalação dependente de framework (recomendado)
Os aplicativos dependentes da estrutura dependem do runtime do SDK do Aplicativo do Windows que está sendo instalado no computador do usuário. Consulte a arquitetura de implantação para aplicativos dependentes de framework para obter mais detalhes.
Em seu projeto, instale ou atualize os seguintes pacotes NuGet:
- Microsoft.WindowsAppSDK.ML(isso adiciona as APIs do Windows ML)
- Microsoft.WindowsAppSDK.Runtime(isso permite o modo dependente da estrutura)
Note
Como alternativa, instale/atualize o pacote NuGet principal do Microsoft.WindowsAppSDK para a versão 1.8.1 ou superior, que inclui o Windows ML e todas as outras APIs do SDK do Aplicativo Windows e usa como padrão dependente de estrutura.
Além disso, em seu .csproj arquivo, verifique se WindowsAppSDKSelfContained não está especificado (não está presente) ou false, para usar a implantação dependente da estrutura.
Por fim, consulte a arquitetura de implantação para aplicativos dependentes da estrutura para saber como implantar o runtime do SDK do Aplicativo do Windows nos dispositivos do usuário ao lado do aplicativo.
Instalação autocontida
Aplicativos independentes incorporam todos os binários do Windows ML diretamente no aplicativo. Nenhuma dependência externa de tempo de execução é necessária, mas seu aplicativo será maior. Esse é o padrão quando você faz referência a Microsoft.Windows.AI.MachineLearning ou Microsoft.WindowsAppSDK.ML sem fazer referência ao pacote principal Microsoft.WindowsAppSDK ou Microsoft.WindowsAppSDK.Runtime. Consulte o guia de implantação para aplicativos autocontidos para obter detalhes.
Em seu projeto, instale ou atualize os seguintes pacotes NuGet:
- Para aplicativos destinados a Windows 10 Build 18362 ou superior:
- Instale Microsoft.Windows.AI.MachineLearning(isso adiciona as APIs e binários do Windows ML, com padrão autodeterminado como autocontido)
- Ou, para aplicativos direcionados ao Windows 10 Build 17763 ou superior:
- Instale Microsoft.WindowsAppSDK.ML(isso adiciona as APIs e os binários do Windows ML, o padrão é autocontido e adiciona suporte ao RegFree WinRT para 17763)
- NÃO instale Microsoft.WindowsAppSDK.Runtime(isso habilitaria o modo dependente da estrutura... remova-o se você o tiver instalado no momento)
- NÃO instale o pacote NuGet Microsoft.WindowsAppSDK principal (isso habilitaria o modo dependente da estrutura... remova-o se você o tiver instalado no momento)
- Fique à vontade para instalar outros pacotes de componentes do SDK do Aplicativo Windows, como Microsoft.WindowsAppSDK.AI, desde que você não instale o Runtime ou o pacote principal.
Note
Se você precisar usar o pacote NuGet principal do Microsoft.WindowsAppSDK, atualize-o para a versão 1.8.1 ou superior, que inclui o Windows ML e todas as outras APIs do SDK do Aplicativo Windows e, no seu .csproj, defina WindowsAppSDKSelfContained para true para habilitar o modo autônomo.