Compartilhar via


Referência de API para Phi Silica no SDK do Aplicativo Windows

Importante

Esse recurso ainda não está disponível. Espera-se que ele seja enviado em uma próxima versão de canal experimental do SDK do Aplicativo Windows.

O canal experimental do SDK do Aplicativo Windows inclui APIs e recursos em estágios iniciais de desenvolvimento. Todas as APIs no canal experimental estão sujeitas a extensas revisões e alterações interruptivas, podendo ser removidas de versões subsequentes a qualquer momento. Elas não são compatíveis com o uso em ambientes de produção e os aplicativos que usam os recursos experimentais não podem ser publicados na Microsoft Store.

Saiba mais sobre as APIs SDK do Aplicativo Windows que podem acessar modelos de idioma local, como Phi Silica, o modelo de idioma local ajustado para NPU mais poderoso da Microsoft que permite o processamento no dispositivo e a geração de chat, raciocínio sobre texto, resolução matemática, geração de código e muito mais.

Para obter mais detalhes, consulte Introdução ao Phi Silica no SDK do Aplicativo Windows.

Dica

Forneça comentários sobre essas APIs e sua funcionalidade criando um novo Problema no repositório GitHub SDK do Aplicativo Windows. (Certifique-se de incluir Phi Silica no título!)


Namespace Microsoft.Windows.AI.Generative

Fornece APIs para processamento e respostas de IA generativa local no dispositivo.

Classe ImageDescriptionGenerator

public sealed class ImageDescriptionGenerator : System.IDisposable

Método ImageDescriptionGenerator.Close

// This member is not implemented in C#

Método ImageDescriptionGenerator.CreateAsync

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

Método ImageDescriptionGenerator.DescribeAsync(Microsoft.Windows.Imaging.ImageBuffer)

public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse,string> DescribeAsync (Microsoft.Windows.Imaging.ImageBuffer image);

Método ImageDescriptionGenerator.DescribeAsync(Microsoft.Graphics.Imaging.ImageBuffer,Microsoft.Windows.AI.Generative.ImageDescriptionScenario)

public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse,string> DescribeAsync (Microsoft.Graphics.Imaging.ImageBuffer image, Microsoft.Windows.AI.Generative.ImageDescriptionScenario scenario);
Parâmetros
imagem
cenário
Devoluções
Comentários

Método ImageDescriptionGenerator.DescribeAsync(Microsoft.Graphics.Imaging.ImageBuffer)

public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse,string> DescribeAsync (Microsoft.Graphics.Imaging.ImageBuffer image);
Parâmetros
imagem
Devoluções
Comentários

Método ImageDescriptionGenerator.DescribeAsync(Microsoft.Graphics.Imaging.ImageBuffer,Microsoft.Windows.AI.Generative.ImageDescriptionScenario,Microsoft.Windows.AI.ContentModeration.ContentFilterOptions)

public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse,string> DescribeAsync (Microsoft.Graphics.Imaging.ImageBuffer image, Microsoft.Windows.AI.Generative.ImageDescriptionScenario scenario, Microsoft.Windows.AI.ContentModeration.ContentFilterOptions contentFilterOptions);
Parâmetros
imagem
cenário
opções de filtro de conteúdo
Devoluções
Comentários

Método ImageDescriptionGenerator.IsAvailable

public static bool IsAvailable ();

Método ImageDescriptionGenerator.MakeAvailableAsync

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

Classe LanguageModel

public sealed class LanguageModel : System.IDisposable

Representa um objeto que pode interagir com um modelo de linguagem local de modo a gerar respostas para uma solicitação fornecida.

Método LanguageModel.Close

Descarta o objeto e os recursos associados.

Comentários

Não implementado em C#.

Método LanguageModel.CreateAsync

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

Cria de forma assíncrona uma instância da classe LanguageModel.

Devoluções

Uma nova instância da classe TextRecognizer.

Método LanguageModel.CreateContext

public Microsoft.Windows.AI.Generative.LanguageModelContext CreateContext ();
Devoluções
Comentários

Método Microsoft.Windows.AI.Generative.LanguageModel.CreateContext(System.String,Microsoft.Windows.AI.ContentModeration.ContentFilterOptions)

