Share via


DelegatingChatClient Class

Definition

Provides an optional base class for an IChatClient that passes through calls to another instance.

public ref class DelegatingChatClient : IDisposable, Microsoft::Extensions::AI::IChatClient
public class DelegatingChatClient : IDisposable, Microsoft.Extensions.AI.IChatClient
type DelegatingChatClient = class
    interface IChatClient
    interface IDisposable
Public Class DelegatingChatClient
Implements IChatClient, IDisposable
Inheritance
DelegatingChatClient
Derived
Implements

Remarks

This is recommended as a base type when building clients that can be chained in any order around an underlying IChatClient. The default implementation simply passes each call to the inner client instance.

Constructors

DelegatingChatClient(IChatClient)

Initializes a new instance of the DelegatingChatClient class.

Properties

InnerClient

Gets the inner IChatClient.

Methods

Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

Dispose(Boolean)

Provides a mechanism for releasing unmanaged resources.

GetResponseAsync(IList<ChatMessage>, ChatOptions, CancellationToken)

Sends chat messages and returns the response.

GetService(Type, Object)

Asks the IChatClient for an object of the specified type serviceType.

GetStreamingResponseAsync(IList<ChatMessage>, ChatOptions, CancellationToken)

Sends chat messages and streams the response.

Extension Methods

AsBuilder(IChatClient)

Creates a new ChatClientBuilder using innerClient as its inner client.

GetResponseAsync(IChatClient, ChatMessage, ChatOptions, CancellationToken)

Sends a chat message and returns the response messages.

GetResponseAsync(IChatClient, String, ChatOptions, CancellationToken)

Sends a user chat text message and returns the response messages.

GetService<TService>(IChatClient, Object)

Asks the IChatClient for an object of type TService.

GetStreamingResponseAsync(IChatClient, ChatMessage, ChatOptions, CancellationToken)

Sends a chat message and streams the response messages.

GetStreamingResponseAsync(IChatClient, String, ChatOptions, CancellationToken)

Sends a user chat text message and streams the response messages.

GetResponseAsync<T>(IChatClient, ChatMessage, ChatOptions, Nullable<Boolean>, CancellationToken)

Sends a chat message, requesting a response matching the type T.

GetResponseAsync<T>(IChatClient, ChatMessage, JsonSerializerOptions, ChatOptions, Nullable<Boolean>, CancellationToken)

Sends a chat message, requesting a response matching the type T.

GetResponseAsync<T>(IChatClient, IList<ChatMessage>, ChatOptions, Nullable<Boolean>, CancellationToken)

Sends chat messages, requesting a response matching the type T.

GetResponseAsync<T>(IChatClient, IList<ChatMessage>, JsonSerializerOptions, ChatOptions, Nullable<Boolean>, CancellationToken)

Sends chat messages, requesting a response matching the type T.

GetResponseAsync<T>(IChatClient, String, ChatOptions, Nullable<Boolean>, CancellationToken)

Sends a user chat text message, requesting a response matching the type T.

GetResponseAsync<T>(IChatClient, String, JsonSerializerOptions, ChatOptions, Nullable<Boolean>, CancellationToken)

Sends a user chat text message, requesting a response matching the type T.

Applies to