完善模型返回异常输出消息,将消息返回给客户端(仅用于调试)

This commit is contained in:
thinkgem
2025-10-16 10:58:33 +08:00
parent 317294ed64
commit fb093bac08
2 changed files with 9 additions and 4 deletions

View File

@@ -4,8 +4,8 @@
*/ */
package com.jeesite.modules.cms.ai.config; package com.jeesite.modules.cms.ai.config;
import com.jeesite.common.lang.StringUtils;
import com.jeesite.common.mapper.JsonMapper; import com.jeesite.common.mapper.JsonMapper;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;

View File

@@ -7,6 +7,7 @@ package com.jeesite.modules.cms.ai.service;
import com.jeesite.common.cache.CacheUtils; import com.jeesite.common.cache.CacheUtils;
import com.jeesite.common.collect.ListUtils; import com.jeesite.common.collect.ListUtils;
import com.jeesite.common.collect.MapUtils; import com.jeesite.common.collect.MapUtils;
import com.jeesite.common.config.Global;
import com.jeesite.common.idgen.IdGen; import com.jeesite.common.idgen.IdGen;
import com.jeesite.common.lang.DateUtils; import com.jeesite.common.lang.DateUtils;
import com.jeesite.common.lang.StringUtils; import com.jeesite.common.lang.StringUtils;
@@ -152,7 +153,7 @@ public class CmsAiChatService extends BaseService {
return spec.stream() return spec.stream()
.chatResponse() .chatResponse()
.doOnNext(response -> { .doOnNext(response -> {
if (response.getResult() != null && StringUtils.isNotBlank(response.getResult().getOutput().getText())) { if (StringUtils.isNotBlank(response.getResult().getOutput().getText())) {
AssistantMessage assistantMessage = (AssistantMessage)request.getAttribute("assistantMessage"); AssistantMessage assistantMessage = (AssistantMessage)request.getAttribute("assistantMessage");
AssistantMessage currAssistantMessage = response.getResult().getOutput(); AssistantMessage currAssistantMessage = response.getResult().getOutput();
if (assistantMessage == null) { if (assistantMessage == null) {
@@ -176,8 +177,12 @@ public class CmsAiChatService extends BaseService {
}) })
.onErrorResume(error -> { .onErrorResume(error -> {
String errorMessage = error.getMessage(); String errorMessage = error.getMessage();
if (error instanceof WebClientResponseException webClientError) { if (Global.getPropertyToBoolean("error.page.printErrorInfo", "true")){
errorMessage = webClientError.getResponseBodyAsString(); if (error instanceof WebClientResponseException webClientError) {
errorMessage = webClientError.getResponseBodyAsString();
} else if (error.getCause() instanceof WebClientResponseException webClientError) {
errorMessage = webClientError.getResponseBodyAsString();
}
} }
AssistantMessage assistantMessage = new AssistantMessage(errorMessage); AssistantMessage assistantMessage = new AssistantMessage(errorMessage);
chatMemory.add(conversationId, assistantMessage); chatMemory.add(conversationId, assistantMessage);