public Microsoft.Windows.AI.Generative.LanguageModelContext CreateContext (string systemPrompt, Microsoft.Windows.AI.ContentModeration.ContentFilterOptions contentFilterOptions);
Parâmetros
systemPrompt
opções de filtro de conteúdo
Devoluções
Comentários

Método LanguageModel.GenerateEmbeddingVector(System.String,Microsoft.Windows.AI.ContentModeration.ContentFilterOptions)

public System.Collections.Generic.IReadOnlyList<Microsoft.Windows.SemanticSearch.EmbeddingVector> GenerateEmbeddingVector (string prompt, Microsoft.Windows.AI.ContentModeration.ContentFilterOptions contentFilterOptions);
Parâmetros
prompt
opções de filtro de conteúdo
Devoluções
Comentários

Método LanguageModel.GenerateEmbeddingVector(System.String)

public System.Collections.Generic.IReadOnlyList<Microsoft.Windows.SemanticSearch.EmbeddingVector> GenerateEmbeddingVector (string prompt);
Parâmetros
prompt
Devoluções
Comentários

Método LanguageModel.GenerateEmbeddingVectorAsync(System.String)

public Windows.Foundation.IAsyncOperation<System.Collections.Generic.IReadOnlyList<Microsoft.Windows.SemanticSearch.EmbeddingVector>> GenerateEmbeddingVectorAsync (string prompt);
Parâmetros
prompt
Devoluções
Comentários

Método LanguageModel.GenerateEmbeddingVectorAsync(System.String,Microsoft.Windows.AI.ContentModeration.ContentFilterOptions)

public Windows.Foundation.IAsyncOperation<System.Collections.Generic.IReadOnlyList<Microsoft.Windows.SemanticSearch.EmbeddingVector>> GenerateEmbeddingVectorAsync (string prompt, Microsoft.Windows.AI.ContentModeration.ContentFilterOptions contentFilterOptions);
Parâmetros
prompt
opcoesDeFiltroDeConteudo
Devoluções
Comentários

Método LanguageModel.GenerateResponseAsync(Microsoft.Windows.AI.Generative.LanguageModelOptions,System.String,Microsoft.Windows.AI.ContentModeration.ContentFilterOptions)

public Windows.Foundation.IAsyncOperation<Microsoft.Windows.AI.Generative.LanguageModelResponse> GenerateResponseAsync (Microsoft.Windows.AI.Generative.LanguageModelOptions options, string prompt, Microsoft.Windows.AI.ContentModeration.ContentFilterOptions contentFilterOptions);
Parâmetros
Opções
prompt
opçõesDeFiltroDeConteúdo
Devoluções
Comentários

Método LanguageModel.GenerateResponseAsync(System.String)

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

Gera e retorna uma resposta completa para uma única solicitação.

Parâmetros
prompt

Uma solicitação em forma de pergunta.

Devoluções

Uma sequência de resposta e status.

Exceções

ArgumentException: a solicitação especificada é maior do que o número máximo de tokens que o modelo pode aceitar.

Método LanguageModel.GenerateResponseAsync(Microsoft.Windows.AI.Generative.LanguageModelOptions,System.String,Microsoft.Windows.AI.ContentModeration.ContentFilterOptions,Microsoft.Windows.AI.Generative.LanguageModelContext)

public Windows.Foundation.IAsyncOperation<Microsoft.Windows.AI.Generative.LanguageModelResponse> GenerateResponseAsync (Microsoft.Windows.AI.Generative.LanguageModelOptions options, string prompt, Microsoft.Windows.AI.ContentModeration.ContentFilterOptions contentFilterOptions, Microsoft.Windows.AI.Generative.LanguageModelContext context);
Parâmetros
Opções
prompt
opções de filtro de conteúdo
contexto
Devoluções
Comentários

Método LanguageModel.GenerateResponseAsync(Microsoft.Windows.AI.Generative.LanguageModelOptions,System.String)

public Windows.Foundation.IAsyncOperation<Microsoft.Windows.AI.Generative.LanguageModelResponse> GenerateResponseAsync (Microsoft.Windows.AI.Generative.LanguageModelOptions options, string prompt);
Parâmetros
Opções
prompt
Devoluções
Comentários

