Phi Silica 演练

重要

Phi 硅 API 是有限访问功能的一部分(请参阅 LimitedAccessFeatures 类)。 有关详细信息或请求解锁令牌,请使用 LAF 访问令牌请求表单

此简短教程逐步讲解 适用于 .NET MAUI 的 Windows AI API 示例

注释

皮硅功能在中国不可用。

先决条件

完成 .NET MAUI 的步骤,这些步骤在开始使用 Windows AI API 构建应用程序中有所描述。

介绍

此示例演示如何使用各种 Windows AI API,包括用于文本生成的 LanguageModel ,以及用于缩放和锐化图像的 ImageScaler

此示例包含以下四个文件:

  1. MauiWindowsAISample.csproj:为 Windows AI API 添加所需的 Windows 应用 SDK 包引用,并为 Windows 设置必要的 TargetFramework
  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 LanguageModel languageModel = await LanguageModel.CreateAsync(); 
 
string prompt = "This is a large amount of text I want to have summarized.";

LanguageModelOptions options = new LanguageModelOptions {
    Skill = LanguageModelSkill.Summarize
};
 
var result = await languageModel.GenerateResponseAsync(options, prompt); 
 
Console.WriteLine(result.Text); 
using namespace winrt::Microsoft::Windows::AI::Generative;

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

std::string prompt = "This is a large amount of text I want to have summarized.";

LanguageModelOptions options = LanguageModelOptions();
options.Skill = LanguageModelSkill.Summarize;

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

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

生成和运行示例

  1. 克隆 WindowsAppSDK-Samples 存储库。
  2. 切换到“release/experimental”分支。
  3. 导航到 Samples/WindowsAIFoundry/cs-maui 文件夹。
  4. 在 Visual Studio 2022 中打开MauiWindowsAISample.sln。
  5. 确保调试工具栏已将“Windows 计算机”设置为目标设备。
  6. 按 F5 或从“调试”菜单中选择“开始调试”以运行示例(也可以通过从调试菜单或 Ctrl+F5 中选择“启动而不调试”来运行示例)。
  7. 单击其中一个“缩放”按钮缩放图像,或输入文本提示,然后单击“生成”按钮以生成文本响应。

另请参阅