This is an automated email from the ASF dual-hosted git repository.

wuzhiguo pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/bigtop-manager.git


The following commit(s) were added to refs/heads/main by this push:
     new 89ceffb  BIGTOP-4222: Add LLM platform QianFan (#65)
89ceffb is described below

commit 89ceffb0b6a4751cf7b4f8008e6bf415198f4d3e
Author: haopeng <[email protected]>
AuthorDate: Thu Sep 12 23:49:34 2024 +0800

    BIGTOP-4222: Add LLM platform QianFan (#65)
---
 .../bigtop-manager-ai-assistant/pom.xml            |  4 ++
 .../ai/assistant/GeneralAssistantFactory.java      |  3 +-
 .../manager/ai/core/AbstractAIAssistant.java       |  5 ++
 .../bigtop/manager/ai/core/enums/PlatformType.java |  3 +-
 .../bigtop-manager-ai-dashscope/pom.xml            |  1 -
 .../manager/ai/dashscope/DashScopeAssistant.java   |  5 --
 .../bigtop/manager/ai/openai/OpenAIAssistant.java  | 26 ---------
 .../pom.xml                                        | 15 ++----
 .../manager/ai/qianfan/QianFanAssistant.java}      | 63 +++++++++-------------
 .../bigtop/manager/ai/qianfan/QianFanToolBox.java} | 38 +++++--------
 bigtop-manager-ai/pom.xml                          |  1 +
 bigtop-manager-bom/pom.xml                         | 11 ++++
 .../server/service/impl/AIChatServiceImpl.java     |  3 +-
 .../src/main/resources/ddl/MySQL-DDL-CREATE.sql    |  3 +-
 pom.xml                                            |  6 +++
 15 files changed, 75 insertions(+), 112 deletions(-)

diff --git a/bigtop-manager-ai/bigtop-manager-ai-assistant/pom.xml 
b/bigtop-manager-ai/bigtop-manager-ai-assistant/pom.xml
index f1810e8..70bb203 100644
--- a/bigtop-manager-ai/bigtop-manager-ai-assistant/pom.xml
+++ b/bigtop-manager-ai/bigtop-manager-ai-assistant/pom.xml
@@ -43,6 +43,10 @@
             <groupId>org.apache.bigtop</groupId>
             <artifactId>bigtop-manager-ai-dashscope</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.apache.bigtop</groupId>
+            <artifactId>bigtop-manager-ai-qianfan</artifactId>
+        </dependency>
         <dependency>
             <groupId>org.apache.bigtop</groupId>
             <artifactId>bigtop-manager-dao</artifactId>
diff --git 
a/bigtop-manager-ai/bigtop-manager-ai-assistant/src/main/java/org/apache/bigtop/manager/ai/assistant/GeneralAssistantFactory.java
 
b/bigtop-manager-ai/bigtop-manager-ai-assistant/src/main/java/org/apache/bigtop/manager/ai/assistant/GeneralAssistantFactory.java
index beffd28..1945ef0 100644
--- 
a/bigtop-manager-ai/bigtop-manager-ai-assistant/src/main/java/org/apache/bigtop/manager/ai/assistant/GeneralAssistantFactory.java
+++ 
b/bigtop-manager-ai/bigtop-manager-ai-assistant/src/main/java/org/apache/bigtop/manager/ai/assistant/GeneralAssistantFactory.java
@@ -28,6 +28,7 @@ import 
org.apache.bigtop.manager.ai.core.provider.AIAssistantConfigProvider;
 import org.apache.bigtop.manager.ai.core.provider.SystemPromptProvider;
 import org.apache.bigtop.manager.ai.dashscope.DashScopeAssistant;
 import org.apache.bigtop.manager.ai.openai.OpenAIAssistant;
+import org.apache.bigtop.manager.ai.qianfan.QianFanAssistant;
 
 import org.apache.commons.lang3.NotImplementedException;
 
