1 type derived from ChatResponse
Microsoft.Extensions.AI (1)
ChatCompletion\ChatResponse{T}.cs (1)
21public class ChatResponse<T> : ChatResponse
68 instantiations of ChatResponse
Aspire.Azure.AI.OpenAI.Tests (1)
AspireAzureOpenAIClientBuilderChatClientExtensionsTests.cs (1)
221=> Task.FromResult(new ChatResponse(new ChatMessage(ChatRole.Assistant, "Hello from middleware")));
Aspire.OpenAI.Tests (1)
AspireOpenAIClientBuilderChatClientExtensionsTests.cs (1)
269=> Task.FromResult(new ChatResponse(new ChatMessage(ChatRole.Assistant, "Hello from middleware")));
Microsoft.Extensions.AI.Abstractions (2)
ChatCompletion\ChatResponseExtensions.cs (2)
137ChatResponse response = new(); 170ChatResponse response = new();
Microsoft.Extensions.AI.Abstractions.Tests (11)
ChatCompletion\ChatClientExtensionsTests.cs (1)
103var expectedResponse = new ChatResponse();
ChatCompletion\ChatResponseTests.cs (9)
19response = new(); 23response = new((IList<ChatMessage>?)null); 27Assert.Throws<ArgumentNullException>("message", () => new ChatResponse((ChatMessage)null!)); 33ChatResponse response = new(); 38response = new(messages); 50ChatResponse response = new(); 87ChatResponse original = new(new ChatMessage(ChatRole.Assistant, "the message")) 122ChatResponse response = new(new ChatMessage(ChatRole.Assistant, $"This is a test.{Environment.NewLine}It's multiple lines.")); 130ChatResponse response = new(new ChatMessage(new ChatRole("customRole"), "Text") { MessageId = "someMessage" })
ChatCompletion\DelegatingChatClientTests.cs (1)
28var expectedResponse = new ChatResponse();
Microsoft.Extensions.AI.AzureAIInference (1)
AzureAIInferenceChatClient.cs (1)
128return new ChatResponse(message)
Microsoft.Extensions.AI.Evaluation (2)
EvaluatorExtensions.cs (2)
136new ChatResponse(modelResponse), 226new ChatResponse(modelResponse),
Microsoft.Extensions.AI.Evaluation.Console (1)
Commands\ReportCommand.cs (1)
70result.ModelResponse = new ChatResponse();
Microsoft.Extensions.AI.Evaluation.Integration.Tests (3)
SafetyEvaluatorTests.cs (3)
364var response = new ChatResponse(answer2); 426var response = new ChatResponse(answer3); 502var response = new ChatResponse(completion2);
Microsoft.Extensions.AI.Evaluation.NLP.Tests (6)
BLEUEvaluatorTests.cs (6)
20var response = new ChatResponse(new ChatMessage(ChatRole.Assistant, "The quick brown fox jumps over the lazy dog.")); 36var response = new ChatResponse(new ChatMessage(ChatRole.Assistant, "Completely unrelated sentence.")); 51var response = new ChatResponse(new ChatMessage(ChatRole.Assistant, "Some text.")); 71var response = new ChatResponse(new ChatMessage(ChatRole.Assistant, hypothesis)); 91var response = new ChatResponse(new ChatMessage(ChatRole.Assistant, hypothesis)); 104var response = new ChatResponse(new ChatMessage(ChatRole.Assistant, ""));
Microsoft.Extensions.AI.Evaluation.Reporting (2)
ScenarioRunExtensions.cs (2)
90new ChatResponse(modelResponse), 149new ChatResponse(modelResponse),
Microsoft.Extensions.AI.Evaluation.Reporting.Tests (4)
ResultStoreTester.cs (1)
35modelResponse: new ChatResponse(new ChatMessage(ChatRole.Assistant, "LLM response")),
ScenarioRunResultTests.cs (2)
87modelResponse: new ChatResponse(new ChatMessage(ChatRole.Assistant, "response")), 178modelResponse: new ChatResponse(new ChatMessage(ChatRole.Assistant, "response")),
SerializationChainingTests.cs (1)
25modelResponse: new ChatResponse
Microsoft.Extensions.AI.Evaluation.Safety (1)
ContentSafetyChatClient.cs (1)
78return new ChatResponse(new ChatMessage(ChatRole.Assistant, annotationResult))
Microsoft.Extensions.AI.Integration.Tests (1)
ReducingChatClientTests.cs (1)
36return Task.FromResult(new ChatResponse());
Microsoft.Extensions.AI.OpenAI (2)
OpenAIChatClient.cs (1)
466var response = new ChatResponse(returnMessage)
OpenAIResponseChatClient.cs (1)
81ChatResponse response = new()
Microsoft.Extensions.AI.Tests (29)
ChatCompletion\ChatClientStructuredOutputExtensionsTests.cs (10)
23var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(expectedResult, JsonContext2.Default.Animal))) 106var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(expectedResult, JsonContext2.Default.Options))) 167var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(expectedResult, JsonContext2.Default.Options))); 201var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, "This is not valid JSON")); 220var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, "null")); 239var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, [new UriContent("https://example.com", "image/*")])); 259var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(expectedResult, JsonContext2.Default.Options))); 294var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(payload, JsonContext2.Default.Options))); 326var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(expectedResult, jso))); 393return Task.FromResult(new ChatResponse(new ChatMessage(ChatRole.Assistant, resultDuplicatedJson)));
ChatCompletion\ConfigureOptionsChatClientTests.cs (1)
37ChatResponse expectedResponse = new();
ChatCompletion\DistributedCachingChatClientTest.cs (7)
47var expectedResponse = new ChatResponse( 140return new ChatResponse(new ChatMessage(ChatRole.Assistant, "Hello")); 214return new ChatResponse(new ChatMessage(ChatRole.Assistant, "A good result")); 559return new(new ChatMessage(ChatRole.Assistant, options!.AdditionalProperties!["someKey"]!.ToString())); 610return new(new ChatMessage(ChatRole.Assistant, options!.AdditionalProperties!["someKey"]!.ToString())); 638var expectedResponse = new ChatResponse( 697return Task.FromResult(new ChatResponse(
ChatCompletion\FunctionInvokingChatClientTests.cs (6)
653return new(message); 775return Task.FromResult(new ChatResponse(message)); 817return new ChatResponse(new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId-abc", "Func1")])) 825return new ChatResponse(new ChatMessage(ChatRole.Assistant, "done!")); 961return new ChatResponse(message) { Usage = usage }; 1055return YieldAsync(new ChatResponse(message).ToChatResponseUpdates());
ChatCompletion\LoggingChatClientTests.cs (1)
59return Task.FromResult(new ChatResponse(new ChatMessage(ChatRole.Assistant, "blue whale")));
ChatCompletion\OpenTelemetryChatClientTests.cs (1)
41return new ChatResponse(new ChatMessage(ChatRole.Assistant, "The blue whale, I think."))
ChatCompletion\UseDelegateChatClientTests.cs (3)
42return Task.FromResult(new ChatResponse(new ChatMessage(ChatRole.Assistant, "hello"))); 91return Task.FromResult(new ChatResponse(new ChatMessage(ChatRole.Assistant, "hello"))); 184return Task.FromResult(new ChatResponse(new ChatMessage(ChatRole.Assistant, "non-streaming hello")));
Microsoft.ML.GenAI.Core (1)
CausalLMPipelineChatClient.cs (1)
48return Task.FromResult(new ChatResponse([chatMessage])
331 references to ChatResponse
Aspire.Azure.AI.OpenAI.Tests (2)
AspireAzureOpenAIClientBuilderChatClientExtensionsTests.cs (2)
217var completion = await client.GetResponseAsync("Whatever"); 220static Task<ChatResponse> TestMiddleware(IEnumerable<ChatMessage> list, ChatOptions? options, IChatClient client, CancellationToken token)
Aspire.OpenAI.Tests (3)
AspireOpenAIClientBuilderChatClientExtensionsTests.cs (3)
220var completion = await client.GetResponseAsync("Whatever"); 254var completion = await client.GetResponseAsync("Whatever"); 268private static Task<ChatResponse> TestMiddleware(IEnumerable<ChatMessage> list, ChatOptions? options, IChatClient client, CancellationToken token)
Microsoft.Extensions.AI (40)
ChatCompletion\AnonymousDelegatingChatClient.cs (7)
23private readonly Func<IEnumerable<ChatMessage>, ChatOptions?, IChatClient, CancellationToken, Task<ChatResponse>>? _getResponseFunc; 79Func<IEnumerable<ChatMessage>, ChatOptions?, IChatClient, CancellationToken, Task<ChatResponse>>? getResponseFunc, 90public override Task<ChatResponse> GetResponseAsync( 99async Task<ChatResponse> GetResponseViaSharedAsync( 102ChatResponse? response = null; 189static async IAsyncEnumerable<ChatResponseUpdate> GetStreamingResponseAsyncViaGetResponseAsync(Task<ChatResponse> task) 191ChatResponse response = await task;
ChatCompletion\CachingChatClient.cs (8)
49public override Task<ChatResponse> GetResponseAsync( 59private async Task<ChatResponse> GetCachedResponseAsync( 156/// Returns a previously cached <see cref="ChatResponse"/>, if available. 163protected abstract Task<ChatResponse?> ReadCacheAsync(string key, CancellationToken cancellationToken); 176/// Stores a <see cref="ChatResponse"/> in the underlying cache. 180/// <param name="value">The <see cref="ChatResponse"/> to be stored.</param> 185protected abstract Task WriteCacheAsync(string key, ChatResponse value, CancellationToken cancellationToken); 192/// <param name="value">The <see cref="ChatResponse"/> to be stored.</param>
ChatCompletion\ChatClientBuilder.cs (1)
143Func<IEnumerable<ChatMessage>, ChatOptions?, IChatClient, CancellationToken, Task<ChatResponse>>? getResponseFunc,
ChatCompletion\ChatClientStructuredOutputExtensions.cs (1)
223var result = await chatClient.GetResponseAsync(messages, options, cancellationToken);
ChatCompletion\ChatResponse{T}.cs (3)
19/// You can access the underlying JSON response on the <see cref="ChatResponse.Text"/> property. 35/// <param name="response">The unstructured <see cref="ChatResponse"/> that is being wrapped.</param> 37public ChatResponse(ChatResponse response, JsonSerializerOptions serializerOptions)
ChatCompletion\ConfigureOptionsChatClient.cs (1)
37public override async Task<ChatResponse> GetResponseAsync(
ChatCompletion\DistributedCachingChatClient.cs (6)
24/// the object models used by <see cref="ChatMessage"/>, <see cref="ChatOptions"/>, <see cref="ChatResponse"/>, <see cref="ChatResponseUpdate"/>, 60protected override async Task<ChatResponse?> ReadCacheAsync(string key, CancellationToken cancellationToken) 67return (ChatResponse?)JsonSerializer.Deserialize(existingJson, _jsonSerializerOptions.GetTypeInfo(typeof(ChatResponse))); 88protected override async Task WriteCacheAsync(string key, ChatResponse value, CancellationToken cancellationToken) 94var newJson = JsonSerializer.SerializeToUtf8Bytes(value, _jsonSerializerOptions.GetTypeInfo(typeof(ChatResponse)));
ChatCompletion\DistributedCachingChatClientBuilderExtensions.cs (1)
29/// the object models used by <see cref="ChatMessage"/>, <see cref="ChatOptions"/>, <see cref="ChatResponse"/>, <see cref="ChatResponseUpdate"/>,
ChatCompletion\FunctionInvokingChatClient.cs (5)
209public override async Task<ChatResponse> GetResponseAsync( 224ChatResponse? response = null; // the response from the inner client, which is possibly modified and then eventually returned 239Throw.InvalidOperationException($"The inner {nameof(IChatClient)} returned a null {nameof(ChatResponse)}."); 368var response = updates.ToChatResponse(); 446ChatResponse response,
ChatCompletion\LoggingChatClient.cs (2)
54public override async Task<ChatResponse> GetResponseAsync( 71var response = await base.GetResponseAsync(messages, options, cancellationToken);
ChatCompletion\OpenTelemetryChatClient.cs (5)
132public override async Task<ChatResponse> GetResponseAsync( 144ChatResponse? response = null; 335ChatResponse? response, 430void AddMetricTags(ref TagList tags, string? requestModelId, ChatResponse? response) 494private void LogChatResponse(ChatResponse response)
Microsoft.Extensions.AI.Abstractions (35)
ChatCompletion\ChatClientExtensions.cs (2)
91public static Task<ChatResponse> GetResponseAsync( 111public static Task<ChatResponse> GetResponseAsync(
ChatCompletion\ChatResponse.cs (9)
14/// <see cref="ChatResponse"/> provides one or more response messages and metadata about the response. 18/// it uses, all of the involved messages may be surfaced as part of the final <see cref="ChatResponse"/>. 25/// <summary>Initializes a new instance of the <see cref="ChatResponse"/> class.</summary> 30/// <summary>Initializes a new instance of the <see cref="ChatResponse"/> class.</summary> 40/// <summary>Initializes a new instance of the <see cref="ChatResponse"/> class.</summary> 72/// (and this <see cref="ChatResponse"/>'s message) as part of the <c>messages</c> parameter. Note that the value may 93/// If a <see cref="ChatResponse"/> is created to represent some underlying object from another object 106/// <summary>Creates an array of <see cref="ChatResponseUpdate" /> instances that represent this <see cref="ChatResponse" />.</summary> 107/// <returns>An array of <see cref="ChatResponseUpdate" /> instances that may be used to represent this <see cref="ChatResponse" />.</returns>
ChatCompletion\ChatResponseExtensions.cs (16)
18/// Provides extension methods for working with <see cref="ChatResponse"/> and <see cref="ChatResponseUpdate"/> instances. 27public static void AddMessages(this IList<ChatMessage> list, ChatResponse response) 122/// <summary>Combines <see cref="ChatResponseUpdate"/> instances into a single <see cref="ChatResponse"/>.</summary> 124/// <returns>The combined <see cref="ChatResponse"/>.</returns> 127/// As part of combining <paramref name="updates"/> into a single <see cref="ChatResponse"/>, the method will attempt to reconstruct 132public static ChatResponse ToChatResponse( 137ChatResponse response = new(); 149/// <summary>Combines <see cref="ChatResponseUpdate"/> instances into a single <see cref="ChatResponse"/>.</summary> 152/// <returns>The combined <see cref="ChatResponse"/>.</returns> 155/// As part of combining <paramref name="updates"/> into a single <see cref="ChatResponse"/>, the method will attempt to reconstruct 160public static Task<ChatResponse> ToChatResponseAsync( 167static async Task<ChatResponse> ToChatResponseAsync( 170ChatResponse response = new(); 240private static void FinalizeResponse(ChatResponse response) 251/// <param name="response">The <see cref="ChatResponse"/> object that should be updated based on <paramref name="update"/>.</param> 252private static void ProcessUpdate(ChatResponseUpdate update, ChatResponse response)
ChatCompletion\ChatResponseUpdate.cs (5)
19/// <see cref="ChatResponse"/> and <see cref="ChatMessage"/> in streaming output. 22/// The relationship between <see cref="ChatResponse"/> and <see cref="ChatResponseUpdate"/> is 24/// <see cref="ChatResponse.ToChatResponseUpdates"/>, which enable bidirectional conversions 27/// such an object available in <see cref="ChatResponse.RawRepresentation"/>. Similarly, if different 29/// only one of the values will be used to populate <see cref="ChatResponse.ModelId"/>.
ChatCompletion\DelegatingChatClient.cs (1)
42public virtual Task<ChatResponse> GetResponseAsync(
ChatCompletion\IChatClient.cs (1)
42Task<ChatResponse> GetResponseAsync(
Utilities\AIJsonUtilities.Defaults.cs (1)
80[JsonSerializable(typeof(ChatResponse))]
Microsoft.Extensions.AI.Abstractions.Tests (18)
ChatCompletion\ChatClientExtensionsTests.cs (2)
103var expectedResponse = new ChatResponse(); 123ChatResponse response = await client.GetResponseAsync("hello", expectedOptions, cts.Token);
ChatCompletion\ChatResponseTests.cs (7)
17ChatResponse response; 33ChatResponse response = new(); 50ChatResponse response = new(); 87ChatResponse original = new(new ChatMessage(ChatRole.Assistant, "the message")) 100ChatResponse? result = JsonSerializer.Deserialize(json, TestJsonSerializerContext.Default.ChatResponse); 122ChatResponse response = new(new ChatMessage(ChatRole.Assistant, $"This is a test.{Environment.NewLine}It's multiple lines.")); 130ChatResponse response = new(new ChatMessage(new ChatRole("customRole"), "Text") { MessageId = "someMessage" })
ChatCompletion\ChatResponseUpdateExtensionsTests.cs (4)
39ChatResponse response = useAsync ? 132ChatResponse response = useAsync ? await YieldAsync(updates).ToChatResponseAsync() : updates.ToChatResponse(); 173ChatResponse response = useAsync ? await YieldAsync(updates).ToChatResponseAsync() : updates.ToChatResponse(); 196ChatResponse response = await YieldAsync(updates).ToChatResponseAsync();
ChatCompletion\DelegatingChatClientTests.cs (2)
27var expectedResult = new TaskCompletionSource<ChatResponse>(); 28var expectedResponse = new ChatResponse();
TestChatClient.cs (2)
20public Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, Task<ChatResponse>>? GetResponseAsyncCallback { get; set; } 29public Task<ChatResponse> GetResponseAsync(IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default)
TestJsonSerializerContext.cs (1)
17[JsonSerializable(typeof(ChatResponse))]
Microsoft.Extensions.AI.AzureAIInference (1)
AzureAIInferenceChatClient.cs (1)
85public async Task<ChatResponse> GetResponseAsync(
Microsoft.Extensions.AI.AzureAIInference.Tests (7)
AzureAIInferenceChatClientTests.cs (7)
148var response = await client.GetResponseAsync(messages, new() 254var response = await client.GetResponseAsync("hello", new ChatOptions 368var response = await client.GetResponseAsync("hello", chatOptions); 535var response = await client.GetResponseAsync("hello", chatOptions); 994var response = await client.GetResponseAsync(messages, new() 1136var response = await client.GetResponseAsync(messages); 1249var response = await client.GetResponseAsync("How old is Alice?", new()
Microsoft.Extensions.AI.Evaluation (19)
ChatResponseExtensions.cs (9)
9/// Extension methods for <see cref="ChatResponse"/>. 20/// This function only considers the <see cref="ChatResponse.Text"/> and ignores any <see cref="AIContent"/>s 21/// (present within the <see cref="ChatMessage.Contents"/> of the <see cref="ChatResponse.Messages"/>) that are not 22/// <see cref="TextContent"/>s. Any <see cref="ChatResponse.Messages"/> that contain no <see cref="TextContent"/>s 23/// will be skipped and will not be rendered. If none of the <see cref="ChatResponse.Messages"/> include any 27/// The rendered <see cref="ChatResponse.Messages"/> are each prefixed with the <see cref="ChatMessage.Role"/> and 29/// <see cref="ChatResponse.Messages"/>s are also always separated by new line characters in the returned string. 32/// <param name="response">The <see cref="ChatResponse"/> that is to be rendered.</param> 34public static string RenderText(this ChatResponse response)
CompositeEvaluator.cs (2)
104ChatResponse modelResponse, 129ChatResponse modelResponse,
EvaluationContext.cs (1)
23/// <see cref="IEvaluator.EvaluateAsync(IEnumerable{ChatMessage}, ChatResponse, ChatConfiguration?, IEnumerable{EvaluationContext}?, CancellationToken)"/>.
EvaluationMetricExtensions.cs (2)
143/// <param name="response">The <see cref="ChatResponse"/> that contains metadata to be added or updated.</param> 150ChatResponse response,
EvaluationResultExtensions.cs (2)
173/// <param name="response">The <see cref="ChatResponse"/> that contains metadata to be added or updated.</param> 180ChatResponse response,
EvaluatorExtensions.cs (2)
171ChatResponse modelResponse, 265ChatResponse modelResponse,
IEvaluator.cs (1)
59ChatResponse modelResponse,
Microsoft.Extensions.AI.Evaluation.Integration.Tests (21)
AgentQualityEvaluatorTests.cs (8)
93(IEnumerable<ChatMessage> messages, ChatResponse response) = 116(IEnumerable<ChatMessage> messages, ChatResponse response) = 149(IEnumerable<ChatMessage> messages, ChatResponse response) = 173(IEnumerable<ChatMessage> messages, ChatResponse response) = 204private static async Task<(IEnumerable<ChatMessage> messages, ChatResponse response)> 213ChatResponse response = await chatClient.GetResponseAsync(messages, _chatOptions); 217private static async Task<(IEnumerable<ChatMessage> messages, ChatResponse response)> 226ChatResponse response = await chatClient.GetResponseAsync(messages, _chatOptionsWithTools);
QualityEvaluatorTests.cs (4)
96ChatResponse response = await chatClient.GetResponseAsync(messages, _chatOptions); 135ChatResponse response = await chatClient.GetResponseAsync(messages, _chatOptions); 172ChatResponse response = await chatClient.GetResponseAsync(messages, _chatOptions); 207ChatResponse response = await chatClient.GetResponseAsync(messages, _chatOptions);
SafetyEvaluatorTests.cs (8)
147ChatResponse response = await chatClient.GetResponseAsync(messages, _chatOptions); 209ChatResponse response1 = await chatClient.GetResponseAsync(messages, _chatOptions); 215ChatResponse response2 = await chatClient.GetResponseAsync(messages, _chatOptions); 364var response = new ChatResponse(answer2); 426var response = new ChatResponse(answer3); 502var response = new ChatResponse(completion2); 529ChatResponse response1 = await chatClient.GetResponseAsync(messages, _chatOptions); 535ChatResponse response2 = await chatClient.GetResponseAsync(messages, _chatOptions);
TestEvaluator.cs (1)
28ChatResponse modelResponse,
Microsoft.Extensions.AI.Evaluation.NLP (1)
BLEUEvaluator.cs (1)
43ChatResponse modelResponse,
Microsoft.Extensions.AI.Evaluation.NLP.Tests (6)
BLEUEvaluatorTests.cs (6)
20var response = new ChatResponse(new ChatMessage(ChatRole.Assistant, "The quick brown fox jumps over the lazy dog.")); 36var response = new ChatResponse(new ChatMessage(ChatRole.Assistant, "Completely unrelated sentence.")); 51var response = new ChatResponse(new ChatMessage(ChatRole.Assistant, "Some text.")); 71var response = new ChatResponse(new ChatMessage(ChatRole.Assistant, hypothesis)); 91var response = new ChatResponse(new ChatMessage(ChatRole.Assistant, hypothesis)); 104var response = new ChatResponse(new ChatMessage(ChatRole.Assistant, ""));
Microsoft.Extensions.AI.Evaluation.Quality (39)
ChatResponseExtensions.cs (2)
14internal static string RenderAsJson(this ChatResponse modelResponse, JsonSerializerOptions? options = null) 22this ChatResponse modelResponse,
CoherenceEvaluator.cs (3)
69ChatResponse modelResponse, 92(ChatResponse evaluationResponse, TimeSpan evaluationDuration) = 104private static List<ChatMessage> GetEvaluationInstructions(ChatMessage? userRequest, ChatResponse modelResponse)
CompletenessEvaluator.cs (3)
66ChatResponse modelResponse, 97(ChatResponse evaluationResponse, TimeSpan evaluationDuration) = 111ChatResponse modelResponse,
EquivalenceEvaluator.cs (3)
65ChatResponse modelResponse, 98(ChatResponse evaluationResponse, TimeSpan evaluationDuration) = 113ChatResponse modelResponse,
EvaluationMetricExtensions.cs (2)
57ChatResponse evaluationResponse, 68ChatResponse evaluationResponse,
FluencyEvaluator.cs (3)
63ChatResponse modelResponse, 84(ChatResponse evaluationResponse, TimeSpan evaluationDuration) = 96private static List<ChatMessage> GetEvaluationInstructions(ChatResponse modelResponse)
GroundednessEvaluator.cs (3)
64ChatResponse modelResponse, 98(ChatResponse evaluationResponse, TimeSpan evaluationDuration) = 113ChatResponse modelResponse,
IntentResolutionEvaluator.cs (4)
77ChatResponse modelResponse, 142(ChatResponse evaluationResponse, TimeSpan evaluationDuration) = 166ChatResponse modelResponse, 324ChatResponse evaluationResponse,
RelevanceEvaluator.cs (3)
67ChatResponse modelResponse, 97(ChatResponse evaluationResponse, TimeSpan evaluationDuration) = 109private static List<ChatMessage> GetEvaluationInstructions(ChatMessage userRequest, ChatResponse modelResponse)
RelevanceTruthAndCompletenessEvaluator.cs (4)
80ChatResponse modelResponse, 116(ChatResponse evaluationResponse, TimeSpan evaluationDuration) = 135ChatResponse modelResponse, 269ChatResponse evaluationResponse,
RetrievalEvaluator.cs (2)
73ChatResponse modelResponse, 113(ChatResponse evaluationResponse, TimeSpan evaluationDuration) =
TaskAdherenceEvaluator.cs (3)
76ChatResponse modelResponse, 141(ChatResponse evaluationResponse, TimeSpan evaluationDuration) = 161ChatResponse modelResponse,
ToolCallAccuracyEvaluator.cs (3)
78ChatResponse modelResponse, 141(ChatResponse evaluationResponse, TimeSpan evaluationDuration) = 156ChatResponse modelResponse,
Utilities\JsonOutputFixer.cs (1)
71ChatResponse response =
Microsoft.Extensions.AI.Evaluation.Reporting (20)
ChatTurnDetails.cs (4)
23/// <see langword="null"/> if this information was not available via <see cref="ChatResponse.ModelId"/>. 27/// <see langword="null"/> if usage details were not available via <see cref="ChatResponse.Usage"/>. 55/// Returns <see langword="null"/> if this information was not available via <see cref="ChatResponse.ModelId"/>. 63/// Returns <see langword="null"/> if usage details were not available via <see cref="ChatResponse.Usage"/>.
ResponseCachingChatClient.cs (5)
32protected override async Task<ChatResponse?> ReadCacheAsync(string key, CancellationToken cancellationToken) 36ChatResponse? response = await base.ReadCacheAsync(key, cancellationToken).ConfigureAwait(false); 75ChatResponse response = updates.ToChatResponse(); 88protected override async Task WriteCacheAsync(string key, ChatResponse value, CancellationToken cancellationToken) 117ChatResponse response = value.ToChatResponse();
ScenarioRun.cs (1)
147ChatResponse modelResponse,
ScenarioRunExtensions.cs (2)
110ChatResponse modelResponse, 174ChatResponse modelResponse,
ScenarioRunResult.cs (5)
20/// <see cref="ScenarioRun.EvaluateAsync(IEnumerable{ChatMessage}, ChatResponse, IEnumerable{Microsoft.Extensions.AI.Evaluation.EvaluationContext}?, CancellationToken)"/> 57ChatResponse modelResponse, 92ChatResponse modelResponse, 144public ChatResponse ModelResponse { get; set; } = modelResponse; 152/// <see cref="ScenarioRun.EvaluateAsync(IEnumerable{ChatMessage}, ChatResponse, IEnumerable{Microsoft.Extensions.AI.Evaluation.EvaluationContext}?, CancellationToken)"/>
SimpleChatClient.cs (3)
22public async override Task<ChatResponse> GetResponseAsync( 27ChatResponse? response = null; 76ChatResponse response = updates.ToChatResponse();
Microsoft.Extensions.AI.Evaluation.Reporting.Tests (4)
ScenarioRunResultTests.cs (4)
302private class ChatResponseComparer : IEqualityComparer<ChatResponse> 306public bool Equals(ChatResponse? x, ChatResponse? y) 311public int GetHashCode(ChatResponse obj)
Microsoft.Extensions.AI.Evaluation.Safety (10)
ChatResponseExtensions.cs (1)
8internal static bool ContainsImageWithSupportedFormat(this ChatResponse response)
CodeVulnerabilityEvaluator.cs (1)
48ChatResponse modelResponse,
ContentHarmEvaluator.cs (1)
50ChatResponse modelResponse,
ContentSafetyChatClient.cs (1)
61public async Task<ChatResponse> GetResponseAsync(
ContentSafetyEvaluator.cs (3)
45ChatResponse modelResponse, 91ChatResponse modelResponse, 144(ChatResponse annotationResponse, TimeSpan annotationDuration) =
GroundednessProEvaluator.cs (1)
49ChatResponse modelResponse,
ProtectedMaterialEvaluator.cs (1)
68ChatResponse modelResponse,
UngroundedAttributesEvaluator.cs (1)
53ChatResponse modelResponse,
Microsoft.Extensions.AI.Integration.Tests (34)
CallCountingChatClient.cs (1)
19public override Task<ChatResponse> GetResponseAsync(
ChatClientIntegrationTests.cs (27)
57var response = await _chatClient.GetResponseAsync("What's the biggest animal?"); 67var response = await _chatClient.GetResponseAsync( 85var response = await _chatClient.GetResponseAsync( 122var response = await _chatClient.GetResponseAsync("Explain in 10 words how AI works"); 182var response = await _chatClient.GetResponseAsync( 200var response = await _chatClient.GetResponseAsync( 235var response = await chatClient.GetResponseAsync(messages, new() 251var response = await chatClient.GetResponseAsync("What is the result of SecretComputation on 42 and 84?", new() 303var response = await chatClient.GetResponseAsync(messages, new() 335var response = await chatClient.GetResponseAsync(messages, new() 344private static void AssertUsageAgainstActivities(ChatResponse response, List<Activity> activities) 471var response = await chatClient.GetResponseAsync("Briefly, what is the most popular tower in Paris?", options); 540var response = await chatClient.GetResponseAsync("How much older is Elsa than Anna? Return the age difference as a single number.", new() 572var response = await chatClient.GetResponseAsync("Are birds real?", new() 593var response = await chatClient.GetResponseAsync("What's the current secret number?", new() 608var firstResponse = await _chatClient.GetResponseAsync([message]); 610var secondResponse = await _chatClient.GetResponseAsync([message]); 624var firstResponse = await chatClient.GetResponseAsync([message]); 629var secondResponse = await chatClient.GetResponseAsync([message]); 635var thirdResponse = await chatClient.GetResponseAsync([message]); 701var response = await chatClient.GetResponseAsync([message]); 708var secondResponse = await chatClient.GetResponseAsync([message]); 740var response = await chatClient.GetResponseAsync([message]); 748var secondResponse = await chatClient.GetResponseAsync([message]); 782var response = await chatClient.GetResponseAsync([message]); 791var secondResponse = await chatClient.GetResponseAsync([message]); 908var response = await chatClient.GetResponseAsync([new(ChatRole.User, "What's the biggest animal?")]);
PromptBasedFunctionCallingChatClient.cs (3)
42public override async Task<ChatResponse> GetResponseAsync( 83var result = await base.GetResponseAsync(chatMessages, options, cancellationToken); 140var response = await GetResponseAsync(messages, options, cancellationToken);
ReducingChatClientTests.cs (1)
75public override async Task<ChatResponse> GetResponseAsync(
test\Libraries\Microsoft.Extensions.AI.Abstractions.Tests\TestChatClient.cs (2)
20public Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, Task<ChatResponse>>? GetResponseAsyncCallback { get; set; } 29public Task<ChatResponse> GetResponseAsync(IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default)
Microsoft.Extensions.AI.Ollama (1)
OllamaChatClient.cs (1)
88public async Task<ChatResponse> GetResponseAsync(
Microsoft.Extensions.AI.Ollama.Tests (8)
OllamaChatClientIntegrationTests.cs (3)
42var response = await chatClient.GetResponseAsync("What is the current secret number? Answer with digits only.", new ChatOptions 77var response = await chatClient.GetResponseAsync("What's the stock price for Microsoft in British pounds?", new ChatOptions 108public override Task<ChatResponse> GetResponseAsync(
OllamaChatClientTests.cs (5)
115var response = await client.GetResponseAsync("hello", new() 208var chatResponse = await streamingResponse.ToChatResponseAsync(); 274var response = await client.GetResponseAsync(messages, new() 374var response = await client.GetResponseAsync("How old is Alice?", new() 465var response = await client.GetResponseAsync(
Microsoft.Extensions.AI.OpenAI (6)
OpenAIAssistantChatClient.cs (1)
77public Task<ChatResponse> GetResponseAsync(
OpenAIChatClient.cs (3)
68public async Task<ChatResponse> GetResponseAsync( 405private static ChatResponse FromOpenAIChatCompletion(ChatCompletion openAICompletion, ChatOptions? options, ChatCompletionOptions chatCompletionOptions) 466var response = new ChatResponse(returnMessage)
OpenAIResponseChatClient.cs (2)
68public async Task<ChatResponse> GetResponseAsync( 81ChatResponse response = new()
Microsoft.Extensions.AI.OpenAI.Tests (12)
OpenAIChatClientTests.cs (10)
160var response = await client.GetResponseAsync("hello", new() 356var response = await client.GetResponseAsync("hello", chatOptions); 518var response = await client.GetResponseAsync("hello", chatOptions); 769var response = await client.GetResponseAsync(messages, new() 874var response = await client.GetResponseAsync(messages); 972var response = await client.GetResponseAsync(messages); 1083var response = await client.GetResponseAsync("How old is Alice?", new() 1167var response = await client.GetResponseAsync("What day is it?", new() 1425var response = await client.GetResponseAsync(messages); 1526var response = await client.GetResponseAsync(
OpenAIResponseClientTests.cs (2)
154var response = await client.GetResponseAsync("hello", new() 407var response = await client.GetResponseAsync("hello", chatOptions);
Microsoft.Extensions.AI.Tests (41)
ChatCompletion\ChatClientStructuredOutputExtensionsTests.cs (9)
23var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(expectedResult, JsonContext2.Default.Animal))) 106var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(expectedResult, JsonContext2.Default.Options))) 167var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(expectedResult, JsonContext2.Default.Options))); 201var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, "This is not valid JSON")); 220var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, "null")); 239var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, [new UriContent("https://example.com", "image/*")])); 259var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(expectedResult, JsonContext2.Default.Options))); 294var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(payload, JsonContext2.Default.Options))); 326var expectedResponse = new ChatResponse(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(expectedResult, jso)));
ChatCompletion\ConfigureOptionsChatClientTests.cs (2)
37ChatResponse expectedResponse = new(); 76var response = await client.GetResponseAsync(Array.Empty<ChatMessage>(), providedOptions, cts.Token);
ChatCompletion\DistributedCachingChatClientTest.cs (15)
47var expectedResponse = new ChatResponse( 96var result1 = await outer.GetResponseAsync("some input", options); 101var result2 = await outer.GetResponseAsync("some input", options); 232var result2 = await outer.GetResponseAsync([input]); 568var result1 = await outer.GetResponseAsync([], new ChatOptions 572var result2 = await outer.GetResponseAsync([], new ChatOptions 583var result3 = await outer.GetResponseAsync([], new ChatOptions 587var result4 = await outer.GetResponseAsync([], new ChatOptions 619var result1 = await outer.GetResponseAsync([], new ChatOptions 623var result2 = await outer.GetResponseAsync([], new ChatOptions 638var expectedResponse = new ChatResponse( 673var result1 = await outer.GetResponseAsync("some input"); 677var result2 = await outer.GetResponseAsync("some input"); 746private static void AssertResponsesEqual(ChatResponse expected, ChatResponse actual)
ChatCompletion\FunctionInvokingChatClientTests.cs (6)
617var response = await client.GetStreamingResponseAsync(messages, options, CancellationToken.None).ToChatResponseAsync(); 659ChatResponse response = await client.GetResponseAsync(messages, options); 784var result = await chatClient.GetResponseAsync(messages, chatOptions); 809Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, ChatResponse> callback = 967var result = await service.GetResponseAsync(new EnumeratedOnceEnumerable<ChatMessage>(chat), options, cts.Token); 1061var result = await service.GetStreamingResponseAsync(new EnumeratedOnceEnumerable<ChatMessage>(chat), options, cts.Token).ToChatResponseAsync();
ChatCompletion\UseDelegateChatClientTests.cs (6)
67ChatResponse response = await client.GetResponseAsync(expectedMessages, expectedOptions, expectedCts.Token); 102var cc = await innerClient.GetResponseAsync(messages, options, cancellationToken); 110ChatResponse response = await client.GetResponseAsync(expectedMessages, expectedOptions, expectedCts.Token); 161ChatResponse response = await client.GetResponseAsync(expectedMessages, expectedOptions, expectedCts.Token); 205var cc = await innerClient.GetResponseAsync(messages, options, cancellationToken); 232ChatResponse response = await client.GetResponseAsync(expectedMessages, expectedOptions, expectedCts.Token);
test\Libraries\Microsoft.Extensions.AI.Abstractions.Tests\TestChatClient.cs (2)
20public Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, Task<ChatResponse>>? GetResponseAsyncCallback { get; set; } 29public Task<ChatResponse> GetResponseAsync(IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default)
TestJsonSerializerContext.cs (1)
13[JsonSerializable(typeof(ChatResponse))]
Microsoft.ML.GenAI.Core (1)
CausalLMPipelineChatClient.cs (1)
36public virtual Task<ChatResponse> GetResponseAsync(IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default)
Microsoft.ML.GenAI.LLaMA (1)
Llama3CausalLMChatClient.cs (1)
27public override Task<ChatResponse> GetResponseAsync(
Microsoft.ML.GenAI.Phi (1)
Phi3\Phi3CausalLMChatClient.cs (1)
32public override Task<ChatResponse> GetResponseAsync(