API ref for Phi Silica APIs in the Windows App SDK (Windows アプリ SDK の Phi Silica API の API リファレンス)
Windows アプリ SDK に付属する新しい 人工知能 (AI) Phi Silica API について説明します。この API は、ローカルでのチャットの処理と生成、数学の解決、コード生成、テキストの推論などのために、オンデバイス言語モデル (これまでで最も強力な NPU 調整されたローカル言語モデルである Phi Silica を含む) にアクセスするために使用できます。
詳細については、「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.Generateive.LanguageModel.GenerateResponseAsync(System.String) メソッド
public Windows.Foundation.IAsyncOperation<Microsoft.Windows.AI.Generative.LanguageModelResponse> GenerateResponseAsync (string prompt);
1 つのプロンプトに対する完全な応答を生成して返します。
パラメーター
prompt
質問の形式のプロンプト。
返品
応答文字列と状態。
例外
ArgumentException: 指定されたプロンプトが、モデルが受け入れ可能なトークンの最大数より長くなっています。
Microsoft.Windows.AI.Generateive.LanguageModel.GenerateResponseWithProgressAsync(System.String) メソッド
public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse,
string> GenerateResponseWithProgressAsync (string prompt);
進行状況ハンドラーを使用して応答を生成し、ストリーム配信します。 生成の進行中には、部分的な結果を取得できます。
パラメーター
prompt
応答のプロンプト。
返品
応答文字列と状態。
モデルが返す完全な応答に追加される文字列の次のトークン。これは、結果 OnProgress として設定された前の LanguageModelReponse からの差分です。
例外
ArgumentException: 指定されたプロンプトが、モデルが受け入れ可能なトークンの最大数より長くなっています。
解説
OnProgress イベントは、応答内の単一の単語が生成されるたびに発生します。
Microsoft.Windows.AI.Generative.LanguageModel.IsAvailable メソッド
public static bool IsAvailable ();
必要な AI モデルが使用可能かどうかを取得します。
返品
True の場合、AI モデルが利用可能です (必須の場合)。 それ以外の場合は、 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; }
指定されたプロンプトに基づいて応答の状態を取得します。
プロパティ値
指定されたプロンプトに基づいて言語モデルによって返される応答文字列。
解説
Succeeded
以外の値の場合、InProgress
はエラーと見なされます
Microsoft.Windows.AI.Generative.LanguageModelResponseStatus 列挙型
public enum LanguageModelResponseStatus
指定されたプロンプトで使用可能な応答状態の値を指定します。
列挙型フィールド
完了: 0
応答が完了しました。
InProgress: 1
応答は進行中です。
BlockedByPolicy: 2
応答はポリシー設定によってブロックされます。