2 types derived from ChatResponseFormat
Microsoft.Extensions.AI.Abstractions (2)
ChatCompletion\ChatResponseFormatJson.cs (1)
14public sealed class ChatResponseFormatJson : ChatResponseFormat
ChatCompletion\ChatResponseFormatText.cs (1)
13public sealed class ChatResponseFormatText : ChatResponseFormat
52 references to ChatResponseFormat
Microsoft.Extensions.AI (6)
ChatCompletion\ChatClientStructuredOutputExtensions.cs (6)
31/// Optionally specifies whether to set a JSON schema on the <see cref="ChatResponseFormat"/>. 56/// Optionally specifies whether to set a JSON schema on the <see cref="ChatResponseFormat"/>. 78/// Optionally specifies whether to set a JSON schema on the <see cref="ChatResponseFormat"/>. 101/// Optionally specifies whether to set a JSON schema on the <see cref="ChatResponseFormat"/>. 144options.ResponseFormat = ChatResponseFormat.ForJsonSchema( 151options.ResponseFormat = ChatResponseFormat.Json;
Microsoft.Extensions.AI.Abstractions (7)
ChatCompletion\ChatOptions.cs (4)
35/// This may be set to <see cref="ChatResponseFormat.Text"/> to specify that the response should be unstructured text, 36/// to <see cref="ChatResponseFormat.Json"/> to specify that the response should be structured JSON data, or 39/// to honor the request. If the client implementation doesn't recognize the specific kind of <see cref="ChatResponseFormat"/>, 42public ChatResponseFormat? ResponseFormat { get; set; }
ChatCompletion\ChatResponseFormat.cs (1)
18/// <summary>Initializes a new instance of the <see cref="ChatResponseFormat"/> class.</summary>
ChatCompletion\ChatResponseFormatText.cs (2)
10/// Use <see cref="ChatResponseFormat.Text"/> to get an instance of <see cref="ChatResponseFormatText"/>. 16/// <remarks> Use <see cref="ChatResponseFormat.Text"/> to get an instance of <see cref="ChatResponseFormatText"/>.</remarks>
Microsoft.Extensions.AI.Abstractions.Tests (38)
ChatCompletion\ChatOptionsTests.cs (6)
69options.ResponseFormat = ChatResponseFormat.Json; 81Assert.Same(ChatResponseFormat.Json, options.ResponseFormat); 94Assert.Same(ChatResponseFormat.Json, clone.ResponseFormat); 123options.ResponseFormat = ChatResponseFormat.Json; 144Assert.Equal(ChatResponseFormat.Json, deserialized.ResponseFormat); 145Assert.NotSame(ChatResponseFormat.Json, deserialized.ResponseFormat);
ChatCompletion\ChatResponseFormatTests.cs (32)
15Assert.Same(ChatResponseFormat.Text, ChatResponseFormat.Text); 16Assert.Same(ChatResponseFormat.Json, ChatResponseFormat.Json); 48Assert.True(ChatResponseFormat.Text == ChatResponseFormat.Text); 49Assert.True(ChatResponseFormat.Text.Equals(ChatResponseFormat.Text)); 50Assert.Equal(ChatResponseFormat.Text.GetHashCode(), ChatResponseFormat.Text.GetHashCode()); 51Assert.False(ChatResponseFormat.Text.Equals(ChatResponseFormat.Json)); 52Assert.False(ChatResponseFormat.Text.Equals(new ChatResponseFormatJson(null))); 53Assert.False(ChatResponseFormat.Text.Equals(new ChatResponseFormatJson("{}"))); 55Assert.True(ChatResponseFormat.Json == ChatResponseFormat.Json); 56Assert.True(ChatResponseFormat.Json.Equals(ChatResponseFormat.Json)); 57Assert.False(ChatResponseFormat.Json.Equals(ChatResponseFormat.Text)); 58Assert.False(ChatResponseFormat.Json.Equals(new ChatResponseFormatJson("{}"))); 60Assert.True(ChatResponseFormat.Json.Equals(new ChatResponseFormatJson(null))); 61Assert.Equal(ChatResponseFormat.Json.GetHashCode(), new ChatResponseFormatJson(null).GetHashCode()); 83string json = JsonSerializer.Serialize(ChatResponseFormat.Text, TestJsonSerializerContext.Default.ChatResponseFormat); 86ChatResponseFormat? result = JsonSerializer.Deserialize(json, TestJsonSerializerContext.Default.ChatResponseFormat); 87Assert.Equal(ChatResponseFormat.Text, result); 93string json = JsonSerializer.Serialize(ChatResponseFormat.Json, TestJsonSerializerContext.Default.ChatResponseFormat); 96ChatResponseFormat? result = JsonSerializer.Deserialize(json, TestJsonSerializerContext.Default.ChatResponseFormat); 97Assert.Equal(ChatResponseFormat.Json, result); 103string json = JsonSerializer.Serialize(ChatResponseFormat.ForJsonSchema("[1,2,3]", "name", "description"), TestJsonSerializerContext.Default.ChatResponseFormat); 106ChatResponseFormat? result = JsonSerializer.Deserialize(json, TestJsonSerializerContext.Default.ChatResponseFormat); 107Assert.Equal(ChatResponseFormat.ForJsonSchema("[1,2,3]", "name", "description"), result);
Microsoft.Extensions.AI.Tests (1)
ChatCompletion\OpenTelemetryChatClientTests.cs (1)
115ResponseFormat = ChatResponseFormat.Json,