RoutingChatClient Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Fornece um modelo que IChatClient seleciona e invoca outro cliente de chat.
public ref class RoutingChatClient abstract : IDisposable, Microsoft::Extensions::AI::IChatClient
[System.Diagnostics.CodeAnalysis.Experimental("MEAI001", UrlFormat="https://aka.ms/dotnet-extensions-warnings/{0}")]
public abstract class RoutingChatClient : IDisposable, Microsoft.Extensions.AI.IChatClient
[<System.Diagnostics.CodeAnalysis.Experimental("MEAI001", UrlFormat="https://aka.ms/dotnet-extensions-warnings/{0}")>]
type RoutingChatClient = class
interface IChatClient
interface IDisposable
Public MustInherit Class RoutingChatClient
Implements IChatClient, IDisposable
- Herança
-
RoutingChatClient
- Derivado
- Atributos
- Implementações
Observações
As classes derivadas são implementadas SelectClientAsync(RoutingContext, CancellationToken) para fornecer um cliente para cada pedido. O cliente selecionado é invocado uma vez, e a sua resposta ou falha é propagada ao chamador. A instância exata do cliente representa a identidade de encaminhamento selecionada. As opções fornecidas pelo chamador podem variar consoante a invocação, mas são efémeras e não participam nessa identidade. As aplicações podem usar wrappers de cliente configurados distintos quando as configurações requerem identidades de encaminhamento distintas, enquanto as políticas personalizadas podem manter chaves de agrupamento específicas de cada aplicação.
ChatOptions detém as opções para o pedido e é o que o cliente selecionado recebe. As opções que pertencem a uma determinada rota são configuradas no cliente, normalmente com um ConfigureOptionsChatClient wrapper, que clona as opções de pedido e aplica os próprios valores da rota por cima delas.
Construtores
| Name | Descrição |
|---|---|
| RoutingChatClient() |
Fornece um modelo que IChatClient seleciona e invoca outro cliente de chat. |
Métodos
| Name | Descrição |
|---|---|
| Create(Func<RoutingContext,CancellationToken,ValueTask<IChatClient>>) |
Cria um cliente de roteamento que seleciona um cliente para cada pedido. |
| Dispose() |
Realiza tarefas definidas pela aplicação associadas à libertação, libertação ou reinício de recursos não geridos. |
| Dispose(Boolean) |
Fornece um mecanismo para libertar recursos pertencentes à instância derivada. |
| GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken) |
Envia mensagens no chat e responde. |
| GetService(Type, Object) |
Pergunta a IChatClient um objeto do tipo |
| GetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken) |
Envia mensagens no chat e transmite a resposta em streaming. |
| SelectClientAsync(RoutingContext, CancellationToken) |
Seleciona o cliente a invocar para o pedido. |