优化修改提示词

main
liu 10 months ago
parent cf4eb1bb18
commit 811ef217b4

@ -44,9 +44,10 @@ public class AnswerQuestionHandler {
/**
*
*
* @return
*/
public String answerSingleQuestion(String question, Map<String,List<String>> detailMap){
public String answerSingleQuestion(String question, Map<String, List<String>> detailMap) {
List<MessageDTO> messageList = new ArrayList<>();
messageList.add(new MessageDTO("system", "现在你是一个政务事项领域的问答大模型.\n" +
"现在有一个问题,根据这个问题我查到了一些政策内容\n" +
@ -62,4 +63,17 @@ public class AnswerQuestionHandler {
log.info("answerQuestion的答案是:{}", answer);
return answer;
}
public String answerSingleQuestionNew(String question, Map<String, List<String>> detailMap) {
String template = "作为AI助手你的任务是帮助用户查找和理解特定政务的政策内容并给于用户答案。在这个场景中你将使用政策内容来回答用户问题{}。请根据政策内容\n" +
"\"\"\"{}\"\"\"\n" +
"并用不超过 100 个词的长度准确和详细的回答用户的问题。";
List<MessageDTO> messageList = new ArrayList<>();
messageList.add(new MessageDTO("user", StrUtil.format(template, question, JSONUtil.toJsonStr(detailMap))));
log.info("answerQuestion的prompt是:{}", JSONUtil.toJsonStr(messageList));
String answer = AiUtil.chatByMessage(messageList);
log.info("answerQuestion的答案是:{}", answer);
return answer;
}
}

@ -345,7 +345,7 @@ public class AskServiceImpl implements AskService {
return SingleTalkResVO.builder().answerText("暂时还不会回答这个问题哦!").build();
}
// 提交GPT,问问题的答案
String answer = answerQuestionHandler.answerSingleQuestion(singleTalkReqVO.getUserTalk(), detailMap);
String answer = answerQuestionHandler.answerSingleQuestionNew(singleTalkReqVO.getUserTalk(), detailMap);
if (StrUtil.isBlank(answer)) {
return SingleTalkResVO.builder().answerText("暂时还不会回答这个问题哦!").build();
}

Loading…
Cancel
Save