From 75c98d04e6d2d7576a784a71747077a4b229a6cc Mon Sep 17 00:00:00 2001 From: "qinyong@9artedu.com" Date: Wed, 15 Jul 2026 15:58:35 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0hyde?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/GenerationController.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/backend/generation-service/src/main/java/com/artedu/generation/controller/GenerationController.java b/backend/generation-service/src/main/java/com/artedu/generation/controller/GenerationController.java index dbdce6d..1db6301 100644 --- a/backend/generation-service/src/main/java/com/artedu/generation/controller/GenerationController.java +++ b/backend/generation-service/src/main/java/com/artedu/generation/controller/GenerationController.java @@ -324,7 +324,7 @@ public class GenerationController { } count++; } - + String chatContext = sb.toString(); String generated = ""; //如果最后几条都是客户消息返回不为空,则直接返回结果,否则走原逻辑 if (!StringUtils.isBlank(external_str)){ //不为空 发起知识库的查询 @@ -339,9 +339,20 @@ public class GenerationController { String res = qianwenClient.generate(promptNew, 800); generated = generated + res + "|||"; } + if(StringUtils.isNotBlank(generated)){ + String[] parts = generated.split("\\|\\|\\|"); + if(parts.length<3){ + for (int i = 0; i < 3-parts.length; i++) { + String systemPrompt = promptEngine.buildSystemPrompt(chatContext, staffName); + String generatedNew = qianwenClient.generate(systemPrompt, "", 1200); + generated = generated + generatedNew; + } + } + } + } } - String chatContext = sb.toString(); + if (chatContext == null || chatContext.isEmpty()) { Map err = new HashMap<>(); err.put("type", "error");