diff --git a/src/Libraries/Microsoft.Extensions.AI.Abstractions/Utilities/AIJsonUtilities.Schema.Create.cs b/src/Libraries/Microsoft.Extensions.AI.Abstractions/Utilities/AIJsonUtilities.Schema.Create.cs
index 667b3c4d080..45ded0badc4 100644
--- a/src/Libraries/Microsoft.Extensions.AI.Abstractions/Utilities/AIJsonUtilities.Schema.Create.cs
+++ b/src/Libraries/Microsoft.Extensions.AI.Abstractions/Utilities/AIJsonUtilities.Schema.Create.cs
@@ -188,7 +188,7 @@ public static JsonElement CreateJsonSchema(
}
/// Gets the default JSON schema to be used by types or functions.
- internal static JsonElement DefaultJsonSchema { get; } = ParseJsonElement("{}"u8);
+ internal static JsonElement DefaultJsonSchema { get; } = JsonElement.Parse("{}"u8);
/// Validates the provided JSON schema document.
internal static void ValidateSchemaDocument(JsonElement document, [CallerArgumentExpression("document")] string? paramName = null)
@@ -750,12 +750,6 @@ private static void InsertAtStart(this JsonObject jsonObject, string key, JsonNo
#endif
}
- private static JsonElement ParseJsonElement(ReadOnlySpan utf8Json)
- {
- Utf8JsonReader reader = new(utf8Json);
- return JsonElement.ParseValue(ref reader);
- }
-
///
/// Tries to get the effective default value for a parameter, checking both C# default value syntax and DefaultValueAttribute.
///
diff --git a/src/Libraries/Microsoft.Extensions.AI.OpenAI/MicrosoftExtensionsAIChatExtensions.cs b/src/Libraries/Microsoft.Extensions.AI.OpenAI/MicrosoftExtensionsAIChatExtensions.cs
index acdc42be3e0..40009005cb6 100644
--- a/src/Libraries/Microsoft.Extensions.AI.OpenAI/MicrosoftExtensionsAIChatExtensions.cs
+++ b/src/Libraries/Microsoft.Extensions.AI.OpenAI/MicrosoftExtensionsAIChatExtensions.cs
@@ -234,7 +234,7 @@ static object ToToolResult(ChatMessageContent content)
part.Write(writer, ModelReaderWriterOptions.Json);
}
- return JsonSerializer.Deserialize(ms.GetBuffer().AsSpan(0, (int)ms.Position), AIJsonUtilities.DefaultOptions.GetTypeInfo(typeof(JsonElement)))!;
+ return JsonElement.Parse(ms.GetBuffer().AsSpan(0, (int)ms.Position));
}
break;
diff --git a/test/Libraries/Microsoft.Extensions.AI.Abstractions.Tests/ChatCompletion/ChatResponseFormatTests.cs b/test/Libraries/Microsoft.Extensions.AI.Abstractions.Tests/ChatCompletion/ChatResponseFormatTests.cs
index 420871ca9e6..41fdcde0dfa 100644
--- a/test/Libraries/Microsoft.Extensions.AI.Abstractions.Tests/ChatCompletion/ChatResponseFormatTests.cs
+++ b/test/Libraries/Microsoft.Extensions.AI.Abstractions.Tests/ChatCompletion/ChatResponseFormatTests.cs
@@ -76,7 +76,7 @@ public void Serialization_JsonRoundtrips()
public void Serialization_ForJsonSchemaRoundtrips()
{
string json = JsonSerializer.Serialize(
- ChatResponseFormat.ForJsonSchema(JsonSerializer.Deserialize("[1,2,3]", AIJsonUtilities.DefaultOptions), "name", "description"),
+ ChatResponseFormat.ForJsonSchema(JsonElement.Parse("[1,2,3]"), "name", "description"),
TestJsonSerializerContext.Default.ChatResponseFormat);
Assert.Equal("""{"$type":"json","schema":[1,2,3],"schemaName":"name","schemaDescription":"description"}""", json);
diff --git a/test/Libraries/Microsoft.Extensions.AI.Abstractions.Tests/Contents/AIAnnotationTests.cs b/test/Libraries/Microsoft.Extensions.AI.Abstractions.Tests/Contents/AIAnnotationTests.cs
index 2cfb5c765b7..6e80400310a 100644
--- a/test/Libraries/Microsoft.Extensions.AI.Abstractions.Tests/Contents/AIAnnotationTests.cs
+++ b/test/Libraries/Microsoft.Extensions.AI.Abstractions.Tests/Contents/AIAnnotationTests.cs
@@ -57,7 +57,7 @@ public void Serialization_Roundtrips()
Assert.NotNull(deserialized.AdditionalProperties);
Assert.Single(deserialized.AdditionalProperties);
- Assert.Equal(JsonSerializer.Deserialize("\"value\"", AIJsonUtilities.DefaultOptions).ToString(), deserialized.AdditionalProperties["key"]!.ToString());
+ Assert.Equal(JsonElement.Parse("\"value\"").ToString(), deserialized.AdditionalProperties["key"]!.ToString());
Assert.Null(deserialized.RawRepresentation);
diff --git a/test/Libraries/Microsoft.Extensions.AI.Abstractions.Tests/Contents/CitationAnnotationTests.cs b/test/Libraries/Microsoft.Extensions.AI.Abstractions.Tests/Contents/CitationAnnotationTests.cs
index 08097f3e05e..a110ff67022 100644
--- a/test/Libraries/Microsoft.Extensions.AI.Abstractions.Tests/Contents/CitationAnnotationTests.cs
+++ b/test/Libraries/Microsoft.Extensions.AI.Abstractions.Tests/Contents/CitationAnnotationTests.cs
@@ -83,7 +83,7 @@ public void Serialization_Roundtrips()
Assert.NotNull(deserialized.AdditionalProperties);
Assert.Single(deserialized.AdditionalProperties);
- Assert.Equal(JsonSerializer.Deserialize("\"value\"", AIJsonUtilities.DefaultOptions).ToString(), deserialized.AdditionalProperties["key"]!.ToString());
+ Assert.Equal(JsonElement.Parse("\"value\"").ToString(), deserialized.AdditionalProperties["key"]!.ToString());
Assert.Null(deserialized.RawRepresentation);
Assert.Equal("snippet", deserialized.Snippet);
diff --git a/test/Libraries/Microsoft.Extensions.AI.AzureAIInference.Tests/AzureAIInferenceChatClientTests.cs b/test/Libraries/Microsoft.Extensions.AI.AzureAIInference.Tests/AzureAIInferenceChatClientTests.cs
index 8b9f3d50cc2..1431f5096f5 100644
--- a/test/Libraries/Microsoft.Extensions.AI.AzureAIInference.Tests/AzureAIInferenceChatClientTests.cs
+++ b/test/Libraries/Microsoft.Extensions.AI.AzureAIInference.Tests/AzureAIInferenceChatClientTests.cs
@@ -886,7 +886,7 @@ public async Task ResponseFormat_JsonSchema_NonStreaming()
Assert.NotNull(await client.GetResponseAsync("hello", new()
{
- ResponseFormat = ChatResponseFormat.ForJsonSchema(JsonSerializer.Deserialize("""
+ ResponseFormat = ChatResponseFormat.ForJsonSchema(JsonElement.Parse("""
{
"type": "object",
"properties": {
diff --git a/test/Libraries/Microsoft.Extensions.AI.Integration.Tests/ChatClientIntegrationTests.cs b/test/Libraries/Microsoft.Extensions.AI.Integration.Tests/ChatClientIntegrationTests.cs
index 992e86a1184..7b1dd10a2bd 100644
--- a/test/Libraries/Microsoft.Extensions.AI.Integration.Tests/ChatClientIntegrationTests.cs
+++ b/test/Libraries/Microsoft.Extensions.AI.Integration.Tests/ChatClientIntegrationTests.cs
@@ -518,7 +518,7 @@ private sealed class CustomAIFunction(string name, string jsonSchema, IReadOnlyD
{
public override string Name => name;
public override IReadOnlyDictionary AdditionalProperties => additionalProperties;
- public override JsonElement JsonSchema { get; } = JsonSerializer.Deserialize(jsonSchema, AIJsonUtilities.DefaultOptions);
+ public override JsonElement JsonSchema { get; } = JsonElement.Parse(jsonSchema);
protected override ValueTask