Files
app_03_pregnancy/backend/app/config.py
Karlcarlo 53128a6f02 feat(backend): 添加服务管理脚本并配置应用基础参数
- 更新 .gitignore 忽略后端日志目录和 PID 文件
- 新增 app_name 配置项并替换主程序中硬编码的应用名称
- 为配置模型添加 extra: ignore 以兼容额外环境变量
- 新增完整的后端服务管理脚本 serv.sh,支持常用管理操作
2026-05-22 00:51:48 +08:00

46 lines
1.2 KiB
Python

from pydantic_settings import BaseSettings
class Settings(BaseSettings):
app_name: str = "孕育无忧"
# Path Prefix
api_prefix: str = "/api"
uploads_prefix: str = "/uploads"
# MongoDB
mongodb_url: str = "mongodb://localhost:27017"
mongodb_db_name: str = "pregnancy_report"
# JWT
jwt_secret_key: str = "change-this-secret-key"
jwt_algorithm: str = "HS256"
jwt_expire_minutes: int = 10080 # 7 days
# WeChat
wechat_app_id: str = ""
wechat_app_secret: str = ""
# AI API (OpenAI 兼容接口,如硅基流动)
ai_api_key: str = ""
ai_base_url: str = "https://api.siliconflow.cn/v1"
ai_vision_model: str = "Qwen/Qwen2.5-VL-72B-Instruct"
ai_text_model: str = "Qwen/Qwen2.5-72B-Instruct" # 使用更快的72B模型
# Upload
upload_dir: str = "./uploads"
max_file_size: int = 10 * 1024 * 1024 # 10MB
# CORS
cors_origins: str = "*" # 多个域名用逗号分隔,如 https://a.com,https://b.com
# Server
host: str = "0.0.0.0"
port: int = 8000
debug: bool = True
model_config = {"env_file": ".env", "env_file_encoding": "utf-8", "extra": "ignore"}
settings = Settings()