fix: 修正消息与Anthropic返回的Token统计逻辑,避免零值覆盖并支持缓存Token计算
This commit is contained in:
@@ -29,13 +29,20 @@ public class MessageAggregateRoot : FullAuditedAggregateRoot<Guid>
|
||||
ModelId = modelId;
|
||||
if (tokenUsage is not null)
|
||||
{
|
||||
long inputTokenCount = tokenUsage.PromptTokens
|
||||
?? tokenUsage.InputTokens
|
||||
?? 0;
|
||||
long inputTokenCount =
|
||||
(tokenUsage.PromptTokens.HasValue && tokenUsage.PromptTokens.Value != 0)
|
||||
? tokenUsage.PromptTokens.Value
|
||||
: (tokenUsage.InputTokens.HasValue && tokenUsage.InputTokens.Value != 0)
|
||||
? tokenUsage.InputTokens.Value
|
||||
: 0;
|
||||
|
||||
long outputTokenCount =
|
||||
(tokenUsage.CompletionTokens.HasValue && tokenUsage.CompletionTokens.Value != 0)
|
||||
? tokenUsage.CompletionTokens.Value
|
||||
: (tokenUsage.OutputTokens.HasValue && tokenUsage.OutputTokens.Value != 0)
|
||||
? tokenUsage.OutputTokens.Value
|
||||
: 0;
|
||||
|
||||
long outputTokenCount = tokenUsage.CompletionTokens
|
||||
?? tokenUsage.OutputTokens
|
||||
?? 0;
|
||||
|
||||
this.TokenUsage = new TokenUsageValueObject
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user