@@ -66,8 +67,8 @@ public class GeneralAssistantFactory extends 
AbstractAIAssistantFactory {
                 switch (platformType) {
                     case OPENAI -> OpenAIAssistant.builder();
                     case DASH_SCOPE -> DashScopeAssistant.builder();
+                    case QIANFAN -> QianFanAssistant.builder();
                 };
-
         AIAssistant aiAssistant = builder.id(id)
                 .memoryStore((id == null) ? new InMemoryChatMemoryStore() : 
chatMemoryStore)
                 .withConfigProvider(assistantConfig)
diff --git 
a/bigtop-manager-ai/bigtop-manager-ai-core/src/main/java/org/apache/bigtop/manager/ai/core/AbstractAIAssistant.java
 
b/bigtop-manager-ai/bigtop-manager-ai-core/src/main/java/org/apache/bigtop/manager/ai/core/AbstractAIAssistant.java
index 72e0c6c..5075051 100644
--- 
a/bigtop-manager-ai/bigtop-manager-ai-core/src/main/java/org/apache/bigtop/manager/ai/core/AbstractAIAssistant.java
+++ 
b/bigtop-manager-ai/bigtop-manager-ai-core/src/main/java/org/apache/bigtop/manager/ai/core/AbstractAIAssistant.java
@@ -38,6 +38,11 @@ public abstract class AbstractAIAssistant implements 
AIAssistant {
         return ask("1+1=") != null;
     }
 
+    @Override
+    public Object getId() {
+        return chatMemory.id();
+    }
+
     public abstract static class Builder implements AIAssistant.Builder {
         protected Object id;
 
diff --git 
a/bigtop-manager-ai/bigtop-manager-ai-core/src/main/java/org/apache/bigtop/manager/ai/core/enums/PlatformType.java
 
b/bigtop-manager-ai/bigtop-manager-ai-core/src/main/java/org/apache/bigtop/manager/ai/core/enums/PlatformType.java
index 83029c9..ec7487e 100644
--- 
a/bigtop-manager-ai/bigtop-manager-ai-core/src/main/java/org/apache/bigtop/manager/ai/core/enums/PlatformType.java
+++ 
b/bigtop-manager-ai/bigtop-manager-ai-core/src/main/java/org/apache/bigtop/manager/ai/core/enums/PlatformType.java
@@ -28,7 +28,8 @@ import java.util.stream.Collectors;
 @Getter
 public enum PlatformType {
     OPENAI("openai"),
-    DASH_SCOPE("dashscope");
+    DASH_SCOPE("dashscope"),
+    QIANFAN("qianfan");
 
     private final String value;
 
diff --git a/bigtop-manager-ai/bigtop-manager-ai-dashscope/pom.xml 
b/bigtop-manager-ai/bigtop-manager-ai-dashscope/pom.xml
index 0a7259a..22d195d 100644
--- a/bigtop-manager-ai/bigtop-manager-ai-dashscope/pom.xml
+++ b/bigtop-manager-ai/bigtop-manager-ai-dashscope/pom.xml
@@ -39,7 +39,6 @@
         <dependency>
             <groupId>com.alibaba</groupId>
             <artifactId>dashscope-sdk-java</artifactId>
-            <version>2.16.3</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.slf4j</groupId>
diff --git 
a/bigtop-manager-ai/bigtop-manager-ai-dashscope/src/main/java/org/apache/bigtop/manager/ai/dashscope/DashScopeAssistant.java
 
b/bigtop-manager-ai/bigtop-manager-ai-dashscope/src/main/java/org/apache/bigtop/manager/ai/dashscope/DashScopeAssistant.java
index 0c813e2..441fd38 100644
--- 
a/bigtop-manager-ai/bigtop-manager-ai-dashscope/src/main/java/org/apache/bigtop/manager/ai/dashscope/DashScopeAssistant.java
+++ 
b/bigtop-manager-ai/bigtop-manager-ai-dashscope/src/main/java/org/apache/bigtop/manager/ai/dashscope/DashScopeAssistant.java
@@ -138,11 +138,6 @@ public class DashScopeAssistant extends 
AbstractAIAssistant {
         return new Builder();
     }
 
-    @Override
-    public Object getId() {
-        return dashScopeThreadParam.getThreadId();
-    }
-
     @Override
     public Flux<String> streamAsk(String userMessage) {
         saveMessage(userMessage, MessageSender.USER);
diff --git 
a/bigtop-manager-ai/bigtop-manager-ai-openai/src/main/java/org/apache/bigtop/manager/ai/openai/OpenAIAssistant.java
 
b/bigtop-manager-ai/bigtop-manager-ai-openai/src/main/java/org/apache/bigtop/manager/ai/openai/OpenAIAssistant.java
index d4aed6d..845e00b 100644
--- 
a/bigtop-manager-ai/bigtop-manager-ai-openai/src/main/java/org/apache/bigtop/manager/ai/openai/OpenAIAssistant.java
+++ 
b/bigtop-manager-ai/bigtop-manager-ai-openai/src/main/java/org/apache/bigtop/manager/ai/openai/OpenAIAssistant.java
@@ -20,7 +20,6 @@ package org.apache.bigtop.manager.ai.openai;
 
 import org.apache.bigtop.manager.ai.core.AbstractAIAssistant;
 import org.apache.bigtop.manager.ai.core.enums.PlatformType;
-import 
org.apache.bigtop.manager.ai.core.exception.AssistantConfigNotSetException;
 import org.apache.bigtop.manager.ai.core.factory.AIAssistant;
 
 import dev.langchain4j.data.message.AiMessage;
@@ -56,9 +55,6 @@ public class OpenAIAssistant extends AbstractAIAssistant {
 
     @Override
     public Flux<String> streamAsk(String chatMessage) {
-        if (chatMemory == null || streamingChatLanguageModel == null) {
-            throw new AssistantConfigNotSetException("threadId");
-        }
         chatMemory.add(UserMessage.from(chatMessage));
         return Flux.create(
                 emitter -> 
streamingChatLanguageModel.generate(chatMemory.messages(), new 
StreamingResponseHandler<>() {
@@ -83,9 +79,6 @@ public class OpenAIAssistant extends AbstractAIAssistant {
 
     @Override
     public String ask(String chatMessage) {
-        if (chatMemory == null || chatLanguageModel == null) {
-            throw new AssistantConfigNotSetException("threadId");
-        }
         chatMemory.add(UserMessage.from(chatMessage));
         Response<AiMessage> generate = 
chatLanguageModel.generate(chatMemory.messages());
         String aiMessage = generate.content().text();
@@ -95,28 +88,9 @@ public class OpenAIAssistant extends AbstractAIAssistant {
 
     @Override
     public void setSystemPrompt(String systemPrompt) {
-        if (chatMemory == null) {
-            throw new AssistantConfigNotSetException("threadId");
-        }
         chatMemory.add(SystemMessage.systemMessage(systemPrompt));
     }
 
-    public void setSystemPrompt(SystemMessage systemPrompt) {
-        if (chatMemory == null) {
-            throw new AssistantConfigNotSetException("threadId");
-        }
-        chatMemory.add(systemPrompt);
-    }
-
-    @Override
-    public Object getId() {
-        return chatMemory.id();
-    }
-
-    public void resetMemory() {
-        chatMemory.clear();
-    }
-
     @Override
     public PlatformType getPlatform() {
         return PlatformType.OPENAI;
diff --git a/bigtop-manager-ai/bigtop-manager-ai-dashscope/pom.xml 
b/bigtop-manager-ai/bigtop-manager-ai-qianfan/pom.xml
similarity index 77%
copy from bigtop-manager-ai/bigtop-manager-ai-dashscope/pom.xml
copy to bigtop-manager-ai/bigtop-manager-ai-qianfan/pom.xml
index 0a7259a..471aca3 100644
--- a/bigtop-manager-ai/bigtop-manager-ai-dashscope/pom.xml
+++ b/bigtop-manager-ai/bigtop-manager-ai-qianfan/pom.xml
@@ -25,9 +25,9 @@
         <version>${revision}</version>
     </parent>
 
-    <artifactId>bigtop-manager-ai-dashscope</artifactId>
+    <artifactId>bigtop-manager-ai-qianfan</artifactId>
     <name>${project.artifactId}</name>
-    <description>Bigtop Manager AI DashScope</description>
+    <description>Bigtop Manager AI QianFan</description>
 
     <dependencies>
         <dependency>
@@ -37,15 +37,8 @@
         </dependency>
 
         <dependency>
-            <groupId>com.alibaba</groupId>
-            <artifactId>dashscope-sdk-java</artifactId>
-            <version>2.16.3</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>org.slf4j</groupId>
-                    <artifactId>slf4j-simple</artifactId>
-                </exclusion>
-            </exclusions>
+            <groupId>dev.langchain4j</groupId>
+            <artifactId>langchain4j-qianfan</artifactId>
         </dependency>
     </dependencies>
 </project>
diff --git 
a/bigtop-manager-ai/bigtop-manager-ai-openai/src/main/java/org/apache/bigtop/manager/ai/openai/OpenAIAssistant.java
 
b/bigtop-manager-ai/bigtop-manager-ai-qianfan/src/main/java/org/apache/bigtop/manager/ai/qianfan/QianFanAssistant.java
similarity index 73%
copy from 
bigtop-manager-ai/bigtop-manager-ai-openai/src/main/java/org/apache/bigtop/manager/ai/openai/OpenAIAssistant.java
copy to 
bigtop-manager-ai/bigtop-manager-ai-qianfan/src/main/java/org/apache/bigtop/manager/ai/qianfan/QianFanAssistant.java
index d4aed6d..cfd802b 100644
--- 
a/bigtop-manager-ai/bigtop-manager-ai-openai/src/main/java/org/apache/bigtop/manager/ai/openai/OpenAIAssistant.java
+++ 
b/bigtop-manager-ai/bigtop-manager-ai-qianfan/src/main/java/org/apache/bigtop/manager/ai/qianfan/QianFanAssistant.java
@@ -16,14 +16,14 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.bigtop.manager.ai.openai;
+package org.apache.bigtop.manager.ai.qianfan;
 
 import org.apache.bigtop.manager.ai.core.AbstractAIAssistant;
 import org.apache.bigtop.manager.ai.core.enums.PlatformType;
-import 
org.apache.bigtop.manager.ai.core.exception.AssistantConfigNotSetException;
 import org.apache.bigtop.manager.ai.core.factory.AIAssistant;
 
 import dev.langchain4j.data.message.AiMessage;
+import dev.langchain4j.data.message.ChatMessage;
 import dev.langchain4j.data.message.SystemMessage;
 import dev.langchain4j.data.message.UserMessage;
 import dev.langchain4j.internal.ValidationUtils;
@@ -32,33 +32,34 @@ import dev.langchain4j.memory.chat.MessageWindowChatMemory;
 import dev.langchain4j.model.StreamingResponseHandler;
 import dev.langchain4j.model.chat.ChatLanguageModel;
 import dev.langchain4j.model.chat.StreamingChatLanguageModel;
-import dev.langchain4j.model.openai.OpenAiChatModel;
-import dev.langchain4j.model.openai.OpenAiStreamingChatModel;
 import dev.langchain4j.model.output.Response;
+import dev.langchain4j.model.qianfan.QianfanChatModel;
+import dev.langchain4j.model.qianfan.QianfanStreamingChatModel;
 import reactor.core.publisher.Flux;
 import reactor.core.publisher.FluxSink;
 
-public class OpenAIAssistant extends AbstractAIAssistant {
+public class QianFanAssistant extends AbstractAIAssistant {
 
     private final ChatLanguageModel chatLanguageModel;
     private final StreamingChatLanguageModel streamingChatLanguageModel;
+    private SystemMessage systemMessage;
 
-    private static final String BASE_URL = "https://api.openai.com/v1";;
-
-    public OpenAIAssistant(
+    public QianFanAssistant(
             ChatLanguageModel chatLanguageModel,
             StreamingChatLanguageModel streamingChatLanguageModel,
             ChatMemory chatMemory) {
         super(chatMemory);
         this.chatLanguageModel = chatLanguageModel;
         this.streamingChatLanguageModel = streamingChatLanguageModel;
+        for (ChatMessage chatMessage : chatMemory.messages()) {
+            if (chatMessage instanceof SystemMessage) {
+                this.systemMessage = (SystemMessage) chatMessage;
+            }
+        }
     }
 
     @Override
     public Flux<String> streamAsk(String chatMessage) {
-        if (chatMemory == null || streamingChatLanguageModel == null) {
-            throw new AssistantConfigNotSetException("threadId");
-        }
         chatMemory.add(UserMessage.from(chatMessage));
         return Flux.create(
                 emitter -> 
streamingChatLanguageModel.generate(chatMemory.messages(), new 
StreamingResponseHandler<>() {
@@ -83,9 +84,6 @@ public class OpenAIAssistant extends AbstractAIAssistant {
 
     @Override
     public String ask(String chatMessage) {
-        if (chatMemory == null || chatLanguageModel == null) {
-            throw new AssistantConfigNotSetException("threadId");
-        }
         chatMemory.add(UserMessage.from(chatMessage));
         Response<AiMessage> generate = 
chatLanguageModel.generate(chatMemory.messages());
         String aiMessage = generate.content().text();
@@ -95,31 +93,16 @@ public class OpenAIAssistant extends AbstractAIAssistant {
 
     @Override
     public void setSystemPrompt(String systemPrompt) {
-        if (chatMemory == null) {
-            throw new AssistantConfigNotSetException("threadId");
+        // Multiple system messages are not supported
+        if (this.systemMessage == null) {
+            this.systemMessage = SystemMessage.systemMessage(systemPrompt);
+            chatMemory.add(this.systemMessage);
         }
-        chatMemory.add(SystemMessage.systemMessage(systemPrompt));
-    }
-
-    public void setSystemPrompt(SystemMessage systemPrompt) {
-        if (chatMemory == null) {
-            throw new AssistantConfigNotSetException("threadId");
-        }
-        chatMemory.add(systemPrompt);
-    }
-
-    @Override
-    public Object getId() {
-        return chatMemory.id();
-    }
-
-    public void resetMemory() {
-        chatMemory.clear();
     }
 
     @Override
     public PlatformType getPlatform() {
-        return PlatformType.OPENAI;
+        return PlatformType.QIANFAN;
     }
 
     public static Builder builder() {
@@ -132,14 +115,16 @@ public class OpenAIAssistant extends AbstractAIAssistant {
             String model = 
ValidationUtils.ensureNotNull(configProvider.getModel(), "model");
             String apiKey = ValidationUtils.ensureNotNull(
                     configProvider.getCredentials().get("apiKey"), "apiKey");
-            ChatLanguageModel openAiChatModel = OpenAiChatModel.builder()
+            String secretKey = ValidationUtils.ensureNotNull(
+                    configProvider.getCredentials().get("secretKey"), 
"secretKey");
+            ChatLanguageModel qianfanChatModel = QianfanChatModel.builder()
                     .apiKey(apiKey)
-                    .baseUrl(BASE_URL)
+                    .secretKey(secretKey)
                     .modelName(model)
                     .build();
-            StreamingChatLanguageModel openaiStreamChatModel = 
OpenAiStreamingChatModel.builder()
+            StreamingChatLanguageModel qianfanStreamChatModel = 
QianfanStreamingChatModel.builder()
                     .apiKey(apiKey)
-                    .baseUrl(BASE_URL)
+                    .secretKey(secretKey)
                     .modelName(model)
                     .build();
             MessageWindowChatMemory.Builder builder = 
MessageWindowChatMemory.builder()
@@ -149,7 +134,7 @@ public class OpenAIAssistant extends AbstractAIAssistant {
                 builder.id(id);
             }
             MessageWindowChatMemory chatMemory = builder.build();
-            return new OpenAIAssistant(openAiChatModel, openaiStreamChatModel, 
chatMemory);
+            return new QianFanAssistant(qianfanChatModel, 
qianfanStreamChatModel, chatMemory);
         }
     }
 }
diff --git 
a/bigtop-manager-ai/bigtop-manager-ai-core/src/main/java/org/apache/bigtop/manager/ai/core/enums/PlatformType.java
 
b/bigtop-manager-ai/bigtop-manager-ai-qianfan/src/main/java/org/apache/bigtop/manager/ai/qianfan/QianFanToolBox.java
similarity index 52%
copy from 
bigtop-manager-ai/bigtop-manager-ai-core/src/main/java/org/apache/bigtop/manager/ai/core/enums/PlatformType.java
copy to 
bigtop-manager-ai/bigtop-manager-ai-qianfan/src/main/java/org/apache/bigtop/manager/ai/qianfan/QianFanToolBox.java
index 83029c9..7dd2b9a 100644
--- 
a/bigtop-manager-ai/bigtop-manager-ai-core/src/main/java/org/apache/bigtop/manager/ai/core/enums/PlatformType.java
+++ 
b/bigtop-manager-ai/bigtop-manager-ai-qianfan/src/main/java/org/apache/bigtop/manager/ai/qianfan/QianFanToolBox.java
@@ -16,39 +16,27 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.bigtop.manager.ai.core.enums;
+package org.apache.bigtop.manager.ai.qianfan;
 
-import lombok.Getter;
+import org.apache.bigtop.manager.ai.core.factory.ToolBox;
 
-import java.util.Arrays;
-import java.util.List;
-import java.util.Objects;
-import java.util.stream.Collectors;
-
-@Getter
-public enum PlatformType {
-    OPENAI("openai"),
-    DASH_SCOPE("dashscope");
+import reactor.core.publisher.Flux;
 
-    private final String value;
+import java.util.List;
 
-    PlatformType(String value) {
-        this.value = value;
+public class QianFanToolBox implements ToolBox {
+    @Override
+    public List<String> getTools() {
+        return null;
     }
 
-    public static List<String> getPlatforms() {
-        return Arrays.stream(values()).map(item -> 
item.value).collect(Collectors.toList());
+    @Override
+    public String invoke(String toolName) {
+        return null;
     }
 
-    public static PlatformType getPlatformType(String value) {
-        if (Objects.isNull(value) || value.isEmpty()) {
-            return null;
-        }
-        for (PlatformType platformType : PlatformType.values()) {
-            if (platformType.value.equals(value)) {
-                return platformType;
-            }
-        }
+    @Override
+    public Flux<String> streamInvoke(String toolName) {
         return null;
     }
 }
diff --git a/bigtop-manager-ai/pom.xml b/bigtop-manager-ai/pom.xml
index c731441..d1ee182 100644
--- a/bigtop-manager-ai/pom.xml
+++ b/bigtop-manager-ai/pom.xml
@@ -33,6 +33,7 @@
     <modules>
         <module>bigtop-manager-ai-openai</module>
         <module>bigtop-manager-ai-dashscope</module>
+        <module>bigtop-manager-ai-qianfan</module>
         <module>bigtop-manager-ai-core</module>
         <module>bigtop-manager-ai-assistant</module>
     </modules>
diff --git a/bigtop-manager-bom/pom.xml b/bigtop-manager-bom/pom.xml
index 55ea3d0..7616aa2 100644
--- a/bigtop-manager-bom/pom.xml
+++ b/bigtop-manager-bom/pom.xml
@@ -49,6 +49,7 @@
         <micrometer.version>1.12.4</micrometer.version>
         <jdbc.dm.version>8.1.2.192</jdbc.dm.version>
         <langchain4j.version>0.33.0</langchain4j.version>
+        <dashscope.version>2.16.3</dashscope.version>
         
<mybatis-spring-boot-starter.version>3.0.3</mybatis-spring-boot-starter.version>
         
<pagehelper-spring-boot-starter.version>2.1.0</pagehelper-spring-boot-starter.version>
     </properties>
@@ -248,6 +249,16 @@
                 <artifactId>langchain4j-open-ai</artifactId>
                 <version>${langchain4j.version}</version>
             </dependency>
+            <dependency>
+                <groupId>com.alibaba</groupId>
+                <artifactId>dashscope-sdk-java</artifactId>
+                <version>${dashscope.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>dev.langchain4j</groupId>
+                <artifactId>langchain4j-qianfan</artifactId>
+                <version>${langchain4j.version}</version>
+            </dependency>
         </dependencies>
     </dependencyManagement>
 </project>
diff --git 
a/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/service/impl/AIChatServiceImpl.java
 
b/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/service/impl/AIChatServiceImpl.java
index c4336e8..aea7c02 100644
--- 
a/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/service/impl/AIChatServiceImpl.java
+++ 
b/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/service/impl/AIChatServiceImpl.java
@@ -116,8 +116,7 @@ public class AIChatServiceImpl implements AIChatService {
         AIAssistant aiAssistant = getAiAssistantFactory()
                 .create(
                         
getPlatformType(platformAuthorizedDTO.getPlatformName()),
-                        getAIAssistantConfig(platformAuthorizedDTO, null),
-                        false);
+                        getAIAssistantConfig(platformAuthorizedDTO, null));
         try {
             return aiAssistant.test();
         } catch (Exception e) {
diff --git a/bigtop-manager-server/src/main/resources/ddl/MySQL-DDL-CREATE.sql 
b/bigtop-manager-server/src/main/resources/ddl/MySQL-DDL-CREATE.sql
index fb6c27f..9320c33 100644
--- a/bigtop-manager-server/src/main/resources/ddl/MySQL-DDL-CREATE.sql
+++ b/bigtop-manager-server/src/main/resources/ddl/MySQL-DDL-CREATE.sql
@@ -376,4 +376,5 @@ VALUES (1, now(), now(), 'Administrator', 
'21232f297a57a5a743894a0e4a801fc3', tr
 INSERT INTO bigtop_manager.llm_platform (id,credential,NAME,support_models)
 VALUES
 (1,'{"apiKey": "API 
Key"}','OpenAI','gpt-3.5-turbo,gpt-4,gpt-4o,gpt-3.5-turbo-16k,gpt-4-turbo-preview,gpt-4-32k,gpt-4o-mini'),
-(2,'{"apiKey": "API Key"}','DashScope','qwen-max,qwen-plus,qwen-turbo');
+(2,'{"apiKey": "API Key"}','DashScope','qwen-max,qwen-plus,qwen-turbo'),
+(3,'{"apiKey": "API Key", "secretKey": "Secret 
Key"}','QianFan','Yi-34B-Chat,ERNIE-4.0-8K,ERNIE-3.5-128K,ERNIE-Speed-8K,Llama-2-7B-Chat,Fuyu-8B');
diff --git a/pom.xml b/pom.xml
index bcf37b4..14ec2c4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -142,6 +142,12 @@
                 <version>${project.version}</version>
             </dependency>
 
+            <dependency>
+                <groupId>org.apache.bigtop</groupId>
+                <artifactId>bigtop-manager-ai-qianfan</artifactId>
+                <version>${project.version}</version>
+            </dependency>
+
             <dependency>
                 <groupId>org.apache.bigtop</groupId>
                 <artifactId>bigtop-manager-ai-assistant</artifactId>

Reply via email to