ChatClientBuilder.Use Método

Definição

Adiciona uma fábrica para um cliente de chat intermédio ao pipeline do cliente de chat.

Sobrecargas

Name Descrição
Use(Func<IChatClient,IChatClient>)

Adiciona uma fábrica para um cliente de chat intermédio ao pipeline do cliente de chat.

Use(Func<IChatClient,IServiceProvider,IChatClient>)

Adiciona uma fábrica para um cliente de chat intermédio ao pipeline do cliente de chat.

Use(Func<IEnumerable<ChatMessage>,ChatOptions,Func<IEnumerable<ChatMessage>,ChatOptions,CancellationToken,Task>,CancellationToken,Task>)

Adiciona ao pipeline do cliente de chat um cliente de chat anónimo de delegação baseado num delegado que fornece uma implementação para ambos GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken) , e GetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)para .

Use(Func<IEnumerable<ChatMessage>,ChatOptions,IChatClient,CancellationToken, Task<ChatResponse>>, Func<IEnumerable<ChatMessage>,ChatOptions, IChatClient,CancellationToken,IAsyncEnumerable<ChatResponseUpdate>>)

Adiciona ao pipeline do cliente de chat um cliente de chat anónimo de delegação baseado num delegado que fornece uma implementação para ambos GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken) , e GetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)para .

Use(Func<IChatClient,IChatClient>)

Origem:
ChatClientBuilder.cs

Adiciona uma fábrica para um cliente de chat intermédio ao pipeline do cliente de chat.

public:
 Microsoft::Extensions::AI::ChatClientBuilder ^ Use(Func<Microsoft::Extensions::AI::IChatClient ^, Microsoft::Extensions::AI::IChatClient ^> ^ clientFactory);
public Microsoft.Extensions.AI.ChatClientBuilder Use(Func<Microsoft.Extensions.AI.IChatClient,Microsoft.Extensions.AI.IChatClient> clientFactory);
member this.Use : Func<Microsoft.Extensions.AI.IChatClient, Microsoft.Extensions.AI.IChatClient> -> Microsoft.Extensions.AI.ChatClientBuilder
Public Function Use (clientFactory As Func(Of IChatClient, IChatClient)) As ChatClientBuilder

Parâmetros

clientFactory
Func<IChatClient,IChatClient>

A função de fábrica do cliente.

Devoluções

A instância atualizada ChatClientBuilder .

Exceções

clientFactory é null.

Ver também

Aplica-se a

Use(Func<IChatClient,IServiceProvider,IChatClient>)

Origem:
ChatClientBuilder.cs

Adiciona uma fábrica para um cliente de chat intermédio ao pipeline do cliente de chat.

public:
 Microsoft::Extensions::AI::ChatClientBuilder ^ Use(Func<Microsoft::Extensions::AI::IChatClient ^, IServiceProvider ^, Microsoft::Extensions::AI::IChatClient ^> ^ clientFactory);
public Microsoft.Extensions.AI.ChatClientBuilder Use(Func<Microsoft.Extensions.AI.IChatClient,IServiceProvider,Microsoft.Extensions.AI.IChatClient> clientFactory);
member this.Use : Func<Microsoft.Extensions.AI.IChatClient, IServiceProvider, Microsoft.Extensions.AI.IChatClient> -> Microsoft.Extensions.AI.ChatClientBuilder
Public Function Use (clientFactory As Func(Of IChatClient, IServiceProvider, IChatClient)) As ChatClientBuilder

Parâmetros

clientFactory
Func<IChatClient,IServiceProvider,IChatClient>

A função de fábrica do cliente.

Devoluções

A instância atualizada ChatClientBuilder .

Exceções

clientFactory é null.

Ver também

Aplica-se a

Use(Func<IEnumerable<ChatMessage>,ChatOptions,Func<IEnumerable<ChatMessage>,ChatOptions,CancellationToken,Task>,CancellationToken,Task>)

Origem:
ChatClientBuilder.cs

