Windows 应用 SDK 中 Phi Silica API 的 API 引用

了解 Windows 应用 SDK 附带的新人工智能 (AI) Phi Silica API,这些 API 可用于访问设备上的语言模型(包括 Phi Silica,我们迄今功能最强大的 NPU 优化的本地语言模型),从而执行本地处理和聊天生成、数学求解、代码生成、文本推理等任务。

有关更多详细信息,请参阅 Windows 应用 SDK 中的 Phi Silica

重要

Windows 应用 SDK 试验通道包括早期开发阶段中的 API 和功能。 试验通道中的所有 API 都可能经过大量修订和中断性变更,并且随时可从后续版本中删除。 不支持在生产环境中使用这些通道,并且无法将使用试验功能的应用发布到 Microsoft Store。


Microsoft.Windows.AI.Generative 命名空间

提供用于本地、设备上的生成式 AI 提示处理和响应的 API。

Microsoft.Windows.AI.Generative.LanguageModel 类

public sealed class LanguageModel : System.IDisposable

表示可与本地语言模型交互的对象,以便为提供的提示生成响应。

Microsoft.Windows.AI.Generative.LanguageModel.Close 方法

释放对象和关联的资源。

注解

未在 C# 中实现。

Microsoft.Windows.AI.Generative.LanguageModel.CreateAsync 方法

public static Windows.Foundation.IAsyncOperation<Microsoft.Windows.AI.Generative.LanguageModel> CreateAsync ();

异步创建 LanguageModel 类的新实例。

返回

TextRecognizer 类的新实例。

Microsoft.Windows.AI.Generative.LanguageModel.GenerateResponseAsync(System.String) 方法

public Windows.Foundation.IAsyncOperation<Microsoft.Windows.AI.Generative.LanguageModelResponse> GenerateResponseAsync (string prompt);

生成并返回单个提示的完整响应。

参数
prompt

以问题形式显示的提示。

返回

响应字符串和状态。

异常

ArgumentException:指定的提示长于模型可以接受的最大 token 数。

Microsoft.Windows.AI.Generative.LanguageModel.GenerateResponseWithProgressAsync(System.String) 方法

public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse, 
string> GenerateResponseWithProgressAsync (string prompt);

通过进度处理程序生成和流式传输响应。 可以在生成过程中检索部分结果。

参数
prompt

响应的提示。

返回

响应字符串和状态。

在模型返回时,添加到完整响应的字符串的下一个 token,它是上一个设置为结果 OnProgress 的 LanguageModelReponse 的增量。

异常

ArgumentException:指定的提示长于模型可以接受的最大 token 数。

注解

OnProgress 事件在响应中每一个单词生成时发生。

Microsoft.Windows.AI.Generative.LanguageModel.IsAvailable 方法

public static bool IsAvailable ();

检索所需的 AI 模型是否可用。

返回

如果所需的 AI 模型可用,则为 true。 否则为 false。

Microsoft.Windows.AI.Generative.LanguageModel.MakeAvailableAsync 方法

public static Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.Management.Deployment.PackageDeploymentResult, 
Microsoft.Windows.Management.Deployment.PackageDeploymentProgress> MakeAvailableAsync ();

请确保已安装底层语言模型并可供使用。

返回

具有进度的异步操作,该操作在完成时返回 PackageDeploymentResult

Microsoft.Windows.AI.Generative.LanguageModelResponse 类

public sealed class LanguageModelResponse

表示响应字符串和状态。

Microsoft.Windows.AI.Generative.LanguageModelResponse.Response 属性

public string Response { get; }

获取语言模型根据提供的提示返回的响应字符串。

属性值

语言模型根据提供的提示返回的响应字符串。

Microsoft.Windows.AI.Generative.LanguageModelResponse.Status 属性

public Microsoft.Windows.AI.Generative.LanguageModelResponseStatus Status { get; }

根据提供的提示获取响应状态。

属性值

语言模型根据提供的提示返回的响应字符串。

注解

SucceededInProgress 之外的任何值被视为失败。

Microsoft.Windows.AI.Generative.LanguageModelResponseStatus 枚举

public enum LanguageModelResponseStatus

为提供的提示提供可能的响应状态值。

枚举字段

Complete:0

响应完成。

InProgress:1

响应正在进行中。

BlockedByPolicy:2

响应被策略设置阻止。