| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- """
- Big Agent 配置文件
- ================
- 此配置文件包含了Big Agent系统的所有核心配置信息,包括:
- - API密钥配置(DeepSeek等)
- - 工作流参数设置
- - 路径配置
- - 环境变量加载
- 主要功能:
- 1. 从环境变量或.env文件加载API密钥
- 2. 定义系统工作流的基本参数
- 3. 配置项目文件路径
- 4. 验证配置完整性
- 作者: Big Agent Team
- 版本: 1.0.0
- 更新时间: 2024-12-18
- """
- import os
- from dotenv import load_dotenv
- # ============================================================================
- # 环境变量加载
- # ============================================================================
- # 从.env文件加载环境变量,确保敏感信息不被硬编码到源码中
- load_dotenv()
- # ============================================================================
- # DeepSeek API 配置
- # ============================================================================
- # API密钥配置 - 优先从环境变量读取,支持通过.env文件配置
- DEEPSEEK_API_KEY = os.getenv("DEEPSEEK_API_KEY")
- # API基础URL配置 - 默认使用DeepSeek官方API地址
- DEEPSEEK_BASE_URL = os.getenv("DEEPSEEK_BASE_URL", "https://api.deepseek.com")
- # ============================================================================
- # 项目路径配置
- # ============================================================================
- # 定义项目中各个功能模块的数据存储路径
- PATHS = {
- "json_configs": "json_files", # JSON配置文件目录 - 存储指标计算配置
- "knowledge_base": "knowledge_base", # 知识库目录 - 存储生成的知识文档
- "logs": "logs", # 日志目录 - 存储系统运行日志
- "api_results": "api_results" # API结果目录 - 存储所有API调用结果
- }
- # ============================================================================
- # 目录初始化
- # ============================================================================
- # 确保所有必要的目录都存在,避免文件操作时的路径错误
- for path in PATHS.values():
- os.makedirs(path, exist_ok=True)
- # ============================================================================
- # 配置验证函数
- # ============================================================================
- def validate_config():
- """
- 验证系统配置是否正确
- 此函数检查所有必要的配置项是否已正确设置,包括:
- - API密钥是否存在
- - API URL格式是否正确
- Returns:
- list: 配置错误列表,如果为空则表示配置正确
- """
- errors = []
- # 检查API密钥
- if not DEEPSEEK_API_KEY:
- errors.append("DEEPSEEK_API_KEY环境变量未设置")
- # 检查API URL格式
- if not DEEPSEEK_BASE_URL.startswith("https://"):
- errors.append("DEEPSEEK_BASE_URL必须是HTTPS URL")
- return errors
- # ============================================================================
- # 配置状态标识
- # ============================================================================
- # 全局配置状态标识,True表示配置正确,False表示存在配置问题
- CONFIG_VALID = len(validate_config()) == 0
|