Adiciona ao pipeline do cliente de chat um cliente de chat anónimo de delegação baseado num delegado que fornece uma implementação para ambos GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken) , e GetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)para .

public:
 Microsoft::Extensions::AI::ChatClientBuilder ^ Use(Func<System::Collections::Generic::IEnumerable<Microsoft::Extensions::AI::ChatMessage ^> ^, Microsoft::Extensions::AI::ChatOptions ^, Func<System::Collections::Generic::IEnumerable<Microsoft::Extensions::AI::ChatMessage ^> ^, Microsoft::Extensions::AI::ChatOptions ^, System::Threading::CancellationToken, System::Threading::Tasks::Task ^> ^, System::Threading::CancellationToken, System::Threading::Tasks::Task ^> ^ sharedFunc);
public Microsoft.Extensions.AI.ChatClientBuilder Use(Func<System.Collections.Generic.IEnumerable<Microsoft.Extensions.AI.ChatMessage>,Microsoft.Extensions.AI.ChatOptions?,Func<System.Collections.Generic.IEnumerable<Microsoft.Extensions.AI.ChatMessage>,Microsoft.Extensions.AI.ChatOptions?,System.Threading.CancellationToken,System.Threading.Tasks.Task>,System.Threading.CancellationToken,System.Threading.Tasks.Task> sharedFunc);
member this.Use : Func<seq<Microsoft.Extensions.AI.ChatMessage>, Microsoft.Extensions.AI.ChatOptions, Func<seq<Microsoft.Extensions.AI.ChatMessage>, Microsoft.Extensions.AI.ChatOptions, System.Threading.CancellationToken, System.Threading.Tasks.Task>, System.Threading.CancellationToken, System.Threading.Tasks.Task> -> Microsoft.Extensions.AI.ChatClientBuilder
Public Function Use (sharedFunc As Func(Of IEnumerable(Of ChatMessage), ChatOptions, Func(Of IEnumerable(Of ChatMessage), ChatOptions, CancellationToken, Task), CancellationToken, Task)) As ChatClientBuilder

Parâmetros

sharedFunc
Func<IEnumerable<ChatMessage>,ChatOptions,Func<IEnumerable<ChatMessage>,ChatOptions,CancellationToken,Task>,CancellationToken,Task>

Um delegado que fornece a implementação para ambos GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken) e GetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken). Este delegado é invocado com a lista de mensagens de chat, as opções de chat, um delegado que representa a invocação do cliente interno e um token de cancelamento. O delegado deve receber as mensagens de chat, opções e token de cancelamento que devem ser transmitidos para a próxima etapa do pipeline. Vai tratar tanto dos casos que não são streaming como dos que são de streaming.

Devoluções

A instância atualizada ChatClientBuilder .

Exceções

sharedFunc é null.

Observações

Esta sobrecarga pode ser usada quando a implementação anónima precisa de fornecer pré-processamento e/ou pós-processamento, mas não precisa de interagir com os resultados da operação, que virão do cliente interno.

Ver também

Aplica-se a

Use(Func<IEnumerable<ChatMessage>,ChatOptions,IChatClient,CancellationToken, Task<ChatResponse>>, Func<IEnumerable<ChatMessage>,ChatOptions, IChatClient,CancellationToken,IAsyncEnumerable<ChatResponseUpdate>>)

Origem:
ChatClientBuilder.cs

Adiciona ao pipeline do cliente de chat um cliente de chat anónimo de delegação baseado num delegado que fornece uma implementação para ambos GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken) , e GetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)para .

