96 lines
2.6 KiB
Python
96 lines
2.6 KiB
Python
|
|
"""
|
|||
|
|
配置文件
|
|||
|
|
"""
|
|||
|
|
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)
|