diff --git a/llm_adapters.py b/llm_adapters.py index 52012ea..c771bb2 100644 --- a/llm_adapters.py +++ b/llm_adapters.py @@ -291,5 +291,7 @@ def create_llm_adapter( elif fmt == "gemini": # base_url 对 Gemini 暂无用处,可忽略 return GeminiAdapter(api_key, model_name, max_tokens, temperature, timeout) + elif fmt == "阿里云百炼": + return OpenAIAdapter(api_key, base_url, model_name, max_tokens, temperature, timeout) else: raise ValueError(f"Unknown interface_format: {interface_format}") diff --git a/ui/config_tab.py b/ui/config_tab.py index 3d724ac..3f3200a 100644 --- a/ui/config_tab.py +++ b/ui/config_tab.py @@ -76,14 +76,19 @@ def build_ai_config_tab(self): self.base_url_var.set("http://localhost:1234/v1") elif new_value == "OpenAI": self.base_url_var.set("https://api.openai.com/v1") + self.model_name_var.set("gpt-4o-mini") elif new_value == "Azure OpenAI": self.base_url_var.set("https://[az].openai.azure.com/openai/deployments/[model]/chat/completions?api-version=2024-08-01-preview") elif new_value == "DeepSeek": self.base_url_var.set("https://api.deepseek.com/v1") + self.model_name_var.set("deepseek-chat") elif new_value == "Gemini": self.base_url_var.set("") elif new_value == "Azure AI": self.base_url_var.set("https://.services.ai.azure.com/models/chat/completions?api-version=2024-05-01-preview") + elif new_value == "阿里云百炼": + self.base_url_var.set("https://dashscope.aliyuncs.com/compatible-mode/v1") + self.model_name_var.set("qwen-plus") for i in range(7): self.ai_config_tab.grid_rowconfigure(i, weight=0) @@ -103,7 +108,7 @@ def build_ai_config_tab(self): # 3) 接口格式 create_label_with_help(self, parent=self.ai_config_tab, label_text="LLM 接口格式:", tooltip_key="interface_format", row=2, column=0, font=("Microsoft YaHei", 12)) - interface_options = ["DeepSeek", "OpenAI", "Azure OpenAI", "Azure AI", "Ollama", "ML Studio", "Gemini"] + interface_options = ["DeepSeek", "阿里云百炼", "OpenAI", "Azure OpenAI", "Azure AI", "Ollama", "ML Studio", "Gemini"] interface_dropdown = ctk.CTkOptionMenu(self.ai_config_tab, values=interface_options, variable=self.interface_format_var, command=on_interface_format_changed, font=("Microsoft YaHei", 12)) interface_dropdown.grid(row=2, column=1, padx=5, pady=5, columnspan=2, sticky="nsew")