public:
 Microsoft::Extensions::AI::ChatClientBuilder ^ Use(Func<System::Collections::Generic::IEnumerable<Microsoft::Extensions::AI::ChatMessage ^> ^, Microsoft::Extensions::AI::ChatOptions ^, Microsoft::Extensions::AI::IChatClient ^, System::Threading::CancellationToken, System::Threading::Tasks::Task<Microsoft::Extensions::AI::ChatResponse ^> ^> ^ getResponseFunc, Func<System::Collections::Generic::IEnumerable<Microsoft::Extensions::AI::ChatMessage ^> ^, Microsoft::Extensions::AI::ChatOptions ^, Microsoft::Extensions::AI::IChatClient ^, System::Threading::CancellationToken, System::Collections::Generic::IAsyncEnumerable<Microsoft::Extensions::AI::ChatResponseUpdate ^> ^> ^ getStreamingResponseFunc);
public Microsoft.Extensions.AI.ChatClientBuilder Use(Func<System.Collections.Generic.IEnumerable<Microsoft.Extensions.AI.ChatMessage>,Microsoft.Extensions.AI.ChatOptions?,Microsoft.Extensions.AI.IChatClient,System.Threading.CancellationToken,System.Threading.Tasks.Task<Microsoft.Extensions.AI.ChatResponse>>? getResponseFunc, Func<System.Collections.Generic.IEnumerable<Microsoft.Extensions.AI.ChatMessage>,Microsoft.Extensions.AI.ChatOptions?,Microsoft.Extensions.AI.IChatClient,System.Threading.CancellationToken,System.Collections.Generic.IAsyncEnumerable<Microsoft.Extensions.AI.ChatResponseUpdate>>? getStreamingResponseFunc);
member this.Use : Func<seq<Microsoft.Extensions.AI.ChatMessage>, Microsoft.Extensions.AI.ChatOptions, Microsoft.Extensions.AI.IChatClient, System.Threading.CancellationToken, System.Threading.Tasks.Task<Microsoft.Extensions.AI.ChatResponse>> * Func<seq<Microsoft.Extensions.AI.ChatMessage>, Microsoft.Extensions.AI.ChatOptions, Microsoft.Extensions.AI.IChatClient, System.Threading.CancellationToken, System.Collections.Generic.IAsyncEnumerable<Microsoft.Extensions.AI.ChatResponseUpdate>> -> Microsoft.Extensions.AI.ChatClientBuilder
Public Function Use (getResponseFunc As Func(Of IEnumerable(Of ChatMessage), ChatOptions, IChatClient, CancellationToken, Task(Of ChatResponse)), getStreamingResponseFunc As Func(Of IEnumerable(Of ChatMessage), ChatOptions, IChatClient, CancellationToken, IAsyncEnumerable(Of ChatResponseUpdate))) As ChatClientBuilder

Parâmetros

getResponseFunc
Func<IEnumerable<ChatMessage>,ChatOptions,IChatClient,CancellationToken,Task<ChatResponse>>

Um delegado que fornece a implementação para GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken). Quando null, getStreamingResponseFunc deve ser não nulo, e a implementação de GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken) será usada getStreamingResponseFunc para a implementação.

getStreamingResponseFunc
Func<IEnumerable<ChatMessage>,ChatOptions,IChatClient,CancellationToken,IAsyncEnumerable<ChatResponseUpdate>>

Um delegado que fornece a implementação para GetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken). Quando null, getResponseFunc deve ser não nulo, e a implementação de GetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken) será usada getResponseFunc para a implementação.

Devoluções

A instância atualizada ChatClientBuilder .

Exceções

Tanto getResponseFunc como são getStreamingResponseFuncnull.

Observações

Podem ser fornecidos um ou ambos os delegados. Se ambos forem fornecidos, serão usados para os respetivos métodos: getResponseFunc fornecerão a implementação de GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken), e getStreamingResponseFunc fornecerão a implementação de GetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken). Se apenas um dos delegados for fornecido, será usado para ambos os métodos. Isto significa que, se getResponseFunc for fornecido sem getStreamingResponseFunc, a implementação de GetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken) empregará streaming limitado, pois operará sobre a produção em lote produzida por getResponseFunc. E se getStreamingResponseFunc for fornecido sem getResponseFunc, a implementação de GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken) será implementada combinando as atualizações de getStreamingResponseFunc.

Ver também

Aplica-se a