"""
XBot 配置文件
"""

# ==================== LLM 配置 ====================

# 默认 LLM 提供商
DEFAULT_PROVIDER = "openai"

# 默认模型
DEFAULT_MODEL = "gpt-4"

# API Key（建议使用环境变量）
import os
API_KEY = os.getenv("OPENAI_API_KEY", "")

# Base URL
BASE_URL = os.getenv("OPENAI_BASE_URL", "https://api.openai.com/v1")


# ==================== SimpleMem 记忆配置 ====================

# 是否启用 SimpleMem
ENABLE_SIMPLEMEM = True

# Embedding 模型
# 推荐: text-embedding-3-small, text-embedding-3-large, text-embedding-ada-002
# 或使用 Qwen: Qwen/Qwen3-Embedding-0.6B
EMBEDDING_MODEL = os.getenv("EMBEDDING_MODEL", "text-embedding-3-small")

# Embedding 服务的 Base URL（可选，默认使用 BASE_URL）
EMBEDDING_BASE_URL = os.getenv("EMBEDDING_BASE_URL", "")


# ==================== 并行处理配置 ====================

# 是否启用并行处理
ENABLE_PARALLEL_PROCESSING = True
MAX_PARALLEL_WORKERS = 8

# 是否启用并行检索
ENABLE_PARALLEL_RETRIEVAL = True
MAX_RETRIEVAL_WORKERS = 4

# 是否启用规划
ENABLE_PLANNING = True

# 是否启用反思
ENABLE_REFLECTION = True
MAX_REFLECTION_ROUNDS = 2


# ==================== 工作目录 ====================

# 工作目录（用于存储会话和记忆）
WORKSPACE = os.getenv("XAGENT_WORKSPACE", "./xbot_workspace")

# 上下文窗口大小
CONTEXT_WINDOW_TOKENS = 200000


# ==================== Agent 配置 ====================

# 默认 Agent 配置
DEFAULT_AGENTS = {
    1: {
        "name": "数据分析助手",
        "role_description": "你是一个专业的数据分析助手，擅长分析数据、生成报告。",
    },
    2: {
        "name": "代码审查助手",
        "role_description": "你是一个专业的代码审查助手，擅长审查代码、发现bug。",
    },
}
