From 63b01db83d9aad8a15276b4236a9a22e4aeef065 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期二, 05 五月 2026 12:30:59 +0800
Subject: [PATCH] # Agent数据分析V3.0.1.7

---
 src/main/java/com/zy/ai/service/LlmChatService.java |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/ai/service/LlmChatService.java b/src/main/java/com/zy/ai/service/LlmChatService.java
index 3b7c4ec..e89b1fb 100644
--- a/src/main/java/com/zy/ai/service/LlmChatService.java
+++ b/src/main/java/com/zy/ai/service/LlmChatService.java
@@ -41,6 +41,7 @@
     private final LlmSpringAiClientService llmSpringAiClientService;
     private final AiGatewayService aiGatewayService;
     private final OpenAiChatCompletionsMapper openAiChatCompletionsMapper;
+    private final AiTokenUsageService aiTokenUsageService;
 
     @Value("${llm.base-url:}")
     private String fallbackBaseUrl;
@@ -469,6 +470,16 @@
         item.setExtra(cut(buildExtraPayload(responseObj == null ? null : responseObj.getUsage(), extra), 512));
         item.setCreateTime(new Date());
         llmCallLogService.saveIgnoreError(item);
+
+        // 绱姞 token 鍒扮嫭绔嬪瓨鍌�
+        if (success && responseObj != null && responseObj.getUsage() != null) {
+            ChatCompletionResponse.Usage usage = responseObj.getUsage();
+            aiTokenUsageService.incrementTokens(
+                    usage.getPromptTokens() == null ? 0 : usage.getPromptTokens(),
+                    usage.getCompletionTokens() == null ? 0 : usage.getCompletionTokens(),
+                    usage.getTotalTokens() == null ? 0 : usage.getTotalTokens(),
+                    1);
+        }
     }
 
     private ChatCompletionResponse usageResponse(ChatCompletionResponse.Usage usage) {

--
Gitblit v1.9.1