重要
Phi 硅 API 是有限访问功能的一部分(请参阅 LimitedAccessFeatures 类)。 有关详细信息或请求解锁令牌,请使用 LAF 访问令牌请求表单。
此简短教程逐步讲解 适用于 .NET MAUI 的 Windows AI API 示例。
注释
皮硅功能在中国不可用。
先决条件
完成 .NET MAUI 的步骤,这些步骤在开始使用 Windows AI API 构建应用程序中有所描述。
介绍
此示例演示如何使用各种 Windows AI API,包括用于文本生成的 LanguageModel ,以及用于缩放和锐化图像的 ImageScaler 。
此示例包含以下四个文件:
- MauiWindowsAISample.csproj:为 Windows AI API 添加所需的 Windows 应用 SDK 包引用,并为 Windows 设置必要的 TargetFramework 。
- 平台/Windows/MainPage.cs:实现共享 MainPage 类中的分部方法,用于显示和处理文本生成和图像缩放功能。
- MainPage.xaml:定义用于显示文本生成和图像缩放的控件。
- MainPage.xaml.cs:定义MainPage.cs实现的部分方法。
在上面列出的第二个文件中,你将找到以下函数,该函数演示文本摘要功能。
- 创建 LanguageModel 实例 (
languageModel)。 - 将 LanguageModel 传递给 TextSummarizer 构造函数。
- 将一些文本传递给 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;
生成和运行示例
- 克隆 WindowsAppSDK-Samples 存储库。
- 切换到“release/experimental”分支。
- 导航到 Samples/WindowsAIFoundry/cs-maui 文件夹。
- 在 Visual Studio 2022 中打开MauiWindowsAISample.sln。
- 确保调试工具栏已将“Windows 计算机”设置为目标设备。
- 按 F5 或从“调试”菜单中选择“开始调试”以运行示例(也可以通过从调试菜单或 Ctrl+F5 中选择“启动而不调试”来运行示例)。
- 单击其中一个“缩放”按钮缩放图像,或输入文本提示,然后单击“生成”按钮以生成文本响应。