Explorar o código

refactor(ai): 优化 AI聊天消息响应

zrd hai 3 semanas
pai
achega
b0fbec0525

+ 3 - 2
yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/service/chat/AiChatMessageServiceImpl.java

@@ -239,7 +239,8 @@ public class AiChatMessageServiceImpl implements AiChatMessageService {
         String apiKey = DictFrameworkUtils.parseDictDataValue("ai_key", "多轮对话");
         JSONObject requestBody = new JSONObject();
         String kcb = "";
-        if (StrUtil.isNotBlank(conversation.getDifyConversationId())) {
+        if (StrUtil.isNotBlank(conversation.getDifyConversationId()) && !StrUtil.equals("0",
+                conversation.getDifyConversationId())) {
             requestBody.set("conversation_id", conversation.getDifyConversationId());
         } else {
             kcb = getKcb(apiKey);
@@ -302,7 +303,7 @@ public class AiChatMessageServiceImpl implements AiChatMessageService {
                 userId, conversation.getRoleId(), MessageType.ASSISTANT, kcb, sendReqVO.getUseContext(),
                 knowledgeSegments, sendReqVO.getContentType(), sendReqVO.getStateId());
         
-        if (StrUtil.isBlank(conversation.getDifyConversationId()) && StrUtil.equals(conversation.getDifyConversationId(), "0")) {
+        if (StrUtil.isBlank(conversation.getDifyConversationId())) {
             AiChatMessageSendRespVO.Message rs = BeanUtils.toBean(assistantMessage,
                     AiChatMessageSendRespVO.Message.class);
             rs.setDifyConversationId("0");