ruoyi-modules/ruoyi-chat/src/main/java/org/ruoyi/chat/listener/SSEEventSourceListener.java
@@ -12,6 +12,7 @@ import okhttp3.sse.EventSourceListener; import org.jetbrains.annotations.NotNull; import org.ruoyi.chat.service.chat.IChatCostService; import org.ruoyi.chat.util.SSEUtil; import org.ruoyi.common.chat.entity.chat.ChatCompletionResponse; import org.ruoyi.common.chat.request.ChatRequest; import org.ruoyi.common.core.utils.SpringUtils; @@ -84,10 +85,10 @@ modelName = completionResponse.getModel(); } stringBuffer.append(content); emitter.send(content); emitter.send(data); } } catch (Exception e) { emitter.completeWithError(e); log.error(e.getMessage(), e); } } ruoyi-modules/ruoyi-chat/src/main/java/org/ruoyi/chat/service/chat/impl/SseServiceImpl.java
@@ -11,6 +11,7 @@ import org.ruoyi.chat.service.chat.IChatCostService; import org.ruoyi.chat.service.chat.ISseService; import org.ruoyi.chat.util.IpUtil; import org.ruoyi.chat.util.SSEUtil; import org.ruoyi.common.chat.config.LocalCache; import org.ruoyi.common.chat.entity.Tts.TextToSpeech; import org.ruoyi.common.chat.entity.chat.ChatCompletion; @@ -88,7 +89,7 @@ switchModelAndHandle(chatRequest,sseEmitter); } catch (Exception e) { log.error(e.getMessage(),e); sseEmitter.completeWithError(e); SSEUtil.sendErrorEvent(sseEmitter,e.getMessage()); } return sseEmitter; } ruoyi-modules/ruoyi-chat/src/main/java/org/ruoyi/chat/util/SSEUtil.java
@@ -21,11 +21,8 @@ * @param errorMessage 错误信息 */ public static void sendErrorEvent(ResponseBodyEmitter sseEmitter, String errorMessage) { SseEmitter.SseEventBuilder event = SseEmitter.event() .name("error") .data(errorMessage); try { sseEmitter.send(event); sseEmitter.send(errorMessage); } catch (IOException e) { log.error("SSE发送失败: {}", e.getMessage()); }