From e2f706a71827e752c84847ed1e3976141a40a0da Mon Sep 17 00:00:00 2001
From: NickBai <876337011@qq.com>
Date: Wed, 30 Jul 2025 14:51:41 +0800
Subject: [PATCH 1/7] =?UTF-8?q?=E6=94=AF=E6=8C=81deepseek=E7=9A=84?=
=?UTF-8?q?=E6=80=9D=E8=80=83=E8=BF=87=E7=A8=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
server/pom.xml | 15 +-
server/sparkx-common/pom.xml | 4 +-
server/sparkx-service/pom.xml | 9 +-
.../service/helper/SseEmitterHelper.java | 137 ++++++++++++------
.../helper/StreamChatModelBuildHelper.java | 1 +
server/sparkx-web/pom.xml | 4 +-
.../src/main/resources/application.yml | 2 +-
server/sparkx-web/src/main/resources/license | 2 +-
8 files changed, 115 insertions(+), 59 deletions(-)
diff --git a/server/pom.xml b/server/pom.xml
index 54f1b47..085d184 100644
--- a/server/pom.xml
+++ b/server/pom.xml
@@ -5,7 +5,7 @@
cn.sparkshop.ai
cn.sparkshop
- 1.1.1
+ 1.1.2
pom
SparkX
基于大语言模型和 RAG 的知识库问答系统。开箱即用、模型中立、灵活编排,支持快速嵌入到第三方业务系统。
@@ -22,7 +22,7 @@
true
17
5.8.26
- 1.1.1
+ 1.1.2
1.18.24
3.4.2
3.5.10.1
@@ -31,13 +31,13 @@
3.5.10.1
9.0.0.CR1
2.18.2
- 1.1.0
+ 1.2.0
1.1.0-beta7
0.64.8
portable-1.8.6
3.1.0
2.9.0
- 1.1.0-rc1
+ 1.2.0
1.21.3
@@ -126,6 +126,13 @@
${langchain4j.version}
+
+ dev.langchain4j
+ langchain4j-core
+ ${langchain4j.version}
+ compile
+
+
dev.langchain4j
langchain4j-document-parser-apache-pdfbox
diff --git a/server/sparkx-common/pom.xml b/server/sparkx-common/pom.xml
index a9e425d..134dde6 100644
--- a/server/sparkx-common/pom.xml
+++ b/server/sparkx-common/pom.xml
@@ -5,11 +5,11 @@
cn.sparkshop.ai
cn.sparkshop
- 1.1.1
+ 1.1.2
sparkx-common
- 1.1.1
+ 1.1.2
jar
diff --git a/server/sparkx-service/pom.xml b/server/sparkx-service/pom.xml
index 356454f..8d83081 100644
--- a/server/sparkx-service/pom.xml
+++ b/server/sparkx-service/pom.xml
@@ -5,11 +5,11 @@
cn.sparkshop.ai
cn.sparkshop
- 1.1.1
+ 1.1.2
sparkx-service
- 1.1.1
+ 1.1.2
jar
@@ -126,6 +126,11 @@
com.squareup.retrofit2
converter-jackson
+
+
+ dev.langchain4j
+ langchain4j-core
+
diff --git a/server/sparkx-service/src/main/java/sparkx/service/helper/SseEmitterHelper.java b/server/sparkx-service/src/main/java/sparkx/service/helper/SseEmitterHelper.java
index bf74be2..fe125ab 100644
--- a/server/sparkx-service/src/main/java/sparkx/service/helper/SseEmitterHelper.java
+++ b/server/sparkx-service/src/main/java/sparkx/service/helper/SseEmitterHelper.java
@@ -12,6 +12,7 @@ package sparkx.service.helper;
import cn.hutool.core.date.TimeInterval;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
+import dev.langchain4j.model.chat.response.PartialThinking;
import dev.langchain4j.service.TokenStream;
import dev.langchain4j.service.tool.ToolExecution;
import lombok.extern.slf4j.Slf4j;
@@ -25,6 +26,7 @@ import sparkx.service.extend.workflow.SendEndCallback;
import java.io.IOException;
import java.util.*;
+import java.util.concurrent.atomic.AtomicBoolean;
@Slf4j
@Component
@@ -45,11 +47,14 @@ public class SseEmitterHelper {
// 消息开始
sendStartSse(emitter);
+ AtomicBoolean hasReasoningContent = new AtomicBoolean(false);
+ AtomicBoolean hasSendStart = new AtomicBoolean(false);
+ AtomicBoolean hasSendEnd = new AtomicBoolean(false);
final TimeInterval timer = new TimeInterval();
tokenStream
+ // 整理并转换召回的片段数据,返回前端
.onRetrieved((retrievedList) -> {
- // 整理并转换召回的片段数据,返回前端
List