10 writes to AdditionalCounts
Microsoft.Extensions.AI.Abstractions (1)
UsageDetails.cs (1)
65AdditionalCounts = new(countsToAdd);
Microsoft.Extensions.AI.Abstractions.Tests (4)
UsageDetailsTests.cs (4)
34AdditionalCounts = new() { ["custom"] = 100 } 129AdditionalCounts = new() { ["key1"] = 10, ["key2"] = 20 } 134AdditionalCounts = new() { ["key2"] = 30, ["key3"] = 40 } 155AdditionalCounts = new() { ["custom"] = 100 }
Microsoft.Extensions.AI.OpenAI (2)
OpenAIChatClient.cs (1)
649AdditionalCounts = [],
OpenAIImageGenerator.cs (1)
175ud.AdditionalCounts ??= [];
Microsoft.Extensions.AI.Tests (3)
ChatCompletion\DistributedCachingChatClientTest.cs (1)
69AdditionalCounts = new() { ["someValue"] = 1_234_567 }
ChatCompletion\FunctionInvokingChatClientApprovalsTests.cs (1)
931AdditionalCounts = new() { ["firstValue"] = value, ["secondValue"] = value },
ChatCompletion\FunctionInvokingChatClientTests.cs (1)
1528AdditionalCounts = new() { ["firstValue"] = value, ["secondValue"] = value },
38 references to AdditionalCounts
Microsoft.Extensions.AI.Abstractions (5)
UsageDetails.cs (5)
61if (usage.AdditionalCounts is { } countsToAdd) 63if (AdditionalCounts is null) 71AdditionalCounts[kvp.Key] = AdditionalCounts.TryGetValue(kvp.Key, out var existingValue) ? 112if (AdditionalCounts is { } additionalCounts)
Microsoft.Extensions.AI.Abstractions.Tests (10)
Contents\UsageContentTests.cs (1)
30Assert.Null(c.Details.AdditionalCounts);
UsageDetailsTests.cs (9)
21Assert.Null(details.AdditionalCounts); 42Assert.NotNull(details.AdditionalCounts); 43Assert.Equal(100, details.AdditionalCounts["custom"]); 139Assert.NotNull(details1.AdditionalCounts); 140Assert.Equal(10, details1.AdditionalCounts["key1"]); 141Assert.Equal(50, details1.AdditionalCounts["key2"]); 142Assert.Equal(40, details1.AdditionalCounts["key3"]); 167Assert.NotNull(deserialized.AdditionalCounts); 168Assert.Equal(100, deserialized.AdditionalCounts["custom"]);
Microsoft.Extensions.AI.OpenAI (4)
OpenAIChatClient.cs (1)
652var counts = destination.AdditionalCounts;
OpenAIImageGenerator.cs (2)
176ud.AdditionalCounts.Add($"{nameof(usage.InputTokenDetails)}.{nameof(inputDetails.ImageTokenCount)}", inputDetails.ImageTokenCount); 177ud.AdditionalCounts.Add($"{nameof(usage.InputTokenDetails)}.{nameof(inputDetails.TextTokenCount)}", inputDetails.TextTokenCount);
OpenAIResponsesChatClient.cs (1)
1147if (usageDetails.AdditionalCounts is { } additionalCounts)
Microsoft.Extensions.AI.OpenAI.Tests (11)
OpenAIChatClientTests.cs (10)
182}, response.Usage.AdditionalCounts); 270}, usage.Details.AdditionalCounts); 856}, response.Usage.AdditionalCounts); 953}, response.Usage.AdditionalCounts); 1051}, response.Usage.AdditionalCounts); 1163}, response.Usage.AdditionalCounts); 1247}, response.Usage.AdditionalCounts); 1363}, usage.Details.AdditionalCounts); 1504}, response.Usage.AdditionalCounts); 1619}, response.Usage.AdditionalCounts);
OpenAIResponseClientTests.cs (1)
4571Assert.Null(response.Usage.AdditionalCounts);
Microsoft.Extensions.AI.Tests (8)
ChatCompletion\DistributedCachingChatClientTest.cs (2)
796Assert.Equal(expected.Usage?.AdditionalCounts, actual.Usage?.AdditionalCounts);
ChatCompletion\FunctionInvokingChatClientApprovalsTests.cs (3)
914Assert.Equal(2, actualUsage.AdditionalCounts!.Count); 915Assert.Equal(expectedTotalTokenCounts, actualUsage.AdditionalCounts["firstValue"]); 916Assert.Equal(expectedTotalTokenCounts, actualUsage.AdditionalCounts["secondValue"]);
ChatCompletion\FunctionInvokingChatClientTests.cs (3)
1511Assert.Equal(2, actualUsage.AdditionalCounts!.Count); 1512Assert.Equal(expectedTotalTokenCounts, actualUsage.AdditionalCounts["firstValue"]); 1513Assert.Equal(expectedTotalTokenCounts, actualUsage.AdditionalCounts["secondValue"]);