42 instantiations of DataContent
Microsoft.Extensions.AI.Abstractions.Tests (34)
ChatCompletion\ChatMessageTests.cs (4)
144new DataContent("data:text/image;base64,aGVsbG8="), 145new DataContent("data:text/plain;base64,aGVsbG8="), 243new DataContent(new Uri("data:text/plain;base64,aGVsbG8="), "mime-type/2") 247new DataContent(new BinaryData(new[] { 1, 2, 3 }, options: TestJsonSerializerContext.Default.Options), "mime-type/3")
ChatCompletion\ChatResponseUpdateExtensionsTests.cs (1)
128updates.Add(new() { Contents = [new DataContent("data:image/png;base64,aGVsbG8=")] });
ChatCompletion\ChatResponseUpdateTests.cs (3)
92new DataContent("data:image/audio;base64,aGVsbG8="), 93new DataContent("data:image/image;base64,aGVsbG8="), 122new DataContent("data:image/png;base64,aGVsbG8="),
Contents\DataContentTests.cs (16)
46Assert.Throws(exception, () => new DataContent(path)); 58Assert.Throws<ArgumentException>("mediaType", () => new DataContent("data:image/png;base64,aGVsbG8=", type)); 68var content = new DataContent("data:image/png;base64,aGVsbG8=", mediaType); 72content = new DataContent("data:,", mediaType); 76content = new DataContent("data:text/plain,", mediaType); 80content = new DataContent(new Uri("data:text/plain,"), mediaType); 84content = new DataContent(new byte[] { 0, 1, 2 }, mediaType); 88content = new DataContent(content.Uri); 98content = new DataContent("data:image/png;base64,aGVsbG8="); 103content = new DataContent(new Uri("data:image/png;base64,aGVsbG8=")); 114JsonSerializer.Serialize(new DataContent( 209DataContent c = new("data:,", mediaType); 222var content = new DataContent("data:application/octet-stream;base64,AQIDBA==", mediaType); 235var content = new DataContent("data:application/octet-stream;base64,AQIDBA==", mediaType); 248var content = new DataContent(data, "application/octet-stream"); 258var content = new DataContent("data:text/plain,hello world");
SpeechToText\SpeechToTextClientExtensionsTests.cs (3)
28var content = new DataContent("data:audio/wav;base64,AQIDBA=="); 42var content = new DataContent("data:audio/wav;base64,AQIDBA=="); 73new DataContent("data:audio/wav;base64,AQIDBA=="),
SpeechToText\SpeechToTextClientTests.cs (2)
34new DataContent("data:audio/wav;base64,AQIDBA=="), 62new DataContent("data:audio/wav;base64,AQIDBA=="),
SpeechToText\SpeechToTextResponseTests.cs (1)
197new DataContent("data:image/png;base64,AQIDBA==", mediaType: "image/png"),
SpeechToText\SpeechToTextResponseUpdateExtensionsTests.cs (1)
115updates.Add(new() { Contents = [new DataContent("data:image/png;base64,aGVsbG8=")] });
SpeechToText\SpeechToTextResponseUpdateTests.cs (3)
63new DataContent("data:audio/wav;base64,AQIDBA==", "application/octet-stream"), 64new DataContent("data:image/wav;base64,AQIDBA==", "application/octet-stream"), 95new DataContent("data:audio/wav;base64,AQIDBA==", "application/octet-stream")
Microsoft.Extensions.AI.AzureAIInference.Tests (1)
AzureAIInferenceImageEmbeddingGeneratorTests.cs (1)
72DataContent dotnetPng = new(ImageDataUri.GetImageDataUri());
Microsoft.Extensions.AI.Evaluation.Integration.Tests (2)
SafetyEvaluatorTests.cs (2)
313new DataContent(ImageDataUri.GetImageDataUri())], 347new DataContent(ImageDataUri.GetImageDataUri())],
Microsoft.Extensions.AI.Integration.Tests (2)
ChatClientIntegrationTests.cs (2)
178new DataContent(ImageDataUri.GetImageDataUri(), "image/png"), 196new DataContent(ImageDataUri.GetPdfDataUri(), "application/pdf"),
Microsoft.Extensions.AI.OpenAI (2)
OpenAIChatClient.cs (2)
406var dc = new DataContent(audio.AudioBytes.ToMemory(), mimeType); 609contentPart.ImageBytes is not null ? new DataContent(contentPart.ImageBytes.ToMemory(), contentPart.ImageBytesMediaType) :
Microsoft.Extensions.AI.OpenAI.Tests (1)
OpenAIChatClientTests.cs (1)
1531new DataContent(ImageDataUri.GetImageDataUri(), "image/png")
61 references to DataContent
Microsoft.Extensions.AI.Abstractions (10)
Contents\AIContent.cs (1)
10[JsonDerivedType(typeof(DataContent), typeDiscriminator: "data")]
Contents\DataContent.cs (4)
53/// Initializes a new instance of the <see cref="DataContent"/> class. 70/// Initializes a new instance of the <see cref="DataContent"/> class. 113/// Initializes a new instance of the <see cref="DataContent"/> class. 139/// <summary>Gets the data URI for this <see cref="DataContent"/>.</summary>
Contents\UriContent.cs (1)
16/// For data URIs, use <see cref="DataContent"/> instead.
SpeechToText\SpeechToTextClientExtensions.cs (4)
34/// <summary>Generates text from speech providing a single audio speech <see cref="DataContent"/>.</summary> 42DataContent audioSpeechContent, 56/// <summary>Generates text from speech providing a single audio speech <see cref="DataContent"/>.</summary> 64DataContent audioSpeechContent,
Microsoft.Extensions.AI.Abstractions.Tests (26)
ChatCompletion\ChatMessageTests.cs (3)
287var dataContent = deserializedMessage.Contents[1] as DataContent; 295dataContent = deserializedMessage.Contents[2] as DataContent;
ChatCompletion\ChatResponseUpdateTests.cs (4)
145Assert.IsType<DataContent>(result.Contents[1]); 146Assert.Equal("data:image/png;base64,aGVsbG8=", ((DataContent)result.Contents[1]).Uri); 151Assert.IsType<DataContent>(result.Contents[3]); 152Assert.Equal("data"u8.ToArray(), ((DataContent)result.Contents[3]).Data.ToArray());
Contents\DataContentTests.cs (14)
68var content = new DataContent("data:image/png;base64,aGVsbG8=", mediaType); 96DataContent content; 129Assert.Throws<ArgumentNullException>("uri", () => JsonSerializer.Deserialize<DataContent>(json, TestJsonSerializerContext.Default.Options)!); 136var content = JsonSerializer.Deserialize<DataContent>("""{"uri":"data:application/octet-stream;base64,AQIDBA=="}""", TestJsonSerializerContext.Default.Options)!; 144content = JsonSerializer.Deserialize<DataContent>("""{"uri":"data:application/octet-stream;base64,AQIDBA=="}""", TestJsonSerializerContext.Default.Options)!; 150content = JsonSerializer.Deserialize<DataContent>(""" 177var content = JsonSerializer.Deserialize<DataContent>(serialized, TestJsonSerializerContext.Default.Options)!; 209DataContent c = new("data:,", mediaType); 222var content = new DataContent("data:application/octet-stream;base64,AQIDBA==", mediaType); 235var content = new DataContent("data:application/octet-stream;base64,AQIDBA==", mediaType); 248var content = new DataContent(data, "application/octet-stream"); 258var content = new DataContent("data:text/plain,hello world");
SpeechToText\SpeechToTextClientExtensionsTests.cs (4)
28var content = new DataContent("data:audio/wav;base64,AQIDBA=="); 33DataContent? nullContent = null; 42var content = new DataContent("data:audio/wav;base64,AQIDBA=="); 47DataContent? nullContent = null;
SpeechToText\SpeechToTextResponseTests.cs (1)
222Assert.Equal("image/png", Assert.IsType<DataContent>(update.Contents[1]).MediaType);
Microsoft.Extensions.AI.AzureAIInference (6)
AzureAIInferenceChatClient.cs (2)
520case DataContent dataContent when dataContent.HasTopLevelMediaType("image"): 528case DataContent dataContent when dataContent.HasTopLevelMediaType("audio"):
AzureAIInferenceExtensions.cs (1)
33public static IEmbeddingGenerator<DataContent, Embedding<float>> AsIEmbeddingGenerator(
AzureAIInferenceImageEmbeddingGenerator.cs (3)
22IEmbeddingGenerator<DataContent, Embedding<float>> 86IEnumerable<DataContent> values, EmbeddingGenerationOptions? options = null, CancellationToken cancellationToken = default) 120private ImageEmbeddingsOptions ToAzureAIOptions(IEnumerable<DataContent> inputs, EmbeddingGenerationOptions? options, EmbeddingEncodingFormat format)
Microsoft.Extensions.AI.AzureAIInference.Tests (10)
AzureAIInferenceImageEmbeddingGeneratorTests.cs (10)
39IEmbeddingGenerator<DataContent, Embedding<float>> embeddingGenerator = client.AsIEmbeddingGenerator(model); 52Assert.Same(embeddingGenerator, embeddingGenerator.GetService<IEmbeddingGenerator<DataContent, Embedding<float>>>()); 55using IEmbeddingGenerator<DataContent, Embedding<float>> pipeline = embeddingGenerator 61Assert.NotNull(pipeline.GetService<DistributedCachingEmbeddingGenerator<DataContent, Embedding<float>>>()); 62Assert.NotNull(pipeline.GetService<CachingEmbeddingGenerator<DataContent, Embedding<float>>>()); 63Assert.NotNull(pipeline.GetService<OpenTelemetryEmbeddingGenerator<DataContent, Embedding<float>>>()); 66Assert.IsType<OpenTelemetryEmbeddingGenerator<DataContent, Embedding<float>>>(pipeline.GetService<IEmbeddingGenerator<DataContent, Embedding<float>>>()); 72DataContent dotnetPng = new(ImageDataUri.GetImageDataUri()); 106using IEmbeddingGenerator<DataContent, Embedding<float>> generator = new ImageEmbeddingsClient(
Microsoft.Extensions.AI.Evaluation (1)
EvaluationContext.cs (1)
66/// <see cref="TextContent"/> objects for text, <see cref="DataContent"/> or <see cref="UriContent"/> objects for
Microsoft.Extensions.AI.Evaluation.Safety (1)
AIContentExtensions.cs (1)
14(content is DataContent dataContent && IsSupportedImageFormat(dataContent.MediaType));
Microsoft.Extensions.AI.Ollama (1)
OllamaChatClient.cs (1)
407if (item is DataContent dataContent && dataContent.HasTopLevelMediaType("image"))
Microsoft.Extensions.AI.OpenAI (6)
OpenAIChatClient.cs (4)
206case DataContent dataContent when dataContent.HasTopLevelMediaType("image"): 210case DataContent dataContent when dataContent.HasTopLevelMediaType("audio"): 223case DataContent dataContent when dataContent.MediaType.StartsWith("application/pdf", StringComparison.OrdinalIgnoreCase): 406var dc = new DataContent(audio.AudioBytes.ToMemory(), mimeType);
OpenAIResponseChatClient.cs (2)
587case DataContent dataContent when dataContent.HasTopLevelMediaType("image"): 591case DataContent dataContent when dataContent.MediaType.StartsWith("application/pdf", StringComparison.OrdinalIgnoreCase):