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.
Přečtěte si o hardwarových požadavcích Windows AI API a o tom, jak nakonfigurovat vaše zařízení k úspěšnému vytváření aplikací pomocí Windows AI APIs.
Závislosti
Ujistěte se, že váš počítač podporuje AI APIs systému Windows a že jsou nainstalované všechny závislosti. Můžete to provést automaticky (doporučeno) nebo ručně.
Ověřte, že vaše zařízení splňuje hardwarové požadavky na Windows AI APIs, které plánujete použít. Většina APIs vyžaduje Copilot+ PC s NPU (doporučujeme zařízení uvedená v příručce pro vývojáře Copilot+ PCs). Některé APIs podporují také spouštění GPU nebo procesoru na jiných zařízeních než Copilot+ – podrobnosti najdete v podporované hardwarové tabulce.
V terminálu Windows spusťte následující příkaz.
winget configure https://raw.githubusercontent.com/microsoft/winget-dsc/refs/heads/main/samples/Configuration%20files/Learn%20tutorials/Windows%20AI/learn_wcr.wingetSpustí se konfigurační soubor WinGet , který provádí následující úlohy:
- Kontroluje minimální verzi operačního systému.
- Povolí vývojářský režim.
- Nainstaluje Visual Studio Community Edition s WinUI a dalšími požadovanými úlohami.
- Nainstaluje Windows App SDK.
Vytvoření nové aplikace
Následující kroky popisují, jak vytvořit aplikaci, která používá AI APIs pro Windows (vyberte kartu pro preferovanou architekturu uživatelského rozhraní).
- WinUI
- WPF (Windows Presentation Foundation)
- Formuláře WinForms
- .NET MAUI
V sadě Visual Studio vytvořte nový projekt WinUI výběrem šablony Prázdná aplikace, Zabalená (WinUI 3 v desktopové verzi).
V Průzkumníku řešení klikněte pravým tlačítkem na uzel projektu, vyberteObecné>> a ujistěte se, že je cílová architektura nastavená na .NET 8.0 a cílový operační systém je nastavený na 10.0.22621 nebo novější.
Upravte soubor Package.appxmanifest (klikněte pravým tlačítkem myši a vyberte Zobrazit kód) a přidejte následující fragmenty kódu.
Funkce
systemAIModels<Capabilities>uzlu:<Capabilities> <systemai:Capability Name="systemAIModels"/> </Capabilities>Specifikátor
systemaioboru názvů "IgnorableNamespaces" v<Package>uzlu:xmlns:systemai="http://schemas.microsoft.com/appx/manifest/systemai/windows10" IgnorableNamespaces="uap rescap systemai"Maximální verze testovaná v
TargetDeviceFamilyprvku<Dependencies>uzlu musí být alespoň 10.0.26226.0:<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.17763.0" MaxVersionTested="10.0.26226.0" />
Do souboru .waproj, .csproj nebo .vcxproj přidejte následující kód. Tento krok je nezbytný k tomu, aby visual Studio nepřepsal maximální testovanou verzi.
<AppxOSMinVersionReplaceManifestVersion>false</AppxOSMinVersionReplaceManifestVersion> <AppxOSMaxVersionTestedReplaceManifestVersion>false</AppxOSMaxVersionTestedReplaceManifestVersion>Klikněte pravým tlačítkem na uzel projektu a vyberte Spravovat balíčky NuGet....
Ve Správci balíčků NuGet zaškrtněte políčko Zahrnout předběžné verze a vyberte sadu Windows App SDK verze 1.8.250410001-experimental1. Klikněte na Nainstalovat nebo Aktualizovat.
Ujistěte se, že je vaše konfigurace sestavení nastavená na odpovídající architekturu pro vaše zařízení (například ARM64 nebo x64).
Sestavte a spusťte svou aplikaci.
Pokud se aplikace úspěšně spustí, pokračujte přidáním první umělé inteligence API. V opačném případě se podívejte na téma Řešení potíží.
Přidání první umělé inteligence API
Při implementaci funkce pomocí Umělé inteligence APIssystému Windows by vaše aplikace měla nejprve zkontrolovat dostupnost modelu AI, který tuto funkci podporuje.
Následující fragment kódu ukazuje, jak zkontrolovat dostupnost modelu a vygenerovat odpověď.
- WinUI
- WPF (Windows Presentation Foundation)
- Formuláře WinForms
- .NET MAUI
V Souboru MainWindow.xaml přidejte objekt TextBlock pro zobrazení odpovědi LanguageModel .
<TextBlock x:Name="OutputText" HorizontalAlignment="Center" VerticalAlignment="Center" />Do horní části MainWindow.xaml.cs přidejte následující
using Microsoft.Windows.AIausing Microsoft.Windows.AI.Textdirektivy.using Microsoft.Windows.AI; using Microsoft.Windows.AI.Text;V
MainWindow.xaml.cs, nahraďte třídu MainWindow následujícím kódem, který potvrzuje, že LanguageModel je k dispozici, a pak odešle žádost pro model o odpověď s molekulárním vzorcem glukózy.public sealed partial class MainWindow : Window { public MainWindow() { this.InitializeComponent(); InitAI(); } private async void InitAI() { OutputText.Text = "Loading.."; var readyState = LanguageModel.GetReadyState(); if (readyState == AIFeatureReadyState.NotReady) { var ensureResult = await LanguageModel.EnsureReadyAsync(); if (ensureResult.Status != AIFeatureReadyResultState.Success) { throw ensureResult.ExtendedError; } readyState = LanguageModel.GetReadyState(); } if (readyState != AIFeatureReadyState.Ready) { throw new Exception($"LanguageModel is unavailable: {readyState}"); } using LanguageModel languageModel = await LanguageModel.CreateAsync(); string prompt = "Provide the molecular formula of glucose."; var result = await languageModel.GenerateResponseAsync(prompt); OutputText.Text = result.Text; } }Zkompilujte a spusťte aplikaci.
Vzorec pro glukózu by se měl objevit v bloku textu.
Pokročilé kurzy a APIs
Teď, když jste úspěšně zkontrolovali dostupnost modelu, prozkoumejte APIs v různých kurzech Windows AI API.
- Další informace o dostupné umělé inteligenci pro Windows APIs
- Phi Silica: Kompletní návodAPI
- Návod k rozpoznávání API textu
- Návod k vytváření obrázků API
Řešení problémů
Pokud dojde k nějakým chybám, důvodem je obvykle váš hardware nebo absence požadovaného modelu.
- Metoda GetReadyState zkontroluje, zda je model vyžadovaný funkcí AI k dispozici na zařízení uživatele. Tuto metodu je nutné volat před jakýmkoli voláním modelu.
- Pokud model není na zařízení uživatele dostupný, můžete volat metodu EnsureReadyAsync a nainstalovat požadovaný model. Instalace modelu běží na pozadí a uživatel může zkontrolovat průběh instalace na stránce Nastavení>windows služba Windows Update .
- Metoda EnsureReadyAsync má možnost stavu, která může zobrazit uživatelské rozhraní načítání. Pokud má uživatel nepodporovaný hardware, pak dojde k selhání funkce EnsureReadyAsync s chybou.
Zjistit podporu hardwaru za běhu
Windows AI APIs fungují na široké škále hardwaru (NPU, GPU, CPU) a ne každý API je podporován na každém zařízení. Aplikace by před provedením jakékoli činnosti, včetně zobrazení uživatelského rozhraní závislého na dané funkcionalitě, měla svůj další postup podmínit výsledkem volání GetReadyState:
AIFeatureReadyState |
Co to znamená | Co má vaše aplikace dělat |
|---|---|---|
Ready |
Model je nainstalován a zařízení podporuje API. | Zavolejte na API. |
NotReady |
Zařízení podporuje API, ale model je potřeba stáhnout nebo připravit. | Zobrazí dialogové okno pro vyjádření souhlasu s vysvětlením stahování (velikost, využití sítě) a potom zavolá metodu EnsureReadyAsync a oznámí průběh zprávy uživateli. |
DisabledByUser |
Uživatel zakázal požadovanou komponentu AI. | Požádejte uživatele, aby povolil komponentu v nastavení Windows, nebo tuto funkci skryje nebo zakáže. |
NotSupportedOnCurrentSystem |
Zařízení nemůže spustit tento API (nekompatibilní hardware, chybějící ovladače nebo zásady). | Nevolejte metodu EnsureReadyAsync. Skryjte nebo zakažte tuto funkci nebo se vraťte k alternativní implementaci (například ke cloudové službě AI). |
Kompletní příklad zahrnující všechny tři větve (včetně uživatelského okna souhlasu) najdete v tématu Phi Silica → doporučený vzor uživatelského rozhraní. Stejný vzor platí pro každý Windows AI API, který zveřejňuje GetReadyState.
Poznámka:
Pro APIs, které mají doporučené požadavky na procesor (například VSR), GetReadyState samo o sobě nestačí.
GetReadyState Jenom vám řekne, jestli API je podporovaná. Kontrola specifikace procesoru vám řekne, jestli bude fungovat dostatečně dobře pro vaše uživatelské prostředí. Použijte obojí: dostupnost brány s GetReadyState a možnosti kvality brány s kontrolou CPU.
Další pomoc najdete v tématu Řešení potíží s AI API pro Windows a nejčastější dotazy .