From 9911b54bff4d1803c014db66695b91b45fa1b8fe Mon Sep 17 00:00:00 2001 From: ruddmslee Date: Mon, 24 Feb 2025 15:22:06 +0900 Subject: [PATCH] =?UTF-8?q?Feat:=20AI=20=EB=AA=A8=EB=8D=B8=20=EB=B3=80?= =?UTF-8?q?=ED=99=94=EC=97=90=20=EB=A7=9E=EA=B2=8C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/ChatService/ChatService.java | 36 +++++++++++++++---- 1 file changed, 30 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/example/SucceSS/service/ChatService/ChatService.java b/src/main/java/com/example/SucceSS/service/ChatService/ChatService.java index a24b87f..018c567 100644 --- a/src/main/java/com/example/SucceSS/service/ChatService/ChatService.java +++ b/src/main/java/com/example/SucceSS/service/ChatService/ChatService.java @@ -75,18 +75,42 @@ private String generateAiResponse(String payload) throws IOException { private static String getCleanResponse(JsonNode node) { String mode = node.get("mode").asText(); String response = null; - if (mode.equals("chat+recommend") || mode.equals("chat")) { + + if (mode.equals("recommend_only")) { node = node.get("response"); if (node != null) { - response = node.asText().replace("\"", "").replace("", "").replace("", "").trim(); - if (mode.equals("chat")) { - int lastIndex = response.lastIndexOf("."); - if (lastIndex != -1) { response = response.substring(0, lastIndex + 1); } - } + return node.asText().replace("\"", "").replace("", "").replace("", "").trim(); + } + else { return "no generated_text"; } + } + + else if(mode.equals("chat+recommend")) { + JsonNode chat = node.get("response"); + JsonNode recommend = node.get("recommendation_msg"); + if (chat != null) { + response = chat.asText().replace("\"", "").replace("", "").replace("", "").trim(); + int lastIndex = response.lastIndexOf("."); + if (lastIndex != -1) { response = response.substring(0, lastIndex + 1); } + } + else { return "no generated_text"; } + if (recommend != null) { + response = response + recommend.asText(); + } + else { return "no generated_text"; } + return response; + } + + else if(mode.equals("chat")) { + JsonNode jsonNode = node.get("response"); + if (jsonNode != null) { + response = jsonNode.asText().replace("\"", "").replace("", "").replace("", "").trim(); + int lastIndex = response.lastIndexOf("."); + if (lastIndex != -1) { response = response.substring(0, lastIndex + 1); } return response; } else { return "no generated_text"; } } + else { return "Error: 잘못된 응답 모드입니다."; } }