語言

FunctionInvokingRealtimeClient 類別

定義

一個委派的即時用戶端,呼叫定義於 的 CreateResponseRealtimeClientMessage函式。 將此功能納入即時用戶端管線,以自動解析函式呼叫。

public ref class FunctionInvokingRealtimeClient sealed : Microsoft::Extensions::AI::DelegatingRealtimeClient
[System.Diagnostics.CodeAnalysis.Experimental("MEAI001", UrlFormat="https://aka.ms/dotnet-extensions-warnings/{0}")]
public sealed class FunctionInvokingRealtimeClient : Microsoft.Extensions.AI.DelegatingRealtimeClient
public sealed class FunctionInvokingRealtimeClient : Microsoft.Extensions.AI.DelegatingRealtimeClient
[<System.Diagnostics.CodeAnalysis.Experimental("MEAI001", UrlFormat="https://aka.ms/dotnet-extensions-warnings/{0}")>]
type FunctionInvokingRealtimeClient = class
    inherit DelegatingRealtimeClient
type FunctionInvokingRealtimeClient = class
    inherit DelegatingRealtimeClient
Public NotInheritable Class FunctionInvokingRealtimeClient
Inherits DelegatingRealtimeClient
繼承
FunctionInvokingRealtimeClient
屬性

備註

當此用戶端建立的會話收到 FunctionCallContent 來自內部 IRealtimeClientSession伺服器的即時訊息時,會透過呼叫對應 AIFunction 的定義( Tools 或在) AdditionalTools中,產生 FunctionResultContent 一個並回傳給內部會話的訊息。 此迴圈重複,直到沒有更多函數呼叫,或滿足另一個停止條件,例如擊中 MaximumIterationsPerRequest。

建構函式

名稱 Description
FunctionInvokingRealtimeClient(IRealtimeClient, ILoggerFactory, IServiceProvider)

初始化 FunctionInvokingRealtimeClient 類別的新執行個體。

屬性

名稱 Description
AdditionalTools

取得或設定一組會話能調用的額外工具。

AllowConcurrentInvocation

取得或設定一個值,指示是否允許函式並行調用。

CurrentContext

取得 FunctionInvocationContext 目前函式調用的 。

FunctionInvoker

取得或設定一個代理,用來呼叫 AIFunction 實例。

IncludeDetailedErrors

取得或設定一個值,指示在呼叫底層 IRealtimeClientSession時回應中是否應包含詳細的例外資訊。

InnerClient

得到內層 IRealtimeClient。

(繼承來源 DelegatingRealtimeClient)
MaximumConsecutiveErrorsPerRequest

取得或設定允許連續迭代次數最多且錯誤失敗的次數。

MaximumIterationsPerRequest

接收或設定每個請求的最大迭代次數。

TerminateOnUnknownCalls

會取得或設定一個值,指示呼叫未知函式的請求是否應該終止函式呼叫迴圈。

方法

名稱 Description
CreateSessionAsync(RealtimeSessionOptions, CancellationToken)

建立一個新的即時會話,包含指定的選項。

Dispose()

執行與釋放、釋放或重設非受控資源相關聯的應用程式定義工作。

(繼承來源 DelegatingRealtimeClient)
Dispose(Boolean)

提供釋放 Unmanaged 資源的機制。

(繼承來源 DelegatingRealtimeClient)
GetService(Type, Object)

請求 給 IRealtimeClient 指定類型的 serviceType物件。

(繼承來源 DelegatingRealtimeClient)

擴充方法

名稱 Description
AsBuilder(IRealtimeClient)

創造一個新的 RealtimeClientBuilder 使用 innerClient ,作為其內在客戶。

GetRequiredService(IRealtimeClient, Type, Object)

會要求 需要 IRealtimeClient 指定類型的 serviceType 物件,若無法使用則拋出例外。

GetRequiredService<TService>(IRealtimeClient, Object)

會請求 一個 IRealtimeClient 類型的 TService 物件,若無法使用則拋出例外。

GetService<TService>(IRealtimeClient, Object)

請求 一個 IRealtimeClient 類型的 TService物件。

適用於