Método LanguageModel.GenerateResponseFromEmbeddingsWithProgressAsync(Microsoft.Windows.AI.Generative.LanguageModelOptions,Windows.Foundation.Collections.IVectorView{Microsoft.Windows.SemanticSearch.EmbeddingVector},Microsoft.Windows.AI.ContentModeration.ContentFilterOptions,Microsoft.Windows.AI.Generative.LanguageModelContext)

public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse,string> GenerateResponseFromEmbeddingsWithProgressAsync (Microsoft.Windows.AI.Generative.LanguageModelOptions options, System.Collections.Generic.IReadOnlyList<Microsoft.Windows.SemanticSearch.EmbeddingVector> promptEmbedding, Microsoft.Windows.AI.ContentModeration.ContentFilterOptions contentFilterOptions, Microsoft.Windows.AI.Generative.LanguageModelContext context);
Parâmetros
Opções
promptEmbedding
opçõesDeFiltroDeConteúdo
contexto
Devoluções
Comentários

Método LanguageModel.GenerateResponseFromEmbeddingsWithProgressAsync(Microsoft.Windows.AI.Generative.LanguageModelOptions,Windows.Foundation.Collections.IVectorView{Microsoft.Windows.SemanticSearch.EmbeddingVector},Microsoft.Windows.AI.ContentModeration.ContentFilterOptions)

public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse,string> GenerateResponseFromEmbeddingsWithProgressAsync (Microsoft.Windows.AI.Generative.LanguageModelOptions options, System.Collections.Generic.IReadOnlyList<Microsoft.Windows.SemanticSearch.EmbeddingVector> promptEmbedding, Microsoft.Windows.AI.ContentModeration.ContentFilterOptions contentFilterOptions);
Parâmetros
Opções
promptEmbedding
opções de filtro de conteúdo
Devoluções
Comentários

Método LanguageModel.GenerateResponseFromEmbeddingsWithProgressAsync(Windows.Foundation.Collections.IVectorView{Microsoft.Windows.SemanticSearch.EmbeddingVector})

public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse,string> GenerateResponseFromEmbeddingsWithProgressAsync (System.Collections.Generic.IReadOnlyList<Microsoft.Windows.SemanticSearch.EmbeddingVector> promptEmbedding);
Parâmetros
promptEmbedding
Devoluções
Comentários

Método LanguageModel.GenerateResponseFromEmbeddingsWithProgressAsync(Microsoft.Windows.AI.Generative.LanguageModelOptions,Windows.Foundation.Collections.IVectorView{Microsoft.Windows.SemanticSearch.EmbeddingVector})

public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse,string> GenerateResponseFromEmbeddingsWithProgressAsync (Microsoft.Windows.AI.Generative.LanguageModelOptions options, System.Collections.Generic.IReadOnlyList<Microsoft.Windows.SemanticSearch.EmbeddingVector> promptEmbedding);
Parâmetros
Opções
promptEmbedding
Devoluções
Comentários

Método LanguageModel.GenerateResponseFromTokensWithProgressAsync(Microsoft.Windows.AI.Generative.LanguageModelOptions,Windows.Foundation.Collections.IVectorView{System.Int64})

public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse,string> GenerateResponseFromTokensWithProgressAsync (Microsoft.Windows.AI.Generative.LanguageModelOptions options, System.Collections.Generic.IReadOnlyList<long> promptTokens);
Parâmetros
Opções
promptTokens
Devoluções
Comentários

Método LanguageModel.GenerateResponseFromTokensWithProgressAsync(Microsoft.Windows.AI.Generative.LanguageModelOptions,Windows.Foundation.Collections.IVectorView{System.Int64},Microsoft.Windows.AI.ContentModeration.ContentFilterOptions,Microsoft.Windows.AI.Generative.LanguageModelContext)

public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse,string> GenerateResponseFromTokensWithProgressAsync (Microsoft.Windows.AI.Generative.LanguageModelOptions options, System.Collections.Generic.IReadOnlyList<long> promptTokens, Microsoft.Windows.AI.ContentModeration.ContentFilterOptions contentFilterOptions, Microsoft.Windows.AI.Generative.LanguageModelContext context);
Parâmetros
Opções
promptTokens
opçõesDeFiltroDeConteúdo
contexto
Devoluções
Comentários

