19 instantiations of UsageContent
Microsoft.Extensions.AI.Abstractions (2)
ChatCompletion\ChatResponse.cs (1)
120extra.Contents.Add(new UsageContent(usage));
SpeechToText\SpeechToTextResponse.cs (1)
82contents = [.. contents, new UsageContent(usage)];
Microsoft.Extensions.AI.Abstractions.Tests (9)
ChatCompletion\ChatResponseUpdateExtensionsTests.cs (3)
35new() { Contents = [new UsageContent(new() { InputTokenCount = 1, OutputTokenCount = 2 })] }, 36new() { Contents = [new UsageContent(new() { InputTokenCount = 4, OutputTokenCount = 5 })] }, 193new() { Contents = [new UsageContent(new() { TotalTokenCount = 42 })] },
Contents\UsageContentTests.cs (4)
14Assert.Throws<ArgumentNullException>("details", () => new UsageContent(null!)); 20UsageContent c = new(); 37UsageContent c = new(details); 51UsageContent c = new();
SpeechToText\SpeechToTextResponseUpdateExtensionsTests.cs (2)
140new() { Contents = [new UsageContent(new() { TotalTokenCount = 42 })] }, 142new() { Contents = [new UsageContent(new() { InputTokenCount = 12, TotalTokenCount = 24 })] },
Microsoft.Extensions.AI.AzureAIInference (1)
AzureAIInferenceChatClient.cs (1)
212responseUpdate.Contents.Add(new UsageContent(new()
Microsoft.Extensions.AI.Ollama (1)
OllamaChatClient.cs (1)
200update.Contents.Add(new UsageContent(usage));
Microsoft.Extensions.AI.OpenAI (3)
OpenAIAssistantChatClient.cs (1)
187ruUpdate.Contents.Add(new UsageContent(new()
OpenAIChatClient.cs (1)
361responseUpdate.Contents.Add(new UsageContent(usageDetails));
OpenAIResponseChatClient.cs (1)
182Contents = ToUsageDetails(completedUpdate.Response) is { } usage ? [new UsageContent(usage)] : [],
Microsoft.Extensions.AI.Tests (3)
ChatCompletion\DistributedCachingChatClientTest.cs (2)
255new UsageContent(new() { InputTokenCount = 123, OutputTokenCount = 456, TotalTokenCount = 99999 }), 269Contents = [new UsageContent(new() { InputTokenCount = 123, OutputTokenCount = 456, TotalTokenCount = 99999 })],
ChatCompletion\OpenTelemetryChatClientTests.cs (1)
85Contents = [new UsageContent(new()
25 references to UsageContent
Microsoft.Extensions.AI (1)
ChatCompletion\FunctionInvokingChatClient.cs (1)
348if (contents[i] is UsageContent uc)
Microsoft.Extensions.AI.Abstractions (5)
ChatCompletion\ChatResponseExtensions.cs (1)
305case UsageContent usage:
Contents\AIContent.cs (1)
17[JsonDerivedType(typeof(UsageContent), typeDiscriminator: "usage")]
Contents\UsageContent.cs (2)
19/// <summary>Initializes a new instance of the <see cref="UsageContent"/> class with an empty <see cref="UsageDetails"/>.</summary> 25/// <summary>Initializes a new instance of the <see cref="UsageContent"/> class with the specified <see cref="UsageDetails"/> instance.</summary>
SpeechToText\SpeechToTextResponseUpdateExtensions.cs (1)
101case UsageContent usage:
Microsoft.Extensions.AI.Abstractions.Tests (5)
Contents\UsageContentTests.cs (3)
20UsageContent c = new(); 37UsageContent c = new(details); 51UsageContent c = new();
SpeechToText\SpeechToTextResponseTests.cs (2)
246var usage = Assert.IsType<UsageContent>(update.Contents[3]);
Microsoft.Extensions.AI.Evaluation.Safety (1)
AIContentExtensions.cs (1)
11=> content is TextContent || content is UsageContent;
Microsoft.Extensions.AI.Integration.Tests (2)
ChatClientIntegrationTests.cs (2)
150UsageContent usage = chunks.SelectMany(c => c.Contents).OfType<UsageContent>().Single();
Microsoft.Extensions.AI.Ollama.Tests (2)
OllamaChatClientTests.cs (2)
203UsageContent usage = Assert.IsType<UsageContent>(updates[updates.Count - 1].Contents[1]);
Microsoft.Extensions.AI.OpenAI.Tests (6)
OpenAIChatClientTests.cs (4)
263UsageContent usage = updates.SelectMany(u => u.Contents).OfType<UsageContent>().Single(); 1294UsageContent usage = updates.SelectMany(u => u.Contents).OfType<UsageContent>().Single();
OpenAIResponseClientTests.cs (2)
285UsageContent usage = updates.SelectMany(u => u.Contents).OfType<UsageContent>().Single();
Microsoft.Extensions.AI.Tests (3)
ChatCompletion\DistributedCachingChatClientTest.cs (3)
818else if (expectedItemItem is UsageContent expectedUsage) 820var actualUsage = (UsageContent)actualItemItem;