| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- """Central configuration for the ChatFast backend."""
- from pathlib import Path
- import os
- from urllib.parse import quote_plus
- BASE_DIR = Path(__file__).resolve().parent.parent
- DATA_DIR = BASE_DIR / "data"
- BACKUP_DIR = BASE_DIR / "data_bak"
- BLOG_DIR = BASE_DIR / "blog"
- UPLOAD_DIR = BASE_DIR / "uploads"
- STATIC_DIR = BASE_DIR / "static"
- MYSQL_HOST = os.getenv("CHATFAST_DB_HOST", "127.0.0.1")
- MYSQL_PORT = int(os.getenv("CHATFAST_DB_PORT", "3306"))
- MYSQL_USER = os.getenv("CHATFAST_DB_USER", "root")
- MYSQL_PASSWORD = os.getenv("CHATFAST_DB_PASSWORD", "792199Zhao*")
- DATABASE_NAME = os.getenv("CHATFAST_DB_NAME", "chat_fast")
- ENCODED_PASSWORD = quote_plus(MYSQL_PASSWORD)
- RAW_DATABASE_URL = (
- f"mysql+pymysql://{MYSQL_USER}:{ENCODED_PASSWORD}@{MYSQL_HOST}:{MYSQL_PORT}/?charset=utf8mb4"
- )
- DATABASE_URL = (
- f"mysql+pymysql://{MYSQL_USER}:{ENCODED_PASSWORD}@{MYSQL_HOST}:{MYSQL_PORT}/{DATABASE_NAME}?charset=utf8mb4"
- )
- TOKEN_TTL_HOURS = int(os.getenv("CHATFAST_TOKEN_TTL_HOURS", "72"))
- DEFAULT_ADMIN_USERNAME = os.getenv("CHATFAST_DEFAULT_ADMIN", "admin")
- DEFAULT_ADMIN_PASSWORD = os.getenv("CHATFAST_DEFAULT_ADMIN_PASSWORD", "Admin@123")
- # 默认上传文件下载地址,可通过环境变量覆盖
- DEFAULT_UPLOAD_BASE = os.getenv("UPLOAD_BASE_URL", "/download/")
- DOWNLOAD_BASE = DEFAULT_UPLOAD_BASE.rstrip("/") if DEFAULT_UPLOAD_BASE else ""
- # 模型配置
- default_key = "sk-re2NlaKIQn11ZNWzAbB6339cEbF94c6aAfC8B7Ab82879bEa"
- MODEL_KEYS = {
- "grok-3": default_key,
- "grok-4": default_key,
- "gpt-5.1-2025-11-13": default_key,
- "gpt-5-2025-08-07": default_key,
- "gpt-4o-mini": default_key,
- "o1-mini": default_key,
- "o4-mini": default_key,
- "deepseek-v3": default_key,
- "deepseek-r1": default_key,
- "gpt-4o-all": default_key,
- "o3-mini-all": default_key,
- }
- API_URL = "https://yunwu.ai/v1"
|