Método LanguageModel.GenerateResponseFromTokensWithProgressAsync(Microsoft.Windows.AI.Generative.LanguageModelOptions,Windows.Foundation.Collections.IVectorView{System.Int64},Microsoft.Windows.AI.ContentModeration.ContentFilterOptions,Microsoft.Windows.AI.Generative.LanguageModelContext)

public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse,string> GenerateResponseFromTokensWithProgressAsync (Microsoft.Windows.AI.Generative.LanguageModelOptions options, System.Collections.Generic.IReadOnlyList<long> promptTokens, Microsoft.Windows.AI.ContentModeration.ContentFilterOptions contentFilterOptions, Microsoft.Windows.AI.Generative.LanguageModelContext context);
Parâmetros
Opções
promptTokens
opçõesDeFiltroDeConteúdo
contexto
Devoluções
Comentários

Método LanguageModel.GenerateResponseWithProgressAsync(System.String)

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

Gera e transmite uma resposta por meio de um manipulador de progresso. Resultados parciais podem ser recuperados enquanto a geração está em andamento.

Parâmetros
prompt

A solicitação da resposta.

Devoluções

Uma sequência de resposta e status.

O próximo token da sequência que está sendo adicionado à resposta completa à medida que o modelo a retorna; esse é o delta do conjunto LanguageModelReponse anterior como o resultado OnProgress.

Exceções

ArgumentException: a solicitação especificada é maior do que o número máximo de tokens que o modelo pode aceitar.

Comentários

Os eventos OnProgress ocorrem na geração de cada palavra na resposta.

Método LanguageModel.GenerateResponseWithProgressAsync(Microsoft.Windows.AI.Generative.LanguageModelOptions,System.String,Microsoft.Windows.AI.ContentModeration.ContentFilterOptions)

public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse,string> GenerateResponseWithProgressAsync (Microsoft.Windows.AI.Generative.LanguageModelOptions options, string prompt, Microsoft.Windows.AI.ContentModeration.ContentFilterOptions contentFilterOptions);
Parâmetros
Opções
prompt
opçõesDeFiltroDeConteúdo
Devoluções
Comentários

Método LanguageModel.GenerateResponseWithProgressAsync(Microsoft.Windows.AI.Generative.LanguageModelOptions,System.String)

public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse,string> GenerateResponseWithProgressAsync (Microsoft.Windows.AI.Generative.LanguageModelOptions options, string prompt);
Parâmetros
Opções
prompt
Devoluções
Comentários

Método LanguageModel.GenerateResponseWithProgressAsync(Microsoft.Windows.AI.Generative.LanguageModelOptions,System.String,Microsoft.Windows.AI.ContentModeration.ContentFilterOptions,Microsoft.Windows.AI.Generative.LanguageModelContext)

public Windows.Foundation.IAsyncOperationWithProgress<Microsoft.Windows.AI.Generative.LanguageModelResponse,string> GenerateResponseWithProgressAsync (Microsoft.Windows.AI.Generative.LanguageModelOptions options, string prompt, Microsoft.Windows.AI.ContentModeration.ContentFilterOptions contentFilterOptions, Microsoft.Windows.AI.Generative.LanguageModelContext context);
Parâmetros
Opções
prompt
opçõesDeFiltroDeConteúdo
contexto
Devoluções
Comentários

Método LanguageModel.GenerateTokens(System.String,Microsoft.Windows.AI.ContentModeration.ContentFilterOptions)

public System.Collections.Generic.IReadOnlyList<long> GenerateTokens (string text, Microsoft.Windows.AI.ContentModeration.ContentFilterOptions contentFilterOptions);
Parâmetros
Texto
opçõesDeFiltroDeConteúdo
Devoluções
Comentários

Método LanguageModel.GenerateTokens(System.String)

public System.Collections.Generic.IReadOnlyList<long> GenerateTokens (string text);
Parâmetros
Texto
Devoluções
Comentários

Método LanguageModel.GenerateTokensAsync(System.String)

