mirror of
https://github.com/farcasclaudiu/TradingAgents.git
synced 2026-06-22 09:01:24 +03:00
79051580b8
- Add tradingagents/llm_clients/ with unified factory pattern - Support OpenAI, Anthropic, Google, xAI, OpenRouter, Ollama, vLLM - Replace direct LLM imports in trading_graph.py with create_llm_client() - Handle provider-specific params (reasoning_effort, thinking_config)
22 lines
565 B
Python
22 lines
565 B
Python
from abc import ABC, abstractmethod
|
|
from typing import Any, Optional
|
|
|
|
|
|
class BaseLLMClient(ABC):
|
|
"""Abstract base class for LLM clients."""
|
|
|
|
def __init__(self, model: str, base_url: Optional[str] = None, **kwargs):
|
|
self.model = model
|
|
self.base_url = base_url
|
|
self.kwargs = kwargs
|
|
|
|
@abstractmethod
|
|
def get_llm(self) -> Any:
|
|
"""Return the configured LLM instance."""
|
|
pass
|
|
|
|
@abstractmethod
|
|
def validate_model(self) -> bool:
|
|
"""Validate that the model is supported by this client."""
|
|
pass
|