7 instantiations of ChatResponseFormatJson
Microsoft.Extensions.AI.Abstractions (2)
ChatCompletion\ChatResponseFormat.cs (2)
27public static ChatResponseFormatJson Json { get; } = new(schema: null); 36new(schema,
Microsoft.Extensions.AI.Abstractions.Tests (5)
ChatCompletion\ChatResponseFormatTests.cs (5)
24Assert.Throws<ArgumentException>("schemaName", () => new ChatResponseFormatJson(null, "name")); 25Assert.Throws<ArgumentException>("schemaDescription", () => new ChatResponseFormatJson(null, null, "description")); 26Assert.Throws<ArgumentException>("schemaName", () => new ChatResponseFormatJson(null, "name", "description")); 32ChatResponseFormatJson f = new(null); 41ChatResponseFormatJson f = new(EmptySchema, "name", "description");
37 references to ChatResponseFormatJson
Microsoft.Extensions.AI (1)
ChatCompletion\OpenTelemetryChatClient.cs (1)
302case ChatResponseFormatJson:
Microsoft.Extensions.AI.Abstractions (12)
ChatCompletion\ChatOptions.cs (1)
71/// an instance of <see cref="ChatResponseFormatJson"/> constructed with a specific JSON schema to request that the
ChatCompletion\ChatResponseFormat.cs (5)
12[JsonDerivedType(typeof(ChatResponseFormatJson), typeDiscriminator: "json")] 27public static ChatResponseFormatJson Json { get; } = new(schema: null); 29/// <summary>Creates a <see cref="ChatResponseFormatJson"/> representing structured JSON data with the specified schema.</summary> 33/// <returns>The <see cref="ChatResponseFormatJson"/> instance.</returns> 34public static ChatResponseFormatJson ForJsonSchema(
ChatCompletion\ChatResponseFormatJson.cs (1)
15/// <summary>Initializes a new instance of the <see cref="ChatResponseFormatJson"/> class with the specified schema.</summary>
Utilities\AIJsonSchemaTransformCache.cs (5)
16/// This cache stores weak references from AI abstractions that declare JSON schemas such as <see cref="AIFunction"/> or <see cref="ChatResponseFormatJson"/> 27private readonly ConditionalWeakTable<ChatResponseFormatJson, object> _responseFormatCache = new(); 30private readonly ConditionalWeakTable<ChatResponseFormatJson, object>.CreateValueCallback _responseFormatCreateValueCallback; 67/// Gets or creates a transformed JSON schema for the specified <see cref="ChatResponseFormatJson"/> instance. 71public JsonElement? GetOrCreateTransformedSchema(ChatResponseFormatJson responseFormat)
Microsoft.Extensions.AI.Abstractions.Tests (8)
ChatCompletion\ChatOptionsTests.cs (1)
180Assert.IsType<ChatResponseFormatJson>(deserialized.ResponseFormat);
ChatCompletion\ChatResponseFormatTests.cs (6)
32ChatResponseFormatJson f = new(null); 41ChatResponseFormatJson f = new(EmptySchema, "name", "description"); 64var actual = Assert.IsType<ChatResponseFormatJson>(result); 79var actual = Assert.IsType<ChatResponseFormatJson>(result);
Utilities\AIJsonSchemaTransformCacheTests.cs (1)
65ChatResponseFormatJson responseFormat = ChatResponseFormat.ForJsonSchema(schema);
Microsoft.Extensions.AI.AzureAIInference (1)
AzureAIInferenceChatClient.cs (1)
379else if (options.ResponseFormat is ChatResponseFormatJson json)
Microsoft.Extensions.AI.Integration.Tests (2)
ChatClientIntegrationTests.cs (2)
943var responseFormat = Assert.IsType<ChatResponseFormatJson>(Assert.Single(capturedOptions)!.ResponseFormat);
Microsoft.Extensions.AI.Ollama (1)
OllamaChatClient.cs (1)
298if (format is ChatResponseFormatJson jsonFormat)
Microsoft.Extensions.AI.OpenAI (2)
OpenAIChatClient.cs (1)
551else if (options.ResponseFormat is ChatResponseFormatJson jsonFormat)
OpenAIResponseChatClient.cs (1)
401else if (options.ResponseFormat is ChatResponseFormatJson jsonFormat)
Microsoft.Extensions.AI.Tests (10)
ChatCompletion\ChatClientStructuredOutputExtensionsTests.cs (10)
36var responseFormat = Assert.IsType<ChatResponseFormatJson>(options!.ResponseFormat); 119var responseFormat = Assert.IsType<ChatResponseFormatJson>(options!.ResponseFormat); 173var responseFormat = Assert.IsType<ChatResponseFormatJson>(options!.ResponseFormat); 265var responseFormat = Assert.IsType<ChatResponseFormatJson>(options!.ResponseFormat); 335var responseFormat = Assert.IsType<ChatResponseFormatJson>(options!.ResponseFormat);