public Windows.Foundation.IAsyncOperation<System.Collections.Generic.IReadOnlyList<long>> GenerateTokensAsync (string text);
Parâmetros
Texto
Devoluções
Comentários

Método LanguageModel.GenerateTokensAsync(System.String,Microsoft.Windows.AI.ContentModeration.ContentFilterOptions)

public Windows.Foundation.IAsyncOperation<System.Collections.Generic.IReadOnlyList<long>> GenerateTokensAsync (string text, Microsoft.Windows.AI.ContentModeration.ContentFilterOptions contentFilterOptions);
Parâmetros
Texto
opções de filtro de conteúdo
Devoluções
Comentários

Método LanguageModel.IsAvailable

public static bool IsAvailable ();

Recupera se o modelo de IA necessário está disponível.

Devoluções

Verdadeiro, se o modelo de IA necessário estiver disponível. Caso contrário, false.

Método LanguageModel.IsPromptLargerThanContext(System.String)

public bool IsPromptLargerThanContext (string prompt);
Parâmetros
prompt
Devoluções
Comentários

Método LanguageModel.IsPromptLargerThanContext(Microsoft.Windows.AI.Generative.LanguageModelContext,System.String)

public bool IsPromptLargerThanContext (Microsoft.Windows.AI.Generative.LanguageModelContext context, string prompt);
Parâmetros
contexto
prompt
Devoluções
Comentários

Método LanguageModel.MakeAvailableAsync

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

Garante que o modelo de idioma subjacente esteja instalado e disponível para uso.

Devoluções

Uma ação assíncrona com progresso que retorna um PackageDeploymentResult na conclusão.

Classe Microsoft.Windows.AI.Generative.LanguageModelContext

public sealed class LanguageModelContext

Comentários

Classe LanguageModelOptions

public sealed class LanguageModelOptions

Construtor LanguageModelOptions.#ctor

public LanguageModelOptions ();

Construtor LanguageModelOptions.#ctor(Microsoft.Windows.AI.Generative.LanguageModelSkill,System.Single,System.Single,System.UInt32)

public LanguageModelOptions (Microsoft.Windows.AI.Generative.LanguageModelSkill skill, float temp, float top_p, uint top_k);

Propriedade LanguageModelOptions.Skill

public Microsoft.Windows.AI.Generative.LanguageModelSkill Skill { get; set; }

Propriedade LanguageModelOptions.Temp

public float Temp { get; set; }

Propriedade LanguageModelOptions.Top_k

public uint Top_k { get; set; }

Propriedade Top_p de LanguageModelOptions

public float Top_p { get; set; }

Classe LanguageModelResponse

public sealed class LanguageModelResponse

Representa uma sequência de resposta e um status.

Construtor LanguageModelResponse.#ctor(System.String,Microsoft.Windows.AI.Generative.LanguageModelResponseStatus)

public LanguageModelResponse (string response, Microsoft.Windows.AI.Generative.LanguageModelResponseStatus status);
Parâmetros
resposta
status
Comentários

Propriedade LanguageModelResponse.Response

public string Response { get; }

Obtém a sequência de resposta devolvida pelo modelo de linguagem com base na solicitação fornecida.

Valor da propriedade

A sequência de resposta devolvida pelo modelo de linguagem com base na solicitação fornecida.

Propriedade LanguageModelResponse.Status

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

Obtém o status de resposta com base na solicitação fornecida.

Valor da propriedade

A sequência de resposta devolvida pelo modelo de linguagem com base na solicitação fornecida.

Comentários

Qualquer valor que não seja Succeeded ou InProgress é considerado uma falha.

Enumeração LanguageModelResponseStatus

public enum LanguageModelResponseStatus

Especifica os possíveis valores do status de resposta da solicitação fornecida.

Campos – SISTEMA OPERACIONAL

Concluído: 0

A resposta está completa.

Em progresso: 1

A resposta está em andamento.

Bloqueado pela política: 2

A resposta está bloqueada por uma configuração de política.

PromptLargerThanContext: 3
PromptBlockedByPolicy: 4
ResponseBlockedByPolicy: 5

Enumeração LanguageModelSkill

public enum LanguageModelSkill

Fields

Geral: 0
TextToTable: 1
Resumir: 2
Reescrever: 3