diff --git a/tradingagents/llm_clients/TODO.md b/tradingagents/llm_clients/TODO.md index f666665d..2d3fe915 100644 --- a/tradingagents/llm_clients/TODO.md +++ b/tradingagents/llm_clients/TODO.md @@ -7,13 +7,9 @@ ### 2. ~~Inconsistent parameter handling~~ (Fixed) - GoogleClient now accepts unified `api_key` and maps it to `google_api_key` -- Legacy `google_api_key` still works for backward compatibility -### 3. `base_url` accepted but ignored -- `AnthropicClient`: accepts `base_url` but never uses it -- `GoogleClient`: accepts `base_url` but never uses it (correct - Google doesn't support it) +### 3. ~~`base_url` accepted but ignored~~ (Fixed) +- All clients now pass `base_url` to their respective LLM constructors -**Fix:** Remove unused `base_url` from clients that don't support it - -### 4. Update validators.py with models from CLI -- Sync `VALID_MODELS` dict with CLI model options after Feature 2 is complete +### 4. ~~Update validators.py with models from CLI~~ (Fixed) +- Synced in v0.2.2 diff --git a/tradingagents/llm_clients/anthropic_client.py b/tradingagents/llm_clients/anthropic_client.py index 2c1e5a67..27b01234 100644 --- a/tradingagents/llm_clients/anthropic_client.py +++ b/tradingagents/llm_clients/anthropic_client.py @@ -33,6 +33,9 @@ class AnthropicClient(BaseLLMClient): """Return configured ChatAnthropic instance.""" llm_kwargs = {"model": self.model} + if self.base_url: + llm_kwargs["base_url"] = self.base_url + for key in _PASSTHROUGH_KWARGS: if key in self.kwargs: llm_kwargs[key] = self.kwargs[key] diff --git a/tradingagents/llm_clients/google_client.py b/tradingagents/llm_clients/google_client.py index f9971aa6..755ff4ed 100644 --- a/tradingagents/llm_clients/google_client.py +++ b/tradingagents/llm_clients/google_client.py @@ -27,6 +27,9 @@ class GoogleClient(BaseLLMClient): """Return configured ChatGoogleGenerativeAI instance.""" llm_kwargs = {"model": self.model} + if self.base_url: + llm_kwargs["base_url"] = self.base_url + for key in ("timeout", "max_retries", "callbacks", "http_client", "http_async_client"): if key in self.kwargs: llm_kwargs[key] = self.kwargs[key]