ChatClientBuilder.Use メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
中間チャット クライアントのファクトリをチャット クライアント パイプラインに追加します。
オーバーロード
| 名前 | 説明 |
|---|---|
| Use(Func<IChatClient,IChatClient>) |
中間チャット クライアントのファクトリをチャット クライアント パイプラインに追加します。 |
| Use(Func<IChatClient,IServiceProvider,IChatClient>) |
中間チャット クライアントのファクトリをチャット クライアント パイプラインに追加します。 |
| Use(Func<IEnumerable<ChatMessage>,ChatOptions,Func<IEnumerable<ChatMessage>,ChatOptions,CancellationToken,Task>,CancellationToken,Task>) |
GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)とGetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)の両方の実装を提供するデリゲートに基づいて、匿名の委任チャット クライアントをチャット クライアント パイプラインに追加します。 |
| Use(Func<IEnumerable<ChatMessage>,ChatOptions,IChatClient,CancellationToken, Task<ChatResponse>>, Func<IEnumerable<ChatMessage>,ChatOptions, IChatClient,CancellationToken,IAsyncEnumerable<ChatResponseUpdate>>) |
GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)とGetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)の両方の実装を提供するデリゲートに基づいて、匿名の委任チャット クライアントをチャット クライアント パイプラインに追加します。 |
Use(Func<IChatClient,IChatClient>)
中間チャット クライアントのファクトリをチャット クライアント パイプラインに追加します。
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
パラメーター
- clientFactory
- Func<IChatClient,IChatClient>
クライアント ファクトリ関数。
返品
更新された ChatClientBuilder インスタンス。
例外
clientFactory は nullです。
こちらもご覧ください
適用対象
Use(Func<IChatClient,IServiceProvider,IChatClient>)
中間チャット クライアントのファクトリをチャット クライアント パイプラインに追加します。
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
パラメーター
- clientFactory
- Func<IChatClient,IServiceProvider,IChatClient>
クライアント ファクトリ関数。
返品
更新された ChatClientBuilder インスタンス。
例外
clientFactory は nullです。
こちらもご覧ください
適用対象
Use(Func<IEnumerable<ChatMessage>,ChatOptions,Func<IEnumerable<ChatMessage>,ChatOptions,CancellationToken,Task>,CancellationToken,Task>)
GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)とGetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)の両方の実装を提供するデリゲートに基づいて、匿名の委任チャット クライアントをチャット クライアント パイプラインに追加します。
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
パラメーター
- sharedFunc
- Func<IEnumerable<ChatMessage>,ChatOptions,Func<IEnumerable<ChatMessage>,ChatOptions,CancellationToken,Task>,CancellationToken,Task>
GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)とGetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)の両方の実装を提供するデリゲート。 このデリゲートは、チャット メッセージの一覧、チャット オプション、内部クライアントの呼び出しを表すデリゲート、およびキャンセル トークンで呼び出されます。 デリゲートは、チャット メッセージ、オプション、キャンセル トークンをパイプラインの次のステージに渡す必要があります。 これは、非ストリーミングとストリーミングの両方のケースを処理します。
返品
更新された ChatClientBuilder インスタンス。
例外
sharedFunc は nullです。
注釈
このオーバーロードは、匿名実装が前処理や後処理を提供する必要があるが、内部クライアントから取得される操作の結果と対話する必要がない場合に使用できます。
こちらもご覧ください
適用対象
Use(Func<IEnumerable<ChatMessage>,ChatOptions,IChatClient,CancellationToken, Task<ChatResponse>>, Func<IEnumerable<ChatMessage>,ChatOptions, IChatClient,CancellationToken,IAsyncEnumerable<ChatResponseUpdate>>)
GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)とGetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)の両方の実装を提供するデリゲートに基づいて、匿名の委任チャット クライアントをチャット クライアント パイプラインに追加します。
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
パラメーター
- getResponseFunc
- Func<IEnumerable<ChatMessage>,ChatOptions,IChatClient,CancellationToken,Task<ChatResponse>>
GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)の実装を提供するデリゲート。
null場合、getStreamingResponseFuncは null 以外である必要があり、GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)の実装では実装にgetStreamingResponseFuncが使用されます。
- getStreamingResponseFunc
- Func<IEnumerable<ChatMessage>,ChatOptions,IChatClient,CancellationToken,IAsyncEnumerable<ChatResponseUpdate>>
GetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)の実装を提供するデリゲート。
null場合、getResponseFuncは null 以外である必要があり、GetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)の実装では実装にgetResponseFuncが使用されます。
返品
更新された ChatClientBuilder インスタンス。
例外
getResponseFuncとgetStreamingResponseFuncの両方がnull。
注釈
1 つまたは両方のデリゲートを指定できます。 両方が指定されている場合は、それぞれのメソッドに使用されます。 getResponseFunc は GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)の実装を提供し、 getStreamingResponseFunc は GetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)の実装を提供します。 デリゲートの 1 つだけが指定されている場合は、両方のメソッドに使用されます。 つまり、 getResponseFunc が getStreamingResponseFuncなしで提供される場合、 GetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken) の実装では、 getResponseFuncによって生成されたバッチ出力で動作することになるため、限られたストリーミングが使用されます。 また、 getStreamingResponseFunc が getResponseFuncなしで提供される場合、 GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken) の実装は、 getStreamingResponseFuncからの更新プログラムを組み合わせることによって実装されます。