瀏覽代碼

配置类

JiaQiang 1 周之前
父節點
當前提交
3974dfd443
共有 1 個文件被更改,包括 88 次插入0 次删除
  1. 88 0
      llmops/config.py

+ 88 - 0
llmops/config.py

@@ -0,0 +1,88 @@
+"""
+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