4 implementations of IChatReducer
Microsoft.Extensions.AI (2)
ChatReduction\MessageCountingChatReducer.cs (1)
25public sealed class MessageCountingChatReducer : IChatReducer
ChatReduction\SummarizingChatReducer.cs (1)
25public sealed class SummarizingChatReducer : IChatReducer
Microsoft.Extensions.AI.Integration.Tests (1)
ReducingChatClientTests.cs (1)
60public sealed class TokenCountingChatReducer : IChatReducer
Microsoft.Extensions.AI.Tests (1)
ChatCompletion\ReducingChatClientTests.cs (1)
175private sealed class TestReducer : IChatReducer
7 references to IChatReducer
Microsoft.Extensions.AI (5)
ChatCompletion\ReducingChatClient.cs (2)
19private readonly IChatReducer _reducer; 24public ReducingChatClient(IChatClient innerClient, IChatReducer reducer)
ChatCompletion\ReducingChatClientBuilderExtensions.cs (3)
21/// <param name="reducer">An optional <see cref="IChatReducer"/> to apply to the chat client. If not supplied, an instance will be resolved from the service provider.</param> 26IChatReducer? reducer = null, 33reducer ??= services.GetRequiredService<IChatReducer>();
Microsoft.Extensions.AI.Integration.Tests (1)
ReducingChatClientTests.cs (1)
59/// <summary>An <see cref="IChatReducer"/> that culls the oldest messages once a certain token threshold is reached.</summary>
Microsoft.Extensions.AI.Tests (1)
ChatCompletion\ReducingChatClientTests.cs (1)
101services.AddSingleton<IChatReducer>(reducer);