Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Important
Rozhraní API modulu Windows ML Runtime je v současné době experimentální a není podporováno pro použití v produkčních prostředích. Aplikace, které toto rozhraní API testují, by se neměly publikovat do Microsoft Store.
V tomto tématu se dozvíte, jak nakonfigurovat nativní projekt C++ tak, aby používal rozhraní Runtime API a vytvořit instanci IWinMLRuntime. Pokračujte na Spuštění modelu pomocí rozhraní API modulu Windows ML Runtime pro načítání modelů, vazbu tensoru a odvozování.
Prerequisites
- Verze Windows podporovaná balíčkem
Microsoft.Windows.AI.MachineLearning. Viz požadavky na nasazení Windows ML. - Visual Studio 2022 nebo novější s úlohou Desktop development with C++.
- Nativní konzolový projekt v C++.
-
Experimentální verze
2.7.2021-experimentalbalíčku NuGet Microsoft.Windows.AI.MachineLearning. - Ukázkový kód na těchto stránkách vyžaduje C++20 a balíček NuGet Microsoft.Windows.CppWinRT.
Note
C++20 a C++/WinRT jsou požadavky těchto ukázek dokumentace, nikoli rozhraní API běhového prostředí. Runtime API je nativní rozhraní ABI ve stylu modelu COM, které je možné využívat také z C nebo C++ pomocí nezpracovaného modelu COM, knihovny WRL, WIL nebo jiného pomocníka modelu COM v závislosti na jazykových požadavcích dané aplikace.
Cíl spuštění CPU je výchozí cesta. Dostupnost GPU a NPU závisí na zařízení, možnostech platformy a back-endu spouštění nainstalovaném pro vaši aplikaci.
Konfigurace nativního obnovení NuGetu
Nativní projekty Visual C++ potřebují cílový identifikátor NuGet, takže obnovení balíčků vybere nativní prostředky systému Windows. Tuto skupinu vlastností přidejte do horní části souboru Microsoft.Cpp.* před prvním importem .vcxproj.
<PropertyGroup Label="NuGet">
<RestoreProjectStyle>PackageReference</RestoreProjectStyle>
<NuGetTargetMoniker>native,Version=v0.0</NuGetTargetMoniker>
<NuGetTargetPlatformIdentifier>Windows</NuGetTargetPlatformIdentifier>
<NuGetTargetPlatformVersion>$(WindowsTargetPlatformVersion)</NuGetTargetPlatformVersion>
</PropertyGroup>
Microsoft.Windows.AI.MachineLearning Nainstalujte balíček pomocí Spravovat balíčky NuGet nebo PackageReference. Pokud chcete vytvořit ukázky na těchto stránkách, nainstalujte Microsoft.Windows.CppWinRT a nastavte také Standard jazyka C++ na ISO C++20 Standard (/std:c++20). Balíček Windows ML poskytuje hlavičky modulu runtime, knihovny importu a samostatné knihovny DLL; C++/WinRT poskytuje prvky winrt::com_ptr, winrt::check_hresult a <winrt/base.h> používané pouze ve vzorovém kódu.
Informace o možnostech CMake a nasazení najdete v tématu Kompletní instalace.
Inicializujte Runtime
Nahraďte main.cpp následujícím kódem:
// 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;
}
Sestavení pro architekturu, která odpovídá prostředkům balíčku, například Release|x64. Úspěšné sestavení potvrdí, že operace NuGet restore našla hlavičkové soubory modulu Runtime a importní knihovnu a zkopírovala požadované knihovny DLL vedle spustitelného souboru.