Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Neste guia, abordaremos como usar as APIs do Windows ML para integrar um modelo ao seu aplicativo do Windows. Como alternativa, se você quiser usar o gerador automático de código do Windows ML, confira mlgen.
APIs importantes: Windows.AI.MachineLearning
Abordaremos os blocos de construção básicos do Windows ML, que são:
- Modelos
- Sessões
- Dispositivos
- Vínculos
Você os usará para carregar, vincular e avaliar seus modelos com o Windows ML.
Também recomendamos dar uma olhada em nossos aplicativos de exemplo no GitHub para ver exemplos de código de ML do Windows de ponta a ponta.
O vídeo a seguir mostra essas APIs em ação em uma breve demonstração.
Usando APIs WinML em C++
Embora as APIs do WinML estejam disponíveis em C++/CX e C++/WinRT, recomendamos o uso da versão C++/WinRT, pois permite uma codificação C++ mais natural e é onde a maioria dos esforços de desenvolvimento será focada no futuro. Você pode seguir as instruções abaixo que dizem respeito à sua situação específica para usar as APIs C++/WinRT:
- Se você estiver visando o Windows 1803 ou anterior, consulte Tutorial: Portar um aplicativo WinML existente para o pacote NuGet.
- Se você estiver criando um novo aplicativo C++, consulte Tutorial: Criar um aplicativo de área de trabalho do Windows Machine Learning (C++) e siga as etapas até Carregar o modelo.
- Se você tiver um aplicativo C++ existente (que ainda não está configurado para C++/WinRT), siga estas etapas para configurar seu aplicativo para C++/WinRT:
- Verifique se você tem a versão mais recente do Visual Studio 2019 instalada (qualquer edição).
- Certifique-se de que tem o SDK para Windows 10, versão 1803 ou posterior.
- Baixe e instale o C++/WinRT Visual Studio Extension (VSIX) do Visual Studio Marketplace.
- Adicione a
<CppWinRTEnabled>true</CppWinRTEnabled>propriedade ao arquivo .vcxproj do projeto:<Project ...> <PropertyGroup Label="Globals"> <CppWinRTEnabled>true</CppWinRTEnabled> ... - C++/WinRT requer recursos do padrão C++17, portanto, nas propriedades do projeto, defina C/C++ > Language > C++ Language Standard > ISO C++17 Standard (/std:c++17).
- Definir modo de conformidade: Sim (/permissive-) nas propriedades do seu projeto.
- Outra propriedade do projeto a ter em atenção é >. Defina como Sim (/WX) ou Não (/WX-) a gosto. Às vezes, os arquivos de origem gerados pela ferramenta cppwinrt.exe geram avisos até que você adicione sua implementação a eles.
- O VSIX também oferece ao utilizador a visualização de depuração nativa do Visual Studio, conhecida como "natvis", de tipos projetados em C++/WinRT, proporcionando uma experiência semelhante à depuração em C#. Natvis é automático para compilações de depuração. Você pode optar por suas compilações de lançamento definindo o símbolo WINRT_NATVIS.
- Seu projeto agora deve ser configurado para C++/WinRT. Consulte C++/WinRT para obter mais informações.
Tópicos relacionados
Observação
Use os seguintes recursos para obter ajuda com o Windows ML:
- Para fazer ou responder a perguntas técnicas sobre o Windows ML, use a tag windows-machine-learning no Stack Overflow.
- Para relatar um bug, registre um problema em nosso GitHub.