Use ReadOnlyMemory<byte> for binary data to eliminate UTF-16 transcoding (#1070)

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com>
Co-authored-by: ericstj <8918108+ericstj@users.noreply.github.com>
Co-authored-by: Eric StJohn <ericstj@microsoft.com>
This commit is contained in:
Copilot 2026-02-19 14:08:05 -08:00 • committed by GitHub
commit 80b1ad21d7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 400 additions and 103 deletions

View file

@ -54,7 +54,7 @@ public class ConformancePrompts
Content = new ImageContentBlock
{
MimeType = "image/png",
Data = TestImageBase64
Data = System.Text.Encoding.UTF8.GetBytes(TestImageBase64)
}
},
new PromptMessage

View file

@ -34,7 +34,7 @@ public class ConformanceResources
{
Uri = "test://static-binary",
MimeType = "image/png",
Blob = TestImageBase64
Blob = System.Text.Encoding.UTF8.GetBytes(TestImageBase64)
};
}

View file

@ -36,7 +36,7 @@ public class ConformanceTools
{
return new ImageContentBlock
{
Data = TestImageBase64,
Data = System.Text.Encoding.UTF8.GetBytes(TestImageBase64),
MimeType = "image/png"
};
}
@ -50,7 +50,7 @@ public class ConformanceTools
{
return new AudioContentBlock
{
Data = TestAudioBase64,
Data = System.Text.Encoding.UTF8.GetBytes(TestAudioBase64),
MimeType = "audio/wav"
};
}
@ -83,7 +83,7 @@ public class ConformanceTools
return
[
new TextContentBlock { Text = "Multiple content types test:" },
new ImageContentBlock { Data = TestImageBase64, MimeType = "image/png" },
new ImageContentBlock { Data = System.Text.Encoding.UTF8.GetBytes(TestImageBase64), MimeType = "image/png" },
new EmbeddedResourceBlock
{
Resource = new TextResourceContents