huibao/backend/app/config.py

96 lines
2.6 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"""
配置文件
"""
import os
from pydantic_settings import BaseSettings
from typing import List
class Settings(BaseSettings):
"""应用配置"""
# 应用信息
APP_NAME: str = "眼镜行业情报分析系统"
APP_VERSION: str = "1.0.0"
DEBUG: bool = True
# 数据库配置 (PostgreSQL)
DATABASE_URL: str = "postgresql+asyncpg://user_xREpkJ:password_DZz8DQ@331002.xyz:2022/qingbao"
# AI API配置
AI_API_KEY: str = "sk-Doiz9raiOjANJ3cRm0bUS2VHLFXSh2TT5YmF1aJu1BWiq6dO"
AI_API_URL: str = "https://ai.comfly.chat/v1/chat/completions"
AI_MODEL: str = "gemini-3-pro-preview"
# 并行AI分析数量降低到3以确保系统响应其他请求
AI_PARALLEL_COUNT: int = 3
# 巨潮资讯网配置 (新版HTTPS)
CNINFO_BASE_URL: str = "https://www.cninfo.com.cn"
CNINFO_API_URL: str = "https://www.cninfo.com.cn/new/hisAnnouncement/query"
# 定时任务配置
SCHEDULER_ENABLED: bool = True
SCHEDULER_INTERVAL_HOURS: int = 24 # 每24小时检查一次
SCHEDULER_CHECK_TIME: str = "08:00" # 每天8点检查
# 文件存储配置
DATA_DIR: str = os.path.join(os.path.dirname(os.path.dirname(__file__)), "data")
PDF_DIR: str = os.path.join(DATA_DIR, "pdfs")
# 报告类型配置
REPORT_TYPES: List[str] = ["年度报告", "半年度报告"]
# 需要提取的章节关键词 - 分为战略类和财务类
EXTRACT_KEYWORDS: List[str] = [
# === 战略规划类 ===
"投资方案",
"未来发展规划",
"发展战略",
"经营计划",
"战略规划",
"业务展望",
"发展目标",
"投资计划",
"资本运作",
"市场拓展",
"核心竞争力",
"竞争优势",
# === 三大财务报表 ===
"合并资产负债表",
"合并利润表",
"合并现金流量表",
"主要财务数据",
"财务指标",
# === 经营分析类 ===
"主营业务分析",
"经营情况讨论与分析",
"报告期内主要经营情况",
"主要业务分析",
"收入构成",
"成本分析",
"毛利率",
"费用分析",
"研发投入",
# === 行业与市场 ===
"行业发展趋势",
"市场竞争格局",
"行业地位",
"市场份额"
]
class Config:
env_file = ".env"
extra = "allow"
# 创建全局配置实例
settings = Settings()
# 确保数据目录存在
os.makedirs(settings.DATA_DIR, exist_ok=True)
os.makedirs(settings.PDF_DIR, exist_ok=True)