From 4c09d01583074ce7c9c8c8c7f235b49473a01381 Mon Sep 17 00:00:00 2001
From: Junjie <DELL@qq.com>
Date: 星期五, 12 十二月 2025 12:43:33 +0800
Subject: [PATCH] #AI
---
src/main/java/com/zy/ai/service/WcsDiagnosisService.java | 35 +++++++++++++++++++++++++++++++++++
1 files changed, 35 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/zy/ai/service/WcsDiagnosisService.java b/src/main/java/com/zy/ai/service/WcsDiagnosisService.java
index 93cecbb..a61d222 100644
--- a/src/main/java/com/zy/ai/service/WcsDiagnosisService.java
+++ b/src/main/java/com/zy/ai/service/WcsDiagnosisService.java
@@ -99,6 +99,41 @@
});
}
+ public void askStream(WcsDiagnosisRequest request, String prompt, SseEmitter emitter) {
+ List<ChatCompletionRequest.Message> messages = new ArrayList<>();
+
+ ChatCompletionRequest.Message system = new ChatCompletionRequest.Message();
+ system.setRole("system");
+ system.setContent(
+ "浣犳槸涓�鍚嶈祫娣� WCS锛堜粨鍌ㄦ帶鍒剁郴缁燂級涓庤嚜鍔ㄥ寲绔嬪簱涓撳锛岀啛鎮夛細鍫嗗灈鏈恒�佽緭閫佺嚎銆佹彁鍗囨満銆佺┛姊溅绛夎澶囩殑浠诲姟鍒嗛厤鍜岃繍琛岄�昏緫锛屼篃鐔熸倝甯歌鐨勭郴缁熷崱姝汇�佷换鍔′笉鎵ц銆佽澶囩┖闂蹭絾鏃犱换鍔$瓑闂妯″紡銆俓n\n" +
+ "鍦ㄥ洖绛旂敤鎴烽棶棰樻椂锛岄渶瑕佺粨鍚堜笅闈㈢粰鍑虹殑绯荤粺褰撳墠涓婁笅鏂囦俊鎭紙浠诲姟銆佽澶囧疄鏃剁姸鎬併�佽澶囬厤缃�佺郴缁熸棩蹇楃瓑锛夛紝浠ョ畝娲併�佹槑纭殑涓枃浣滅瓟锛屽苟鍦ㄩ渶瑕佹椂缁欏嚭鍙墽琛岀殑鎺掓煡寤鸿銆�"
+ );
+ messages.add(system);
+
+ ChatCompletionRequest.Message contextMsg = new ChatCompletionRequest.Message();
+ contextMsg.setRole("user");
+ contextMsg.setContent(buildUserContent(request));
+ messages.add(contextMsg);
+
+ ChatCompletionRequest.Message questionMsg = new ChatCompletionRequest.Message();
+ questionMsg.setRole("user");
+ questionMsg.setContent("銆愮敤鎴锋彁闂�慭n" + (prompt == null ? "" : prompt));
+ messages.add(questionMsg);
+
+ llmChatService.chatStream(messages, 0.2, 2048, s -> {
+ try {
+ String safe = s == null ? "" : s.replace("\r", "").replace("\n", "\\n");
+ if (!safe.isEmpty()) {
+ emitter.send(SseEmitter.event().data(safe));
+ }
+ } catch (Exception ignore) {}
+ }, () -> {
+ try { emitter.complete(); } catch (Exception ignore) {}
+ }, e -> {
+ try { emitter.completeWithError(e); } catch (Exception ignore) {}
+ });
+ }
+
private String buildUserContent(WcsDiagnosisRequest request) {
StringBuilder sb = new StringBuilder();
--
Gitblit v1.9.1