config.py 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. """配置文件"""
  2. import os
  3. from typing import Optional
  4. class Settings:
  5. """应用配置"""
  6. # API配置
  7. API_TITLE = "赛博小镇 API"
  8. API_VERSION = "1.0.0"
  9. API_HOST = "0.0.0.0"
  10. API_PORT = 8000
  11. # NPC配置
  12. NPC_UPDATE_INTERVAL = 30 # NPC状态更新间隔(秒)
  13. # LLM配置 (从环境变量读取)
  14. # HelloAgents框架使用自定义LLM配置,不需要OPENAI_API_KEY
  15. LLM_MODEL_ID: str = os.getenv("LLM_MODEL_ID", "Qwen/Qwen2.5-72B-Instruct")
  16. LLM_API_KEY: Optional[str] = os.getenv("LLM_API_KEY")
  17. LLM_BASE_URL: str = os.getenv("LLM_BASE_URL", "https://api-inference.modelscope.cn/v1/")
  18. # CORS配置
  19. CORS_ORIGINS = ["*"] # 生产环境应限制具体域名
  20. @classmethod
  21. def validate(cls):
  22. """验证配置"""
  23. if not cls.LLM_API_KEY:
  24. print("⚠️ 警告: 未设置LLM_API_KEY环境变量")
  25. print(" 请在.env文件中配置LLM_API_KEY")
  26. print(" 示例: LLM_API_KEY=\"your-api-key\"")
  27. return False
  28. print(f"✅ LLM配置:")
  29. print(f" 模型: {cls.LLM_MODEL_ID}")
  30. print(f" 服务地址: {cls.LLM_BASE_URL}")
  31. return True
  32. settings = Settings()