57 instantiations of UsageDetails
Microsoft.Extensions.AI (1)
ChatCompletion\FunctionInvokingChatClient.cs (1)
415UsageDetails? totalUsage = activity is { IsAllDataRequested: true } ? new() : null; // tracked usage across all turns, to be used for activity purposes
Microsoft.Extensions.AI.Abstractions (3)
ChatCompletion\ChatResponseExtensions.cs (1)
544(response.Usage ??= new()).Add(usage.Details);
Contents\UsageContent.cs (1)
22_details = new();
SpeechToText\SpeechToTextResponseUpdateExtensions.cs (1)
100(response.Usage ??= new()).Add(usage.Details);
Microsoft.Extensions.AI.Abstractions.Tests (28)
ChatCompletion\ChatResponseTests.cs (2)
69UsageDetails usage = new(); 93Usage = new UsageDetails(),
ChatCompletion\ChatResponseUpdateExtensionsTests.cs (3)
36new() { Contents = [new UsageContent(new() { InputTokenCount = 1, OutputTokenCount = 2 })] }, 37new() { Contents = [new UsageContent(new() { InputTokenCount = 4, OutputTokenCount = 5 })] }, 722new() { Contents = [new UsageContent(new() { TotalTokenCount = 42 })] },
Contents\AIContentTests.cs (1)
72new UsageContent(new UsageDetails { InputTokenCount = 10, OutputTokenCount = 20, TotalTokenCount = 30 }),
Contents\UsageContentTests.cs (3)
36UsageDetails details = new(); 44UsageDetails details2 = new(); 65var content = new UsageContent(new UsageDetails
Embeddings\GeneratedEmbeddingsTests.cs (1)
99UsageDetails usage = new();
SpeechToText\SpeechToTextResponseTests.cs (3)
138UsageDetails usageDetails = new(); 161Usage = new() { InputTokenCount = 42, OutputTokenCount = 84, TotalTokenCount = 126 }, 219Usage = withUsage ? new UsageDetails { InputTokenCount = 100, OutputTokenCount = 200, TotalTokenCount = 300 } : null
SpeechToText\SpeechToTextResponseUpdateExtensionsTests.cs (2)
140new() { Contents = [new UsageContent(new() { TotalTokenCount = 42 })] }, 142new() { Contents = [new UsageContent(new() { InputTokenCount = 12, TotalTokenCount = 24 })] },
UsageDetailsTests.cs (13)
15UsageDetails details = new(); 27UsageDetails details = new() 49UsageDetails details = new(); 56UsageDetails details1 = new() 65UsageDetails details2 = new() 86UsageDetails details1 = new() 92UsageDetails details2 = new() 110UsageDetails details1 = new(); 112UsageDetails details2 = new() 127UsageDetails details1 = new() 132UsageDetails details2 = new() 148UsageDetails details = new() 174UsageDetails details = new()
Microsoft.Extensions.AI.Evaluation.Reporting.Tests (4)
ScenarioRunResultTests.cs (4)
68usage: new UsageDetails { InputTokenCount = 10, OutputTokenCount = 20, TotalTokenCount = 30 }, 76usage: new UsageDetails { InputTokenCount = 20, OutputTokenCount = 30, TotalTokenCount = 50 }, 160usage: new UsageDetails { InputTokenCount = 10, OutputTokenCount = 20, TotalTokenCount = 30 }, 168usage: new UsageDetails { InputTokenCount = 20, OutputTokenCount = 30, TotalTokenCount = 50 },
Microsoft.Extensions.AI.OpenAI (5)
OpenAIAssistantsChatClient.cs (1)
178ruUpdate.Contents.Add(new UsageContent(new()
OpenAIChatClient.cs (1)
642var destination = new UsageDetails
OpenAIEmbeddingGenerator.cs (1)
72new()
OpenAIImageGenerator.cs (1)
166ud = new()
OpenAIResponsesChatClient.cs (1)
1133ud = new()
Microsoft.Extensions.AI.OpenAI.Tests (3)
OpenAIConversionTests.cs (3)
954Usage = new UsageDetails 1170new UsageContent(new UsageDetails 1271new UsageContent(new UsageDetails { TotalTokenCount = 50 })
Microsoft.Extensions.AI.Tests (13)
ChatCompletion\ChatClientStructuredOutputExtensionsTests.cs (2)
29Usage = new(), 106Usage = new(),
ChatCompletion\DistributedCachingChatClientTest.cs (3)
64Usage = new() 256new UsageContent(new() { InputTokenCount = 123, OutputTokenCount = 456, TotalTokenCount = 99999 }), 270Contents = [new UsageContent(new() { InputTokenCount = 123, OutputTokenCount = 456, TotalTokenCount = 99999 })],
ChatCompletion\FunctionInvokingChatClientApprovalsTests.cs (1)
979return new UsageDetails
ChatCompletion\FunctionInvokingChatClientTests.cs (1)
1523return new UsageDetails
ChatCompletion\OpenTelemetryChatClientTests.cs (2)
42Usage = new UsageDetails 82Contents = [new UsageContent(new()
Embeddings\OpenTelemetryEmbeddingGeneratorTests.cs (1)
40Usage = new()
Image\OpenTelemetryImageGeneratorTests.cs (1)
49Usage = new()
SpeechToText\OpenTelemetrySpeechToTextClientTests.cs (2)
47Usage = new() 74new UsageContent(new()
58 references to UsageDetails
Microsoft.Extensions.AI (3)
ChatCompletion\FunctionInvokingChatClient.cs (3)
284UsageDetails? totalUsage = null; // tracked usage across all turns, to be used for the final response 415UsageDetails? totalUsage = activity is { IsAllDataRequested: true } ? new() : null; // tracked usage across all turns, to be used for activity purposes 645private static void AddUsageTags(Activity? activity, UsageDetails? usage)
Microsoft.Extensions.AI.Abstractions (13)
ChatCompletion\ChatResponse.cs (1)
88public UsageDetails? Usage { get; set; }
Contents\UsageContent.cs (5)
17private UsageDetails _details; 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> 28public UsageContent(UsageDetails details) 34public UsageDetails Details
Embeddings\GeneratedEmbeddings.cs (1)
43public UsageDetails? Usage { get; set; }
Image\ImageGenerationResponse.cs (1)
51public UsageDetails? Usage { get; set; }
SpeechToText\SpeechToTextResponse.cs (1)
107public UsageDetails? Usage { get; set; }
UsageDetails.cs (4)
44/// service, it may sum the counts from multiple results to produce an overall <see cref="UsageDetails"/>. 48/// <summary>Adds usage data from another <see cref="UsageDetails"/> into this instance.</summary> 49/// <param name="usage">The source <see cref="UsageDetails"/> with which to augment this instance.</param> 51public void Add(UsageDetails usage)
Microsoft.Extensions.AI.Abstractions.Tests (23)
ChatCompletion\ChatResponseTests.cs (1)
69UsageDetails usage = new();
Contents\UsageContentTests.cs (3)
36UsageDetails details = new(); 44UsageDetails details2 = new(); 54UsageDetails d = c.Details;
Embeddings\GeneratedEmbeddingsTests.cs (1)
99UsageDetails usage = new();
SpeechToText\SpeechToTextResponseTests.cs (1)
138UsageDetails usageDetails = new();
UsageDetailsTests.cs (17)
15UsageDetails details = new(); 27UsageDetails details = new() 49UsageDetails details = new(); 56UsageDetails details1 = new() 65UsageDetails details2 = new() 86UsageDetails details1 = new() 92UsageDetails details2 = new() 110UsageDetails details1 = new(); 112UsageDetails details2 = new() 127UsageDetails details1 = new() 132UsageDetails details2 = new() 148UsageDetails details = new() 159UsageDetails? deserialized = JsonSerializer.Deserialize<UsageDetails>(json, AIJsonUtilities.DefaultOptions); 174UsageDetails details = new() 181UsageDetails? deserialized = JsonSerializer.Deserialize<UsageDetails>(json, AIJsonUtilities.DefaultOptions);
Microsoft.Extensions.AI.Evaluation (1)
EvaluationMetricExtensions.cs (1)
162if (response.Usage is UsageDetails usage)
Microsoft.Extensions.AI.Evaluation.Reporting (3)
ChatTurnDetails.cs (3)
44public UsageDetails? Usage { get; set; } 89UsageDetails? usage = null, 130UsageDetails? usage = null,
Microsoft.Extensions.AI.OpenAI (9)
OpenAIChatClient.cs (2)
640private static UsageDetails FromOpenAIUsage(ChatTokenUsage tokenUsage) 642var destination = new UsageDetails
OpenAIEmbeddingGenerator.cs (1)
71UsageDetails? usage = embeddings.Usage is not null ?
OpenAIImageGenerator.cs (1)
163UsageDetails? ud = null;
OpenAIResponsesChatClient.cs (5)
1127/// <summary>Extract usage details from a <see cref="ResponseResult"/> into a <see cref="UsageDetails"/>.</summary> 1128private static UsageDetails? ToUsageDetails(ResponseResult? responseResult) 1130UsageDetails? ud = null; 1146/// <summary>Converts a <see cref="UsageDetails"/> to a <see cref="ResponseTokenUsage"/>.</summary> 1147internal static ResponseTokenUsage? ToResponseTokenUsage(UsageDetails? usageDetails)
Microsoft.Extensions.AI.Tests (6)
ChatCompletion\FunctionInvokingChatClientApprovalsTests.cs (3)
945var usage = CreateRandomUsage(); 963var actualUsage = result.Usage!; 974private static UsageDetails CreateRandomUsage()
ChatCompletion\FunctionInvokingChatClientTests.cs (3)
1485var usage = CreateRandomUsage(); 1507var actualUsage = result.Usage!; 1518private static UsageDetails CreateRandomUsage()