Initial: integrated 2025 LawGraph (graphrag_pipeline) + 2026 kg_project
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
"""
|
||||
配置管理模块
|
||||
"""
|
||||
|
||||
import os
|
||||
from pathlib import Path
|
||||
from typing import Optional
|
||||
from dotenv import load_dotenv
|
||||
|
||||
# 加载.env文件
|
||||
env_path = Path(__file__).parent.parent.parent / ".env"
|
||||
if env_path.exists():
|
||||
load_dotenv(env_path)
|
||||
|
||||
|
||||
class Config:
|
||||
"""配置类"""
|
||||
|
||||
# API Keys
|
||||
OPENAI_API_KEY: Optional[str] = os.getenv("OPENAI_API_KEY")
|
||||
ANTHROPIC_API_KEY: Optional[str] = os.getenv("ANTHROPIC_API_KEY")
|
||||
DASHSCOPE_API_KEY: Optional[str] = os.getenv("DASHSCOPE_API_KEY")
|
||||
VOLCENGINE_ACCESS_KEY: Optional[str] = os.getenv("VOLCENGINE_ACCESS_KEY")
|
||||
VOLCENGINE_SECRET_KEY: Optional[str] = os.getenv("VOLCENGINE_SECRET_KEY")
|
||||
ZHIPUAI_API_KEY: Optional[str] = os.getenv("ZHIPUAI_API_KEY")
|
||||
SILICONFLOW_API_KEY: Optional[str] = os.getenv("SILICONFLOW_API_KEY")
|
||||
SILICONFLOW_API_BASE: Optional[str] = os.getenv("SILICONFLOW_API_BASE", "https://api.siliconflow.cn/v1")
|
||||
|
||||
# 路径配置
|
||||
DATA_DIR: str = os.getenv("DATA_DIR", "../data")
|
||||
OUTPUT_DIR: str = os.getenv("OUTPUT_DIR", "./output")
|
||||
|
||||
# 日志配置
|
||||
LOG_LEVEL: str = os.getenv("LOG_LEVEL", "INFO")
|
||||
|
||||
# HanLP配置
|
||||
HANLP_MODEL_PATH: Optional[str] = os.getenv("HANLP_MODEL_PATH")
|
||||
|
||||
# LLM配置
|
||||
TEMPERATURE: float = float(os.getenv("TEMPERATURE", "0.4"))
|
||||
FREQUENCY_PENALTY: float = float(os.getenv("FREQUENCY_PENALTY", "0.6"))
|
||||
PRESENCE_PENALTY: float = float(os.getenv("PRESENCE_PENALTY", "0.6"))
|
||||
|
||||
# 文本处理配置
|
||||
MAX_TEXTUNIT_LENGTH: int = int(os.getenv("MAX_TEXTUNIT_LENGTH", "500"))
|
||||
|
||||
|
||||
def load_config() -> Config:
|
||||
"""加载配置"""
|
||||
return Config()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user