From a1ee0bd8248e09563c160af91db23aaac4649c44 Mon Sep 17 00:00:00 2001 From: Charlie Tonneslan Date: Sun, 22 Mar 2026 12:35:32 -0400 Subject: [PATCH] Only apply reasoning_effort for o-series OpenAI models reasoning_effort is only supported by o-series models (o1, o3, o3-mini, o4-mini). Passing it to gpt-* models causes a 400 error because those models don't support it on the chat completions endpoint. Now we check if the model name starts with 'o' before including the parameter. Fixes #403 --- tradingagents/graph/trading_graph.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tradingagents/graph/trading_graph.py b/tradingagents/graph/trading_graph.py index c7ef0f98..1116b003 100644 --- a/tradingagents/graph/trading_graph.py +++ b/tradingagents/graph/trading_graph.py @@ -146,7 +146,11 @@ class TradingAgentsGraph: elif provider == "openai": reasoning_effort = self.config.get("openai_reasoning_effort") if reasoning_effort: - kwargs["reasoning_effort"] = reasoning_effort + # reasoning_effort is only supported by o-series models + # (o1, o3, o3-mini, o4-mini, etc.), not by gpt-* models + model = self.config.get("deep_think_llm", "") + if model.startswith("o"): + kwargs["reasoning_effort"] = reasoning_effort return kwargs