diff --git a/src/main/java/com/yutou/qqbot/QQBotApplication.java b/src/main/java/com/yutou/qqbot/QQBotApplication.java index 849b199..bd93977 100644 --- a/src/main/java/com/yutou/qqbot/QQBotApplication.java +++ b/src/main/java/com/yutou/qqbot/QQBotApplication.java @@ -10,7 +10,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class QQBotApplication { - public static final String version = "QQBot v.1.7.11.5"; + public static final String version = "QQBot v.1.7.12"; public static void main(String[] args) { System.out.println("version = " + version); diff --git a/src/main/java/com/yutou/qqbot/gpt/SiliconGPTManager.java b/src/main/java/com/yutou/qqbot/gpt/SiliconGPTManager.java index 9d6be03..08ab7e4 100644 --- a/src/main/java/com/yutou/qqbot/gpt/SiliconGPTManager.java +++ b/src/main/java/com/yutou/qqbot/gpt/SiliconGPTManager.java @@ -5,6 +5,8 @@ import com.yutou.qqbot.data.baidu.Message; import com.yutou.qqbot.data.gpt.OpenAiBean; import com.yutou.qqbot.http.GPTApi; import com.yutou.qqbot.http.GPTBuilder; +import com.yutou.qqbot.utlis.ConfigTools; +import com.yutou.qqbot.utlis.StringUtils; import lombok.val; import java.io.File; @@ -19,7 +21,12 @@ public class SiliconGPTManager extends AbsGPTManager { private volatile static SiliconGPTManager instance = new SiliconGPTManager(); private SiliconGPTManager() { - setModel("deepseek-ai/DeepSeek-R1-Distill-Qwen-7B"); + val load = ConfigTools.load(ConfigTools.CONFIG, ConfigTools.GPT_SILICON, String.class); + String defModel = "deepseek-ai/DeepSeek-R1-Distill-Qwen-7B"; + if (!StringUtils.isEmpty(load)) { + defModel = load; + } + setModel(defModel); } public static SiliconGPTManager getInstance() { @@ -44,10 +51,10 @@ public class SiliconGPTManager extends AbsGPTManager { } val builder = GPTBuilder.create(model); - List list=getMessageList(user); + List list = getMessageList(user); list.add(Message.create(message)); for (Message msg : list) { - builder.addMessage(msg.getRole(),msg.getContent()); + builder.addMessage(msg.getRole(), msg.getContent()); } val response = GPTApi.getApi().completions(builder.build()).execute(); @@ -70,7 +77,7 @@ public class SiliconGPTManager extends AbsGPTManager { val choice = choices.get(choices.size() - 1); val bot = Message.create(choice.getMessage().getContent(), true); - list.add(bot); + list.add(bot); return bot; } catch (IOException e) { @@ -104,7 +111,7 @@ public class SiliconGPTManager extends AbsGPTManager { } public static void main(String[] args) { - String model="THUDM/glm-4-9b-chat"; + String model = "THUDM/glm-4-9b-chat"; val message = AbsGPTManager.getManager(SiliconGPTManager.class) .setModel(model) .sendMessage("user", "宫廷玉液酒的下一句是什么?"); diff --git a/src/main/java/com/yutou/qqbot/models/Commands/BaiduGPT.java b/src/main/java/com/yutou/qqbot/models/Commands/BaiduGPT.java index 046598c..a1f0285 100644 --- a/src/main/java/com/yutou/qqbot/models/Commands/BaiduGPT.java +++ b/src/main/java/com/yutou/qqbot/models/Commands/BaiduGPT.java @@ -13,6 +13,7 @@ import com.yutou.qqbot.gpt.BaiduGPTManager; import com.yutou.napcat.event.MessageEvent; import com.yutou.qqbot.utlis.ConfigTools; import com.yutou.qqbot.utlis.HttpTools; +import com.yutou.qqbot.utlis.StringUtils; import lombok.val; import java.io.File; @@ -36,6 +37,22 @@ public class BaiduGPT extends Model { }; } + public BaiduGPT() { + val load = ConfigTools.load(ConfigTools.CONFIG, ConfigTools.GPT, String.class); + if(!StringUtils.isEmpty(load)){ + switch (load){ + case "baidu": + gptManager = BaiduGPTManager.class; + break; + case "silicon": + gptManager = SiliconGPTManager.class; + break; + } + }else{ + gptManager = BaiduGPTManager.class; + } + } + @Override public String getModelName() { return "百度文言一心GPT"; diff --git a/src/main/java/com/yutou/qqbot/utlis/ConfigTools.java b/src/main/java/com/yutou/qqbot/utlis/ConfigTools.java index bd07edf..86f3f33 100644 --- a/src/main/java/com/yutou/qqbot/utlis/ConfigTools.java +++ b/src/main/java/com/yutou/qqbot/utlis/ConfigTools.java @@ -34,6 +34,8 @@ public class ConfigTools { public static final String BAIDU_GPT_SECRET_KEY = "baidu.gpt.SecretKey"; public static final String TURNIP_PROPHET_SERVER = "turnip.server"; public static final String TURNIP_PROPHET_SEND_TMP_GROUP = "turnip.send.tmp.group"; + public static final String GPT = "gpt.model"; + public static final String GPT_SILICON = "silicon.gpt.version"; static {