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 b429cc3..dbdce6d 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 @@ -10,6 +10,8 @@ import com.artedu.generation.service.LlmModelService; import com.artedu.generation.service.PromptEngine; import com.artedu.generation.service.QianwenClient; import com.baomidou.mybatisplus.core.toolkit.StringUtils; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.MediaType; @@ -329,10 +331,13 @@ public class GenerationController { String answer = getAnswer(top15, external_str); log.info("原问题:{},命中知识库结果:{}", external_str, answer); if(!StringUtils.isBlank(answer)){ - answer = answer.replaceAll("\"", "").replace("[","").replace("]",""); - if(!StringUtils.isBlank(answer)){ - String promptNew = promptEngine.buildAnswerPrompt(answer); - generated = qianwenClient.generate(promptNew, 800); + ObjectMapper mapper = new ObjectMapper(); + List list = mapper.readValue(answer, new TypeReference>(){}); + //answer = answer.replaceAll("\"", "").replace("[","").replace("]",""); + for (String li : list){ + String promptNew = promptEngine.buildAnswerPrompt(li); + String res = qianwenClient.generate(promptNew, 800); + generated = generated + res + "|||"; } } }