feat: 1.模型现在可以同时保存多个配置项
2.可在不同步骤使用不同的配置进行处理
This commit is contained in:
+43
-17
@@ -53,23 +53,27 @@ class NovelGeneratorGUI:
|
||||
self.loaded_config = load_config(self.config_file)
|
||||
|
||||
if self.loaded_config:
|
||||
last_llm = self.loaded_config.get("last_interface_format", "OpenAI")
|
||||
last_llm = next(iter(self.loaded_config["llm_configs"].values())).get("interface_format", "OpenAI")
|
||||
|
||||
last_embedding = self.loaded_config.get("last_embedding_interface_format", "OpenAI")
|
||||
else:
|
||||
last_llm = "OpenAI"
|
||||
last_embedding = "OpenAI"
|
||||
|
||||
if self.loaded_config and "llm_configs" in self.loaded_config and last_llm in self.loaded_config["llm_configs"]:
|
||||
llm_conf = self.loaded_config["llm_configs"][last_llm]
|
||||
else:
|
||||
llm_conf = {
|
||||
"api_key": "",
|
||||
"base_url": "https://api.openai.com/v1",
|
||||
"model_name": "gpt-4o-mini",
|
||||
"temperature": 0.7,
|
||||
"max_tokens": 8192,
|
||||
"timeout": 600
|
||||
}
|
||||
# if self.loaded_config and "llm_configs" in self.loaded_config and last_llm in self.loaded_config["llm_configs"]:
|
||||
# llm_conf = next(iter(self.loaded_config["llm_configs"]))
|
||||
# else:
|
||||
# llm_conf = {
|
||||
# "api_key": "",
|
||||
# "base_url": "https://api.openai.com/v1",
|
||||
# "model_name": "gpt-4o-mini",
|
||||
# "temperature": 0.7,
|
||||
# "max_tokens": 8192,
|
||||
# "timeout": 600
|
||||
# }
|
||||
llm_conf = next(iter(self.loaded_config["llm_configs"].values()))
|
||||
choose_configs = self.loaded_config.get("choose_configs", {})
|
||||
|
||||
|
||||
if self.loaded_config and "embedding_configs" in self.loaded_config and last_embedding in self.loaded_config["embedding_configs"]:
|
||||
emb_conf = self.loaded_config["embedding_configs"][last_embedding]
|
||||
@@ -82,17 +86,16 @@ class NovelGeneratorGUI:
|
||||
}
|
||||
|
||||
# -- LLM通用参数 --
|
||||
# self.llm_conf_name = next(iter(self.loaded_config["llm_configs"]))
|
||||
self.api_key_var = ctk.StringVar(value=llm_conf.get("api_key", ""))
|
||||
self.base_url_var = ctk.StringVar(value=llm_conf.get("base_url", "https://api.openai.com/v1"))
|
||||
self.interface_format_var = ctk.StringVar(value=last_llm)
|
||||
self.interface_format_var = ctk.StringVar(value=llm_conf.get("interface_format", "OpenAI"))
|
||||
self.model_name_var = ctk.StringVar(value=llm_conf.get("model_name", "gpt-4o-mini"))
|
||||
self.temperature_var = ctk.DoubleVar(value=llm_conf.get("temperature", 0.7))
|
||||
self.max_tokens_var = ctk.IntVar(value=llm_conf.get("max_tokens", 8192))
|
||||
self.timeout_var = ctk.IntVar(value=llm_conf.get("timeout", 600))
|
||||
self.core_seed_llm_var = ctk.StringVar(value="DeepSeek")
|
||||
self.role_dynamics_llm_var = ctk.StringVar(value="DeepSeek")
|
||||
self.world_building_llm_var = ctk.StringVar(value="DeepSeek")
|
||||
self.three_scene_llm_var = ctk.StringVar(value="DeepSeek")
|
||||
self.interface_config_var = ctk.StringVar(value=next(iter(self.loaded_config["llm_configs"])))
|
||||
|
||||
|
||||
|
||||
# -- Embedding相关 --
|
||||
@@ -102,6 +105,29 @@ class NovelGeneratorGUI:
|
||||
self.embedding_model_name_var = ctk.StringVar(value=emb_conf.get("model_name", "text-embedding-ada-002"))
|
||||
self.embedding_retrieval_k_var = ctk.StringVar(value=str(emb_conf.get("retrieval_k", 4)))
|
||||
|
||||
|
||||
# -- 生成配置相关 --
|
||||
# self.core_seed_llm_var = ctk.StringVar(value=choose_configs.get("core_seed_llm", "DeepSeek"))
|
||||
# self.role_dynamics_llm_var = ctk.StringVar(value=choose_configs.get("role_dynamics_llm", "DeepSeek"))
|
||||
# self.world_building_llm_var = ctk.StringVar(value=choose_configs.get("world_building_llm", "DeepSeek"))
|
||||
# self.three_scene_llm_var = ctk.StringVar(value=choose_configs.get("three_scene_llm", "DeepSeek"))
|
||||
# self.chapter_outline_llm_var = ctk.StringVar(value=choose_configs.get("chapter_outline_llm", "DeepSeek"))
|
||||
# self.summary_llm_var = ctk.StringVar(value=choose_configs.get("summary_llm", "DeepSeek"))
|
||||
# self.character_state_llm_var = ctk.StringVar(value=choose_configs.get("character_state_llm", "DeepSeek"))
|
||||
# self.chapter_content_llm_var = ctk.StringVar(value=choose_configs.get("chapter_content_llm", "DeepSeek"))
|
||||
# self.prompt_draft_llm_var = ctk.StringVar(value=choose_configs.get("prompt_draft_llm", "DeepSeek"))
|
||||
# self.analyze_character_llm_var = ctk.StringVar(value=choose_configs.get("analyze_character_llm", "DeepSeek"))
|
||||
|
||||
self.architecture_llm_var = ctk.StringVar(value=choose_configs.get("architecture_llm", "DeepSeek"))
|
||||
self.chapter_outline_llm_var = ctk.StringVar(value=choose_configs.get("chapter_outline_llm", "DeepSeek"))
|
||||
self.final_chapter_llm_var = ctk.StringVar(value=choose_configs.get("final_chapter_llm", "DeepSeek"))
|
||||
self.consistency_review_llm_var = ctk.StringVar(value=choose_configs.get("consistency_review_llm", "DeepSeek"))
|
||||
self.prompt_draft_llm_var = ctk.StringVar(value=choose_configs.get("prompt_draft_llm", "DeepSeek"))
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# -- 小说参数相关 --
|
||||
if self.loaded_config and "other_params" in self.loaded_config:
|
||||
op = self.loaded_config["other_params"]
|
||||
|
||||
Reference in New Issue
Block a user