diff --git a/README.md b/README.md index 3a9678e7..e9795319 100644 --- a/README.md +++ b/README.md @@ -476,7 +476,7 @@ docker compose down -v **配置示例:** ``` - 快速思維模型: gpt-5-mini-2025-08-07 + 快速思維模型: gpt-5-mini 快速思維 Base URL: https://api.openai.com/v1 快速思維 API Key: sk-your-openai-key @@ -566,7 +566,7 @@ curl -X POST http://localhost:8000/api/analyze \ "analysis_date": "2024-01-15", "research_depth": 2, "deep_think_llm": "claude-sonnet-4-5", - "quick_think_llm": "gpt-5-mini-2025-08-07", + "quick_think_llm": "gpt-5-mini", "analysts": ["market", "sentiment", "news", "fundamental"], "quick_think_base_url": "https://api.openai.com/v1", "deep_think_base_url": "https://api.anthropic.com/v1", diff --git a/backend/app/core/config.py b/backend/app/core/config.py index 393b5726..a71273fd 100644 --- a/backend/app/core/config.py +++ b/backend/app/core/config.py @@ -33,8 +33,8 @@ class Settings(BaseSettings): results_dir: str = "./results" max_debate_rounds: int = 1 max_risk_discuss_rounds: int = 1 - deep_think_llm: str = "gpt-5-mini-2025-08-07" - quick_think_llm: str = "gpt-5-mini-2025-08-07" + deep_think_llm: str = "gpt-5-mini" + quick_think_llm: str = "gpt-5-mini" class Config: env_file = ".env" diff --git a/backend/app/models/schemas.py b/backend/app/models/schemas.py index 48450e40..6f191c76 100644 --- a/backend/app/models/schemas.py +++ b/backend/app/models/schemas.py @@ -15,8 +15,8 @@ class AnalysisRequest(BaseModel): description="List of analysts to include in analysis" ) research_depth: Optional[int] = Field(default=1, ge=1, le=5, description="Research depth (1-5)") - deep_think_llm: Optional[str] = Field(default="gpt-5-mini-2025-08-07", description="Deep thinking LLM model") - quick_think_llm: Optional[str] = Field(default="gpt-5-mini-2025-08-07", description="Quick thinking LLM model") + deep_think_llm: Optional[str] = Field(default="gpt-5-mini", description="Deep thinking LLM model") + quick_think_llm: Optional[str] = Field(default="gpt-5-mini", description="Quick thinking LLM model") # API Configuration openai_api_key: Optional[str] = Field(None, description="OpenAI API Key (optional if set on server)", min_length=0) diff --git a/backend/app/services/trading_service.py b/backend/app/services/trading_service.py index f0299134..120a1888 100644 --- a/backend/app/services/trading_service.py +++ b/backend/app/services/trading_service.py @@ -26,8 +26,8 @@ class TradingService: def create_config( self, research_depth: int = 1, - deep_think_llm: str = "gpt-5-mini-2025-08-07", - quick_think_llm: str = "gpt-5-mini-2025-08-07", + deep_think_llm: str = "gpt-5-mini", + quick_think_llm: str = "gpt-5-mini", ) -> Dict[str, Any]: """Create configuration for TradingAgentsX""" config = self.default_config.copy() @@ -53,8 +53,8 @@ class TradingService: alpha_vantage_api_key: Optional[str] = None, analysts: Optional[List[str]] = None, research_depth: int = 1, - deep_think_llm: str = "gpt-5-mini-2025-08-07", - quick_think_llm: str = "gpt-5-mini-2025-08-07", + deep_think_llm: str = "gpt-5-mini", + quick_think_llm: str = "gpt-5-mini", ) -> Dict[str, Any]: """ Run trading analysis for a given ticker and date with user-provided API keys @@ -260,18 +260,18 @@ class TradingService: """Get list of available OpenAI LLM models""" return [ # OpenAI - "gpt-5.1-2025-11-13", - "gpt-5-mini-2025-08-07", - "gpt-5-nano-2025-08-07", + "gpt-5.1", + "gpt-5-mini", + "gpt-5-nano", "gpt-4.1-mini", "gpt-4.1-nano", - "o4-mini-2025-04-16", + "o4-mini", # Anthropic (Official model IDs) - "claude-sonnet-4-5-20250929", - "claude-haiku-4-5-20250929", - "claude-sonnet-4-20250514", - "claude-3-5-sonnet-20241022", - "claude-3-5-haiku-20241022", + "claude-sonnet-4-5", + "claude-haiku-4-5", + "claude-sonnet-4-0", + "claude-3-7-sonnet-latest", + "claude-3-5-haiku-latest", "claude-3-haiku-20240307", # Google "gemini-2.5-pro", @@ -300,8 +300,8 @@ class TradingService: """Get default configuration""" return { "research_depth": 1, - "deep_think_llm": "gpt-5-mini-2025-08-07", - "quick_think_llm": "gpt-5-mini-2025-08-07", + "deep_think_llm": "gpt-5-mini", + "quick_think_llm": "gpt-5-mini", "max_debate_rounds": 1, "max_risk_discuss_rounds": 1, } diff --git a/cli/utils.py b/cli/utils.py index 36d0bf1d..2b9448c4 100644 --- a/cli/utils.py +++ b/cli/utils.py @@ -187,19 +187,19 @@ def select_shallow_thinking_agent(provider=None) -> str: # 定義不同供應商的淺層思維 LLM 引擎選項 SHALLOW_AGENT_OPTIONS = { "OpenAI": [ - ("GPT-5.1", "gpt-5.1-2025-11-13"), - ("GPT-5-mini","gpt-5-mini-2025-08-07"), - ("GPT-5-nano","gpt-5-nano-2025-08-07"), + ("GPT-5.1", "gpt-5.1"), + ("GPT-5-mini","gpt-5-mini"), + ("GPT-5-nano","gpt-5-nano"), ("GPT-4.1-mini", "gpt-4.1-mini"), ("GPT-4.1-nano", "gpt-4.1-nano"), - ("o4-mini", "o4-mini-2025-04-16"), + ("o4-mini", "o4-mini"), ], "Anthropic": [ - ("Claude Sonnet 4.5", "claude-sonnet-4-5-20250929"), - ("Claude Haiku 4.5", "claude-haiku-4-5-20250929"), - ("Claude Sonnet 4", "claude-sonnet-4-20250514"), - ("Claude 3.5 Sonnet", "claude-3-5-sonnet-20241022"), - ("Claude 3.5 Haiku", "claude-3-5-haiku-20241022"), + ("Claude Sonnet 4.5", "claude-sonnet-4-5"), + ("Claude Haiku 4.5", "claude-haiku-4-5"), + ("Claude Sonnet 4", "claude-sonnet-4-0"), + ("Claude 3.5 Sonnet", "claude-3-7-sonnet-latest"), + ("Claude 3.5 Haiku", "claude-3-5-haiku-latest"), ("Claude 3 Haiku", "claude-3-haiku-20240307"), ], "Google": [ @@ -312,19 +312,19 @@ def select_deep_thinking_agent(provider=None) -> str: # 定義不同供應商的深層思維 LLM 引擎選項 DEEP_AGENT_OPTIONS = { "OpenAI": [ - ("GPT-5.1", "gpt-5.1-2025-11-13"), - ("GPT-5-mini","gpt-5-mini-2025-08-07"), - ("GPT-5-nano","gpt-5-nano-2025-08-07"), + ("GPT-5.1", "gpt-5.1"), + ("GPT-5-mini","gpt-5-mini"), + ("GPT-5-nano","gpt-5-nano"), ("GPT-4.1-mini", "gpt-4.1-mini"), ("GPT-4.1-nano", "gpt-4.1-nano"), - ("o4-mini", "o4-mini-2025-04-16"), + ("o4-mini", "o4-mini"), ], "Anthropic": [ - ("Claude Sonnet 4.5", "claude-sonnet-4-5-20250929"), - ("Claude Haiku 4.5", "claude-haiku-4-5-20250929"), - ("Claude Sonnet 4", "claude-sonnet-4-20250514"), - ("Claude 3.5 Sonnet", "claude-3-5-sonnet-20241022"), - ("Claude 3.5 Haiku", "claude-3-5-haiku-20241022"), + ("Claude Sonnet 4.5", "claude-sonnet-4-5"), + ("Claude Haiku 4.5", "claude-haiku-4-5"), + ("Claude Sonnet 4", "claude-sonnet-4-0"), + ("Claude 3.5 Sonnet", "claude-3-7-sonnet-latest"), + ("Claude 3.5 Haiku", "claude-3-5-haiku-latest"), ("Claude 3 Haiku", "claude-3-haiku-20240307"), ], "Google": [ diff --git a/frontend/components/analysis/AnalysisForm.tsx b/frontend/components/analysis/AnalysisForm.tsx index 6d48238e..eb80d673 100644 --- a/frontend/components/analysis/AnalysisForm.tsx +++ b/frontend/components/analysis/AnalysisForm.tsx @@ -4,7 +4,7 @@ "use client"; import { useState, useEffect } from "react"; -import { useForm } from "react-hook-form"; +import { useForm, ControllerRenderProps } from "react-hook-form"; import { zodResolver } from "@hookform/resolvers/zod"; import * as z from "zod"; import { format } from "date-fns"; @@ -99,8 +99,8 @@ export function AnalysisForm({ onSubmit, loading = false }: AnalysisFormProps) { analysis_date: format(new Date(), "yyyy-MM-dd"), analysts: ["market", "social", "news", "fundamentals"], // 預設全選 research_depth: 3, // 預設中等層級 - quick_think_llm: "gpt-5-mini-2025-08-07", - deep_think_llm: "gpt-5-mini-2025-08-07", + quick_think_llm: "gpt-5-mini", + deep_think_llm: "gpt-5-mini", custom_quick_think_model: "", custom_deep_think_model: "", quick_think_base_url: "https://api.openai.com/v1", @@ -366,13 +366,13 @@ export function AnalysisForm({ onSubmit, loading = false }: AnalysisFormProps) { {/* OpenAI */} - + OpenAI: GPT-5.1 - + OpenAI: GPT-5 Mini - + OpenAI: GPT-5 Nano @@ -381,24 +381,24 @@ export function AnalysisForm({ onSubmit, loading = false }: AnalysisFormProps) { OpenAI: GPT-4.1 Nano - + OpenAI: o4-mini {/* Anthropic (Official model IDs) */} - + Anthropic: Claude Sonnet 4.5 - + Anthropic: Claude Haiku 4.5 - + Anthropic: Claude Sonnet 4 - + Anthropic: Claude 3.5 Sonnet - + Anthropic: Claude 3.5 Haiku @@ -508,13 +508,13 @@ export function AnalysisForm({ onSubmit, loading = false }: AnalysisFormProps) { {/* OpenAI */} - + OpenAI: GPT-5.1 - + OpenAI: GPT-5 Mini - + OpenAI: GPT-5 Nano @@ -523,24 +523,24 @@ export function AnalysisForm({ onSubmit, loading = false }: AnalysisFormProps) { OpenAI: GPT-4.1 Nano - + OpenAI: o4-mini {/* Anthropic (Official model IDs) */} - + Anthropic: Claude Sonnet 4.5 - + Anthropic: Claude Haiku 4.5 - + Anthropic: Claude Sonnet 4 - + Anthropic: Claude 3.5 Sonnet - + Anthropic: Claude 3.5 Haiku diff --git a/main.py b/main.py index d7c0fbd0..149f7adf 100644 --- a/main.py +++ b/main.py @@ -8,8 +8,8 @@ load_dotenv(override=True) # 建立自訂設定 config = DEFAULT_CONFIG.copy() -config["deep_think_llm"] = "gpt-5-mini-2025-08-07" # 使用不同的模型 -config["quick_think_llm"] = "gpt-5-mini-2025-08-07" # 使用不同的模型 +config["deep_think_llm"] = "gpt-5-mini" # 使用不同的模型 +config["quick_think_llm"] = "gpt-5-mini" # 使用不同的模型 config["max_debate_rounds"] = 1 # 增加辯論回合 # 設定資料供應商 (預設使用 yfinance 和 alpha_vantage) diff --git a/tradingagents/default_config.py b/tradingagents/default_config.py index 1aa48743..00aecb6a 100644 --- a/tradingagents/default_config.py +++ b/tradingagents/default_config.py @@ -10,8 +10,8 @@ DEFAULT_CONFIG = { )), # LLM 設定 "llm_provider": "openai", - "deep_think_llm": "gpt-5-mini-2025-08-07", - "quick_think_llm": "gpt-5-mini-2025-08-07", + "deep_think_llm": "gpt-5-mini", + "quick_think_llm": "gpt-5-mini", "backend_url": "https://api.openai.com/v1", # 辯論與討論設定 "max_debate_rounds": 1,