From d1337f767183539b1dceb9f1048fbfe1abfa754c Mon Sep 17 00:00:00 2001 From: robin <850379744@qq.com> Date: Fri, 3 Nov 2023 18:51:11 +0800 Subject: [PATCH] ai result update --- .../chat2db/client/Chat2DBAIStreamClient.java | 15 ------- .../Chat2dbAIEventSourceListener.java | 43 +++---------------- 2 files changed, 6 insertions(+), 52 deletions(-) diff --git a/chat2db-server/chat2db-server-web/chat2db-server-web-api/src/main/java/ai/chat2db/server/web/api/controller/ai/chat2db/client/Chat2DBAIStreamClient.java b/chat2db-server/chat2db-server-web/chat2db-server-web-api/src/main/java/ai/chat2db/server/web/api/controller/ai/chat2db/client/Chat2DBAIStreamClient.java index 5a933e59..6f6b639f 100644 --- a/chat2db-server/chat2db-server-web/chat2db-server-web-api/src/main/java/ai/chat2db/server/web/api/controller/ai/chat2db/client/Chat2DBAIStreamClient.java +++ b/chat2db-server/chat2db-server-web/chat2db-server-web-api/src/main/java/ai/chat2db/server/web/api/controller/ai/chat2db/client/Chat2DBAIStreamClient.java @@ -196,26 +196,11 @@ public class Chat2DBAIStreamClient { log.error("param error:ChatEventSourceListener cannot be empty"); throw new ParamBusinessException(); } - log.info("Chat AI, prompt:{}", chatMessages.get(chatMessages.size() - 1).getContent()); try { ChatCompletion chatCompletion = ChatCompletion.builder() .messages(chatMessages) .stream(true) .build(); - ConfigService configService = ApplicationContextUtil.getBean(ConfigService.class); - DataResult chat2dbModel = configService.find(Chat2dbAIClient.CHAT2DB_OPENAI_MODEL); - String model = Objects.nonNull(chat2dbModel.getData()) && StringUtils.isNotBlank(chat2dbModel.getData().getContent()) ? chat2dbModel.getData().getContent() : AiSqlSourceEnum.OPENAI.getCode(); - AiSqlSourceEnum aiSqlSourceEnum = AiSqlSourceEnum.getByName(model); - switch (aiSqlSourceEnum) { - case BAICHUANAI: - chatCompletion = ChatCompletion.builder().messages(chatMessages).model("Baichuan2-53B").build(); - break; - case ZHIPUAI: - chatCompletion = ChatCompletion.builder().messages(chatMessages).model("chatglm_turbo").build(); - break; - default: - break; - } EventSource.Factory factory = EventSources.createFactory(this.okHttpClient); ObjectMapper mapper = new ObjectMapper(); diff --git a/chat2db-server/chat2db-server-web/chat2db-server-web-api/src/main/java/ai/chat2db/server/web/api/controller/ai/chat2db/listener/Chat2dbAIEventSourceListener.java b/chat2db-server/chat2db-server-web/chat2db-server-web-api/src/main/java/ai/chat2db/server/web/api/controller/ai/chat2db/listener/Chat2dbAIEventSourceListener.java index 56ada3b5..24b0847a 100644 --- a/chat2db-server/chat2db-server-web/chat2db-server-web-api/src/main/java/ai/chat2db/server/web/api/controller/ai/chat2db/listener/Chat2dbAIEventSourceListener.java +++ b/chat2db-server/chat2db-server-web/chat2db-server-web-api/src/main/java/ai/chat2db/server/web/api/controller/ai/chat2db/listener/Chat2dbAIEventSourceListener.java @@ -66,43 +66,12 @@ public class Chat2dbAIEventSourceListener extends EventSourceListener { } ObjectMapper mapper = new ObjectMapper(); mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); - ConfigService configService = ApplicationContextUtil.getBean(ConfigService.class); - DataResult chat2dbModel = configService.find(Chat2dbAIClient.CHAT2DB_OPENAI_MODEL); - String model = Objects.nonNull(chat2dbModel.getData()) && StringUtils.isNotBlank(chat2dbModel.getData().getContent()) ? chat2dbModel.getData().getContent() : AiSqlSourceEnum.OPENAI.getCode(); - AiSqlSourceEnum aiSqlSourceEnum = AiSqlSourceEnum.getByName(model); - String text = ""; - String completionId = null; - // 读取Json - switch (aiSqlSourceEnum) { - case BAICHUANAI: - BaichuanChatCompletions chatCompletions = mapper.readValue(data, BaichuanChatCompletions.class); - for (BaichuanChatMessage message : chatCompletions.getData().getMessages()) { - if (message != null) { - if (message.getContent() != null) { - text = message.getContent(); - } - } - } - break; - case ZHIPUAI: - ZhipuChatCompletions zhipuChatCompletions = mapper.readValue(data, ZhipuChatCompletions.class); - text = zhipuChatCompletions.getData(); - if (Objects.isNull(text)) { - for (FastChatMessage message : zhipuChatCompletions.getBody().getChoices()) { - if (message != null && message.getContent() != null) { - text = message.getContent(); - } - } - } - break; - default: - ChatCompletionResponse completionResponse = mapper.readValue(data, ChatCompletionResponse.class); - text = completionResponse.getChoices().get(0).getDelta() == null - ? completionResponse.getChoices().get(0).getText() - : completionResponse.getChoices().get(0).getDelta().getContent(); - completionId = completionResponse.getId(); - break; - } + ChatCompletionResponse completionResponse = mapper.readValue(data, ChatCompletionResponse.class); + String text = completionResponse.getChoices().get(0).getDelta() == null + ? completionResponse.getChoices().get(0).getText() + : completionResponse.getChoices().get(0).getDelta().getContent(); + String completionId = completionResponse.getId(); + Message message = new Message(); if (text != null) { message.setContent(text);