From d050fadfee04c5b99c6b30e1605341b9117ce1ac Mon Sep 17 00:00:00 2001 From: liumangmang Date: Mon, 2 Mar 2026 21:07:55 +0800 Subject: [PATCH] =?UTF-8?q?feat(ai):=20=E5=88=87=E6=8D=A2=E5=88=B0DeepSeek?= =?UTF-8?q?=E6=8E=A8=E7=90=86=E6=A8=A1=E5=9E=8B=E5=B9=B6=E4=BC=98=E5=8C=96?= =?UTF-8?q?API=E8=B0=83=E7=94=A8=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将API模型从 deepseek-chat 切换为 deepseek-reasoner - 添加推理过程提示信息显示 - 实现实时显示思维链推理过程 - 优化响应内容收集逻辑 - 更新JSON对象属性设置方法支持多种数据类型 - 修改预设项目SVN地址配置 --- .../java/com/svnlog/DeepSeekLogProcessor.java | 38 ++++++++++++++----- src/main/java/com/svnlog/Main.java | 6 +-- 2 files changed, 31 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/svnlog/DeepSeekLogProcessor.java b/src/main/java/com/svnlog/DeepSeekLogProcessor.java index 0046676..866bf27 100644 --- a/src/main/java/com/svnlog/DeepSeekLogProcessor.java +++ b/src/main/java/com/svnlog/DeepSeekLogProcessor.java @@ -95,6 +95,8 @@ public class DeepSeekLogProcessor { System.out.println(); System.out.println("正在调用DeepSeek API分析日志..."); + System.out.println("(使用 deepseek-reasoner 模型,推理阶段可能需要数十秒,请耐心等待)"); + System.out.println("--- 推理过程 ---"); // 调用DeepSeek API处理日志 String prompt = buildPrompt(combinedContent, period); @@ -216,7 +218,7 @@ public class DeepSeekLogProcessor { */ private static String callDeepSeekAPI(String apiKey, String prompt) throws IOException { JSONObject requestBody = new JSONObject(); - requestBody.put("model", "deepseek-chat"); + requestBody.put("model", "deepseek-reasoner"); // 创建消息对象,包含 role 和 content 字段 JSONObject messageObj = new JSONObject(); @@ -228,9 +230,8 @@ public class DeepSeekLogProcessor { messagesArray.add(messageObj.jsonObject); requestBody.put("messages", messagesArray); - requestBody.put("temperature", 0.7); requestBody.put("max_tokens", 4000); - requestBody.put("stream", Optional.of(true)); // 启用流式输出 + requestBody.put("stream", true); // 启用流式输出 Request request = new Request.Builder() .url(DEEPSEEK_API_URL) @@ -266,13 +267,26 @@ public class DeepSeekLogProcessor { JSONObject choice = chunk.getJSONArray("choices").get(0); if (choice.has("delta")) { JSONObject delta = choice.getJSONObject("delta"); + // 打印思维链推理过程(不计入最终结果) + if (delta.has("reasoning_content")) { + String reasoning = delta.optString("reasoning_content", ""); + if (!reasoning.isEmpty()) { + System.out.print(reasoning); + System.out.flush(); + } + } + // 收集最终回答内容 if (delta.has("content")) { String content = delta.optString("content", ""); - fullResponse.append(content); - chunkCount++; - // 实时打印处理进度 - System.out.print(content); - System.out.flush(); + if (!content.isEmpty()) { + if (chunkCount == 0) { + System.out.println("\n--- 最终结果 ---"); + } + fullResponse.append(content); + chunkCount++; + System.out.print(content); + System.out.flush(); + } } } } @@ -513,11 +527,15 @@ public class DeepSeekLogProcessor { } public void put(String key, int value) { - jsonObject.addProperty(key, String.valueOf(value)); + jsonObject.addProperty(key, value); } public void put(String key, double value) { - jsonObject.addProperty(key, String.valueOf(value)); + jsonObject.addProperty(key, value); + } + + public void put(String key, boolean value) { + jsonObject.addProperty(key, value); } public void put(String key, Object value) { diff --git a/src/main/java/com/svnlog/Main.java b/src/main/java/com/svnlog/Main.java index 70a8552..ba2c18a 100644 --- a/src/main/java/com/svnlog/Main.java +++ b/src/main/java/com/svnlog/Main.java @@ -12,9 +12,9 @@ public class Main { // 预设项目列表 private static final Project[] PRESET_PROJECTS = { - new Project("PRS-7050场站智慧管控", "https://10.6.220.216:48080/svn/houtai/001_后台软件/PRS-7050场站智慧管控/01_开发库/V1.00/src_java"), - new Project("PRS-7950在线巡视", "https://10.6.220.216:48080/svn/houtai/001_后台软件/PRS-7950在线巡视/01_开发库/V2.00/src_java"), - new Project("PRS-7950在线巡视电科院测试版", "https://10.6.220.216:48080/svn/houtai/001_后台软件/PRS-7950在线巡视/01_开发库/V1.00_2024/src_java") + new Project("PRS-7050场站智慧管控", "https://10.6.221.149:48080/svn/houtai/001_后台软件/PRS-7050场站智慧管控/01_开发库/V1.00/src_java"), + new Project("PRS-7950在线巡视", "https://10.6.221.149:48080/svn/houtai/001_后台软件/PRS-7950在线巡视/01_开发库/V2.00/src_java"), + new Project("PRS-7950在线巡视电科院测试版", "https://10.6.221.149:48080/svn/houtai/001_后台软件/PRS-7950在线巡视/01_开发库/V1.00_2024/src_java") }; public static void main(String[] args) {