語言

SemanticRoutingChatClient 類別

定義

透過與應用程式提供的範例語句的語意相似度來路由請求。

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

備註

設定檔嵌入是懶惰地產生並快取的。 每個請求會嵌入最後的使用者訊息,並在彙總最匹配的個人檔案語句的餘弦相似度後,選擇得分最高的客戶端。 當沒有使用者訊息可用或最高分數低於設定門檻時,會選擇已設定的預設用戶端。

配置好的用戶端實例作為穩定的路由身份,並依參考點區分。 按買權選擇權不包含該身份。 預設情況下,此實例擁有客戶端與嵌入產生器,並在處理時將其處置。

範例-語句路由方法靈感來自 Aurelio Labs 的語意路由器專案

建構函式

名稱 Description
SemanticRoutingChatClient(IEmbeddingGenerator<String,Embedding<Single>>, IReadOnlyDictionary<IChatClient,IReadOnlyList<String>>, IChatClient, Single, Int32, SemanticRoutingChatClient+ScoreAggregation, Boolean)

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

方法

名稱 Description
Dispose()

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

(繼承來源 RoutingChatClient)
Dispose(Boolean)

提供釋放衍生實例擁有資源的機制。

(繼承來源 RoutingChatClient)
GetResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)

發送聊天訊息並回覆。

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

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

(繼承來源 RoutingChatClient)
GetStreamingResponseAsync(IEnumerable<ChatMessage>, ChatOptions, CancellationToken)

發送聊天訊息並直播回覆。

(繼承來源 RoutingChatClient)
SelectClientAsync(RoutingContext, CancellationToken)

選擇要呼叫的客戶端。

(繼承來源 RoutingChatClient)

擴充方法

名稱 Description
AsBuilder(IChatClient)

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

GetRequiredService(IChatClient, Type, Object)

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

GetRequiredService<TService>(IChatClient, Object)

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

GetResponseAsync(IChatClient, ChatMessage, ChatOptions, CancellationToken)

發送聊天訊息並回覆訊息。

GetResponseAsync(IChatClient, String, ChatOptions, CancellationToken)

發送用戶聊天簡訊並回覆訊息。

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

發送聊天訊息,請求回應類型為 T

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

發送聊天訊息,請求回應類型為 T

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

發送聊天訊息,請求符合 的回應 T類型。

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

發送聊天訊息,請求符合 的回應 T類型。

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

發送用戶聊天簡訊,請求符合類型 T的回應。

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

發送用戶聊天簡訊,請求符合類型 T的回應。

GetService<TService>(IChatClient, Object)

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

GetStreamingResponseAsync(IChatClient, ChatMessage, ChatOptions, CancellationToken)

發送聊天訊息並串流回覆訊息。

GetStreamingResponseAsync(IChatClient, String, ChatOptions, CancellationToken)

發送用戶聊天簡訊並串流回應訊息。

適用於