6a1f2608b5
Co-authored-by: Cursor <cursoragent@cursor.com>
57 lines
1.9 KiB
Python
57 lines
1.9 KiB
Python
"""中控 AI 配置(读 hub .env,与实例同名 AI 变量)。"""
|
|
from __future__ import annotations
|
|
|
|
import os
|
|
|
|
HUB_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
|
|
|
|
|
def _int_env(key: str, default: int) -> int:
|
|
try:
|
|
return int(os.getenv(key, str(default)) or default)
|
|
except ValueError:
|
|
return default
|
|
|
|
|
|
SUMMARY_TEMPERATURE = 0.15
|
|
CHAT_TEMPERATURE = 0.5
|
|
CHAT_MAX_HISTORY_TURNS = _int_env("CHAT_MAX_HISTORY_TURNS", 16)
|
|
CHAT_MAX_OUTPUT_TOKENS = _int_env("CHAT_MAX_OUTPUT_TOKENS", 8192)
|
|
CHAT_MAX_CONTINUATIONS = _int_env("CHAT_MAX_CONTINUATIONS", 4)
|
|
CHAT_CONTEXT_MAX_CHARS = _int_env("CHAT_CONTEXT_MAX_CHARS", 12_000)
|
|
CHAT_FOLLOWUP_CONTEXT_MAX_CHARS = _int_env("CHAT_FOLLOWUP_CONTEXT_MAX_CHARS", 4500)
|
|
CHAT_PROMPT_MAX_CHARS = _int_env("CHAT_PROMPT_MAX_CHARS", 28_000)
|
|
CHAT_USER_MESSAGE_MAX_CHARS = _int_env("CHAT_USER_MESSAGE_MAX_CHARS", 3500)
|
|
CHAT_SUMMARY_EXCERPT_MAX_CHARS = _int_env("CHAT_SUMMARY_EXCERPT_MAX_CHARS", 1200)
|
|
CHAT_HISTORY_MAX_CHARS_PER_MSG = _int_env("CHAT_HISTORY_MAX_CHARS_PER_MSG", 900)
|
|
CHAT_ROLLING_SUMMARY_MAX_CHARS = _int_env("CHAT_ROLLING_SUMMARY_MAX_CHARS", 900)
|
|
CHAT_ROLLING_SUMMARY_GEN_MAX_TOKENS = _int_env("CHAT_ROLLING_SUMMARY_GEN_MAX_TOKENS", 512)
|
|
CHAT_ROLLING_SUMMARY_TEMPERATURE = 0.2
|
|
SUMMARY_RETENTION_DAYS = 90
|
|
CHAT_SESSION_RETENTION_DAYS = 60
|
|
FUND_HISTORY_DAYS = 180
|
|
CHAT_MAX_ATTACHMENTS = 3
|
|
CHAT_MAX_IMAGE_BYTES = 4 * 1024 * 1024
|
|
CHAT_MAX_TEXT_FILE_BYTES = 200 * 1024
|
|
|
|
|
|
def trading_day_reset_hour() -> int:
|
|
try:
|
|
return int(os.getenv("TRADING_DAY_RESET_HOUR", "8") or "8")
|
|
except ValueError:
|
|
return 8
|
|
|
|
|
|
def hub_flask_timeout() -> float:
|
|
try:
|
|
return float(os.getenv("HUB_FLASK_TIMEOUT", "10") or "10")
|
|
except ValueError:
|
|
return 10.0
|
|
|
|
|
|
def hub_agent_timeout() -> float:
|
|
try:
|
|
return float(os.getenv("HUB_AGENT_TIMEOUT", "8") or "8")
|
|
except ValueError:
|
|
return 8.0
|