Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Important
WINDOWS ML Runtime-API:et är för närvarande experimentellt och stöds inte för användning i produktionsmiljöer. Appar som testar det här API:et bör inte publiceras till Microsoft Store.
Det här avsnittet visar hur du konfigurerar ett native C++-projekt för att använda Runtime-API:et och skapa en IWinMLRuntime-instans. Fortsätt till Köra en modell med Windows ML Runtime API för modellinläsning, tensorbindning och inferens.
Prerequisites
- En Windows-version som stöds av
Microsoft.Windows.AI.MachineLearning-paketet. Se distributionskrav för Windows ML. - Visual Studio 2022 eller senare med arbetsbelastningen Desktop development with C++.
- Ett inbyggt C++-konsolprojekt.
- Den experimentella versionen
2.7.2021-experimentalav Microsoft.Windows.AI.MachineLearning NuGet-paket. - För exempelkoden på dessa sidor krävs C++20 och NuGet-paketet Microsoft.Windows.CppWinRT.
Note
C++20 och C++/WinRT är krav för dessa dokumentationsexempel, inte för Runtime-API:et. Runtime API är ett inbyggt ABI i COM-stil som också kan användas från C eller C++ med hjälp av rå COM, WRL, WIL eller någon annan COM-hjälp enligt appens språkkrav.
Cpu-körningsmålet är baslinjesökvägen. GPU- och NPU-tillgängligheten beror på enheten, plattformsfunktionerna och körningsbakändan som är installerad för din app.
Konfigurera inbyggd NuGet-återställning
Inbyggda Visual C++-projekt behöver en NuGet-målmoniker så paketåterställning väljer de inbyggda Windows-resurserna. Lägg till den här egenskapsgruppen längst upp i .vcxproj filen innan den första Microsoft.Cpp.* importen:
<PropertyGroup Label="NuGet">
<RestoreProjectStyle>PackageReference</RestoreProjectStyle>
<NuGetTargetMoniker>native,Version=v0.0</NuGetTargetMoniker>
<NuGetTargetPlatformIdentifier>Windows</NuGetTargetPlatformIdentifier>
<NuGetTargetPlatformVersion>$(WindowsTargetPlatformVersion)</NuGetTargetPlatformVersion>
</PropertyGroup>
Microsoft.Windows.AI.MachineLearning Installera paketet med hjälp av Hantera NuGet-paket eller PackageReference. Om du vill bygga exemplen på dessa sidor installerar du även Microsoft.Windows.CppWinRT och anger C++ Language Standard till ISO C++20 Standard (/std:c++20). WINDOWS ML-paketet tillhandahåller Runtime-huvuden, importbibliotek och fristående DLL:er. C++/WinRT tillhandahåller de winrt::com_ptr, winrt::check_hresult och <winrt/base.h> hjälpfunktioner som endast används av exempelkoden.
För CMake- och distributionsalternativ, se Fristående installation.
Initiera körningsmiljön
Ersätt main.cpp med följande kod:
// Copyright (C) Microsoft Corporation. All rights reserved.
#include <Windows.h>
#include <winrt/base.h>
#include <WinMLRuntime.h>
#pragma comment(lib, "windowsapp.lib")
int wmain()
{
winrt::com_ptr<IWinMLRuntime> runtime;
winrt::check_hresult(WinMLCreateRuntime(
__uuidof(IWinMLRuntime),
runtime.put_void()));
return 0;
}
Bygg för den arkitektur som matchar paketresurserna, till exempel Release|x64. Ett lyckat bygge bekräftar att NuGet-återställningen hittade Runtime-huvudena och importbiblioteket och kopierade nödvändiga DLL:er bredvid den körbara filen.