mirror of
https://github.com/Xe138/AI-Trader.git
synced 2026-04-13 21:47:25 -04:00
support multi url and key
This commit is contained in:
@@ -66,6 +66,7 @@ class BaseAgent:
|
|||||||
max_retries: int = 3,
|
max_retries: int = 3,
|
||||||
base_delay: float = 0.5,
|
base_delay: float = 0.5,
|
||||||
openai_base_url: Optional[str] = None,
|
openai_base_url: Optional[str] = None,
|
||||||
|
openai_api_key: Optional[str] = None,
|
||||||
initial_cash: float = 10000.0,
|
initial_cash: float = 10000.0,
|
||||||
init_date: str = "2025-10-13"
|
init_date: str = "2025-10-13"
|
||||||
):
|
):
|
||||||
@@ -82,6 +83,7 @@ class BaseAgent:
|
|||||||
max_retries: Maximum retry attempts
|
max_retries: Maximum retry attempts
|
||||||
base_delay: Base delay time for retries
|
base_delay: Base delay time for retries
|
||||||
openai_base_url: OpenAI API base URL
|
openai_base_url: OpenAI API base URL
|
||||||
|
openai_api_key: OpenAI API key
|
||||||
initial_cash: Initial cash amount
|
initial_cash: Initial cash amount
|
||||||
init_date: Initialization date
|
init_date: Initialization date
|
||||||
"""
|
"""
|
||||||
@@ -101,7 +103,14 @@ class BaseAgent:
|
|||||||
self.base_log_path = log_path or "./data/agent_data"
|
self.base_log_path = log_path or "./data/agent_data"
|
||||||
|
|
||||||
# Set OpenAI configuration
|
# Set OpenAI configuration
|
||||||
self.openai_base_url = openai_base_url or os.getenv("OPENAI_API_BASE")
|
if openai_base_url==None:
|
||||||
|
self.openai_base_url = os.getenv("OPENAI_API_BASE")
|
||||||
|
else:
|
||||||
|
self.openai_base_url = openai_base_url
|
||||||
|
if openai_api_key==None:
|
||||||
|
self.openai_api_key = os.getenv("OPENAI_API_KEY")
|
||||||
|
else:
|
||||||
|
self.openai_api_key = openai_api_key
|
||||||
|
|
||||||
# Initialize components
|
# Initialize components
|
||||||
self.client: Optional[MultiServerMCPClient] = None
|
self.client: Optional[MultiServerMCPClient] = None
|
||||||
@@ -149,6 +158,7 @@ class BaseAgent:
|
|||||||
self.model = ChatOpenAI(
|
self.model = ChatOpenAI(
|
||||||
model=self.basemodel,
|
model=self.basemodel,
|
||||||
base_url=self.openai_base_url,
|
base_url=self.openai_base_url,
|
||||||
|
api_key=self.openai_api_key,
|
||||||
max_retries=3,
|
max_retries=3,
|
||||||
timeout=30
|
timeout=30
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -9,7 +9,9 @@
|
|||||||
"name": "claude-3.7-sonnet",
|
"name": "claude-3.7-sonnet",
|
||||||
"basemodel": "anthropic/claude-3.7-sonnet",
|
"basemodel": "anthropic/claude-3.7-sonnet",
|
||||||
"signature": "claude-3.7-sonnet",
|
"signature": "claude-3.7-sonnet",
|
||||||
"enabled": false
|
"enabled": false,
|
||||||
|
"openai_base_url": "Optional: YOUR_OPENAI_BASE_URL,you can write them in .env file",
|
||||||
|
"openai_api_key": "Optional: YOUR_OPENAI_API_KEY,you can write them in .env file"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "deepseek-chat-v3.1",
|
"name": "deepseek-chat-v3.1",
|
||||||
|
|||||||
4
main.py
4
main.py
@@ -155,6 +155,8 @@ async def main(config_path=None):
|
|||||||
model_name = model_config.get("name", "unknown")
|
model_name = model_config.get("name", "unknown")
|
||||||
basemodel = model_config.get("basemodel")
|
basemodel = model_config.get("basemodel")
|
||||||
signature = model_config.get("signature")
|
signature = model_config.get("signature")
|
||||||
|
openai_base_url = model_config.get("openai_base_url",None)
|
||||||
|
openai_api_key = model_config.get("openai_api_key",None)
|
||||||
|
|
||||||
# Validate required fields
|
# Validate required fields
|
||||||
if not basemodel:
|
if not basemodel:
|
||||||
@@ -185,6 +187,8 @@ async def main(config_path=None):
|
|||||||
basemodel=basemodel,
|
basemodel=basemodel,
|
||||||
stock_symbols=all_nasdaq_100_symbols,
|
stock_symbols=all_nasdaq_100_symbols,
|
||||||
log_path=log_path,
|
log_path=log_path,
|
||||||
|
openai_base_url=openai_base_url,
|
||||||
|
openai_api_key=openai_api_key,
|
||||||
max_steps=max_steps,
|
max_steps=max_steps,
|
||||||
max_retries=max_retries,
|
max_retries=max_retries,
|
||||||
base_delay=base_delay,
|
base_delay=base_delay,
|
||||||
|
|||||||
Reference in New Issue
Block a user