import os from pathlib import Path # 基础路径 BASE_DIR = Path(__file__).resolve().parent PROJECT_ROOT = BASE_DIR.parent # Flask session SECRET_KEY = os.getenv("SECRET_KEY", "dev-secret-change-me") # 数据文件 DATA_DIR = PROJECT_ROOT / "data" DATA_DIR.mkdir(parents=True, exist_ok=True) QA_PATH = DATA_DIR / "qa.json" CONVERSATIONS_DIR = DATA_DIR / "conversations" CONVERSATIONS_DIR.mkdir(parents=True, exist_ok=True) # 系统提示词路径 PROMPT_PATH = PROJECT_ROOT / "system_prompt.txt" # 首屏展示的常用问题(使用 QA 数据中的 id) TOP_QUESTION_IDS = [ 1, # 念界香薰有哪些香型可选? 2, # 每瓶香薰的容量是多少? 8, # 香薰的香味能持续多久? 10, # 香薰的核心成分有哪些?是否安全? 11, # 产品是否添加人工香精或防腐剂? 12, # 念界香薰是无火香薰吗?怎么扩香? 9, # 不同香型的香味浓度有区别吗?怎么选适合自己的香型? 86, # 第一次使用念界香薰,如何操作? 100, # 香薰在不同面积的房间,如何调整藤条数量? 23, # 是否有小容量试香装可以先体验再买正装? ] # 模型与流式输出配置 TOKEN_INTERVAL = 0.03 DEFAULT_SYSTEM_PROMPT_TEXT = ( "你是一名智能客服助手。请用中文沟通,称呼用户为“您”,礼貌、专业地回答。" "当用户问题包含关键词时,优先调用 search_rag 检索后再回答。" ) # OpenAI/Moonshot API MOONSHOT_API_KEY = os.getenv("MOONSHOT_API_KEY", "") OPENAI_API_KEY = os.getenv("OPENAI_API_KEY", "") OPENAI_BASE_URL = os.getenv("OPENAI_BASE_URL", "https://api.moonshot.cn/v1") # 按 base_url 选择对应的 key,避免“混用”导致 401 if "moonshot" in OPENAI_BASE_URL and MOONSHOT_API_KEY: API_KEY = MOONSHOT_API_KEY else: API_KEY = OPENAI_API_KEY MODEL_NAME = os.getenv("MODEL_NAME", "kimi-k2-turbo-preview")