Поделиться через


Руководство по созданию приложения чата с помощью Phi Silica и .NET MAUI

Это важно

API-интерфейсы Phi Silica являются частью функции ограниченного доступа (см. класс LimitedAccessFeatures). Чтобы получить дополнительную информацию или запросить маркер разблокировки, пожалуйста, используйте форму запроса маркера доступа LAF.

В этом кратком руководстве описывается пример API ИИ Windows для .NET MAUI.

Замечание

Функции Phi Silica недоступны в Китае.

Предпосылки

  • Copilot+ PC с NPU — требуется для Phi Silica. Ознакомьтесь с руководством разработчика Copilot+ PCs.
  • Windows 11 сборка 26100 или более поздняя (25H2) — проверьте с winver.
  • Режим разработчика — параметры Windows → системные → для разработчиков → режим разработчика.
  • Visual Studio 2022 с компонентом разработки приложений Windows.
  • Пакет SDK для приложений Windows 2.0.0-preview1 — установка с помощью NuGet (Microsoft.WindowsAppSDK версия 2.0.0-preview1).

Выполните действия, относящиеся к платформе для .NET MAUI, описанные в статье "Начало создания приложения с помощью API ИИ Windows".

Введение

В этом примере показано, как использовать различные API ИИ Windows, включая LanguageModel для создания текста и ImageScaler для масштабирования и отточения изображений.

Пример включает следующие четыре файла:

  1. MauiWindowsAISample.csproj: добавляет необходимую ссылку на пакет Windows App SDK для API ИИ Windows и задает необходимый targetFramework для Windows.
  2. Платформы/Windows/MainPage.cs: Реализует частичные методы общего класса MainPage для отображения и обработки функций создания текста и масштабирования изображений.
  3. MainPage.xaml: определяет элементы управления для отображения масштабирования текста и изображения.
  4. MainPage.xaml.cs: определяет частичные методы, которые реализует MainPage.cs.

Во втором файле, приведенном выше, вы найдете следующую функцию, демонстрирующую функцию сводных данных текста.

  1. Создание экземпляра LanguageModel (languageModel).
  2. Передайте этот LanguageModel конструктору TextSummarizer.
  3. Передайте некоторый текст в метод SummarizeAsync и распечатайте результат.
using Microsoft.Windows.AI; 
using Microsoft.Windows.AI.Text;
 
using LanguageModel languageModel = await LanguageModel.CreateAsync(); 
 
string inputText = "This is a large amount of text I want to have summarized.";
string prompt = $"Summarize the following text concisely:\n\n{inputText}";
 
var result = await languageModel.GenerateResponseAsync(prompt); 
 
Console.WriteLine(result.Text); 
using namespace winrt::Microsoft::Windows::AI::Text;

auto languageModel = LanguageModel::CreateAsync().get();

std::wstring inputText = L"This is a large amount of text I want to have summarized.";
std::wstring prompt = L"Summarize the following text concisely:\n\n" + inputText;

auto result = languageModel.GenerateResponseAsync(prompt).get();

std::wcout << result.Text() << std::endl;

Замечание

Перечисление LanguageModelSkill (Summarize, Rewrite) недоступно в предварительной версии пакета SDK для приложений Windows 2.0. В приведенных выше примерах используется инженерия подсказок — добавление инструкции к входному тексту для достижения того же результата. При выпуске API навыков можно заменить конструкцию запроса на new LanguageModelOptions { Skill = LanguageModelSkill.Summarize }.

Сборка и запуск примера

  1. Клонируйте репозиторий WindowsAppSDK-Samples .
  2. Перейдите в папку Samples/WindowsAIFoundry/cs-maui .
  3. Откройте MauiWindowsAISample.sln в Visual Studio 2022.
  4. Убедитесь, что панель инструментов отладки имеет "Компьютер Windows" в качестве целевого устройства.
  5. Нажмите клавишу F5 или выберите "Начать отладку" в меню отладки, чтобы запустить пример (пример также можно запустить без отладки, нажав кнопку "Начать без отладки" в меню отладки или CTRL+F5).
  6. Нажмите одну из кнопок "Масштабировать", чтобы масштабировать изображение, или введите текстовый запрос и нажмите кнопку "Создать", чтобы создать текстовый ответ.

См. также