diff --git a/modules/cms-ai/src/main/java/com/jeesite/modules/cms/ai/config/CmsAiChatConfig.java b/modules/cms-ai/src/main/java/com/jeesite/modules/cms/ai/config/CmsAiChatConfig.java index 006b9883..250ac5a4 100644 --- a/modules/cms-ai/src/main/java/com/jeesite/modules/cms/ai/config/CmsAiChatConfig.java +++ b/modules/cms-ai/src/main/java/com/jeesite/modules/cms/ai/config/CmsAiChatConfig.java @@ -31,16 +31,16 @@ public class CmsAiChatConfig { * 聊天对话客户端 * @author ThinkGem */ - @Bean - public ChatClient chatClient(ChatClient.Builder builder, CmsAiProperties properties) { + @Bean + public ChatClient chatClient(ChatClient.Builder builder, CmsAiProperties properties) { if (StringUtils.isNotBlank(properties.getDefaultSystem())) { builder.defaultSystem(properties.getDefaultSystem()); } if (properties.getToolCalls()) { builder.defaultTools(new CmsAiTools()); } - return builder.build(); - } + return builder.build(); + } /** * 聊天对话数据存储 diff --git a/modules/cms-ai/src/main/java/com/jeesite/modules/cms/ai/config/CmsAiWebMvcConfig.java b/modules/cms-ai/src/main/java/com/jeesite/modules/cms/ai/config/CmsAiWebMvcConfig.java index 943f50b9..44e5ef1b 100644 --- a/modules/cms-ai/src/main/java/com/jeesite/modules/cms/ai/config/CmsAiWebMvcConfig.java +++ b/modules/cms-ai/src/main/java/com/jeesite/modules/cms/ai/config/CmsAiWebMvcConfig.java @@ -18,19 +18,19 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; @Configuration public class CmsAiWebMvcConfig implements WebMvcConfigurer { - @Override - public void configureAsyncSupport(AsyncSupportConfigurer configurer) { - configurer.setTaskExecutor(webMvcAsyncTaskExecutor()); - } + @Override + public void configureAsyncSupport(AsyncSupportConfigurer configurer) { + configurer.setTaskExecutor(webMvcAsyncTaskExecutor()); + } - @Bean - public ThreadPoolTaskExecutor webMvcAsyncTaskExecutor() { - ThreadPoolTaskExecutor bean = new ThreadPoolTaskExecutor(); + @Bean + public ThreadPoolTaskExecutor webMvcAsyncTaskExecutor() { + ThreadPoolTaskExecutor bean = new ThreadPoolTaskExecutor(); bean.setCorePoolSize(Global.getPropertyToInteger("web.taskPool.corePoolSize", "8")); bean.setMaxPoolSize(Global.getPropertyToInteger("web.taskPool.maxPoolSize", "20")); bean.setKeepAliveSeconds(Global.getPropertyToInteger("web.taskPool.keepAliveSeconds", "60")); bean.setQueueCapacity(Global.getPropertyToInteger("web.taskPool.queueCapacity", String.valueOf(Integer.MAX_VALUE))); - bean.setThreadNamePrefix("web-async-"); - return bean; - } + bean.setThreadNamePrefix("web-async-"); + return bean; + } } \ No newline at end of file diff --git a/modules/cms-ai/src/main/java/com/jeesite/modules/cms/ai/config/WebClientThinkConfig.java b/modules/cms-ai/src/main/java/com/jeesite/modules/cms/ai/config/WebClientThinkConfig.java index 6c1e1045..7fe193a8 100644 --- a/modules/cms-ai/src/main/java/com/jeesite/modules/cms/ai/config/WebClientThinkConfig.java +++ b/modules/cms-ai/src/main/java/com/jeesite/modules/cms/ai/config/WebClientThinkConfig.java @@ -36,18 +36,18 @@ public class WebClientThinkConfig { private final Logger logger = LoggerFactory.getLogger(WebClientThinkConfig.class); - @Bean - @ConditionalOnMissingBean - public WebClientCustomizer webClientCustomizerThink() { - return webClientBuilder -> { - ExchangeFilterFunction requestFilter = ExchangeFilterFunction.ofRequestProcessor(clientRequest -> { - logger.trace("Request url: {}: {}", clientRequest.method(), clientRequest.url()); - return Mono.just(clientRequest); - }); - ExchangeFilterFunction responseFilter = ExchangeFilterFunction.ofResponseProcessor(clientResponse -> { - logger.trace("Response status: {}", clientResponse.statusCode()); - AtomicBoolean thinkingFlag = new AtomicBoolean(false); - Flux modifiedBody = clientResponse.bodyToFlux(DataBuffer.class) + @Bean + @ConditionalOnMissingBean + public WebClientCustomizer webClientCustomizerThink() { + return webClientBuilder -> { + ExchangeFilterFunction requestFilter = ExchangeFilterFunction.ofRequestProcessor(clientRequest -> { + logger.trace("Request url: {}: {}", clientRequest.method(), clientRequest.url()); + return Mono.just(clientRequest); + }); + ExchangeFilterFunction responseFilter = ExchangeFilterFunction.ofResponseProcessor(clientResponse -> { + logger.trace("Response status: {}", clientResponse.statusCode()); + AtomicBoolean thinkingFlag = new AtomicBoolean(false); + Flux modifiedBody = clientResponse.bodyToFlux(DataBuffer.class) .map(buf -> { byte[] bytes = new byte[buf.readableByteCount()]; buf.read(bytes); @@ -117,13 +117,13 @@ public class WebClientThinkConfig { byte[] bytes = str.getBytes(StandardCharsets.UTF_8); return new DefaultDataBufferFactory().wrap(bytes); }); - ClientResponse modifiedResponse = ClientResponse.from(clientResponse) + ClientResponse modifiedResponse = ClientResponse.from(clientResponse) .headers(headers -> headers.remove(HttpHeaders.CONTENT_LENGTH)) .body(modifiedBody) .build(); - return Mono.just(modifiedResponse); - }); - webClientBuilder.filter(requestFilter).filter(responseFilter); - }; - } + return Mono.just(modifiedResponse); + }); + webClientBuilder.filter(requestFilter).filter(responseFilter); + }; + } }