Sdílet prostřednictvím


Začínáme se sestavováním aplikace pomocí Umělé inteligence pro Windows APIs

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ě.

  1. Ověřte, že je vaše zařízení počítačem Copilot+ (doporučujeme zařízení uvedená v příručce pro vývojáře copilot+ počítačů).

  2. 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.winget
    

    Spustí 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í).

  1. V sadě Visual Studio vytvořte nový projekt WinUI výběrem šablony Prázdná aplikace, Zabalená (WinUI 3 v desktopové verzi).

    Snímek obrazovky s novým uživatelským rozhraním projektu sady Visual Studio s vybranou šablonou WinUI

  2. 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ší.

    Snímek obrazovky s podoknem vlastností projektu sady Visual Studio

  3. 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 systemai oboru 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 TargetDeviceFamily prvku <Dependencies> uzlu musí být alespoň 10.0.26226.0:

      <TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.17763.0" MaxVersionTested="10.0.26226.0" />
      
  4. 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>
    
  5. Klikněte pravým tlačítkem na uzel projektu a vyberte Spravovat balíčky NuGet....

  6. 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.

    Snímek obrazovky správce balíčků NuGet sady Visual Studio s vybranou možností Microsoft.WindowsAppSDK 1.8.250410001-experimental1

  7. Ujistěte se, že je vaše konfigurace sestavení nastavená na ARM64.

    Snímek obrazovky s konfigurací sestavení sady Visual Studio nastavenou na ARM64

  8. Sestavte a spusťte svou aplikaci.

  9. 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ěď.

  1. V Souboru MainWindow.xaml přidejte objekt TextBlock pro zobrazení odpovědi LanguageModel .

    <TextBlock x:Name="OutputText" HorizontalAlignment="Center" VerticalAlignment="Center" />
    
  2. Na začátek MainWindow.xaml.cs přidejte následující using Microsoft.Windows.AI direktivu.

    using Microsoft.Windows.AI; 
    
  3. 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..";
    
            if (LanguageModel.GetReadyState() == AIFeatureReadyState.EnsureNeeded)
            {
                var result = await LanguageModel.EnsureReadyAsync();
                if (result.Status != PackageDeploymentStatus.CompletedSuccess)
                {
                    throw new Exception(result.ExtendedError().Message);
                }
            }            
    
            using LanguageModel languageModel = 
               await LanguageModel.CreateAsync();
    
            string prompt = "Provide the molecular formula of glucose.";
            var result = await languageModel.GenerateResponseAsync(prompt);
            OutputText.Text = result.Response;
        }
    }
    
  4. Zkompilujte a spusťte aplikaci.

  5. 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.

Ř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 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.

Další pomoc najdete v tématu Řešení potíží s AI API pro Windows a nejčastější dotazy .

Viz také