12345678910111213141516171819202122232425262728293031 |
- import os
- from typing import Optional
- from dataclasses import dataclass
- try:
- # Load variables from a local .env if present
- from dotenv import load_dotenv # type: ignore
- load_dotenv()
- except Exception:
- # If python-dotenv isn't installed, skip silently. Env vars still work.
- pass
- @dataclass
- class Settings:
- llm_provider: str = os.getenv("LLM_PROVIDER", "mock").lower()
- default_model: str = os.getenv("LLM_MODEL", "mock-echo-001")
- temperature: float = float(os.getenv("LLM_TEMPERATURE", "1.0"))
- openai_api_key: Optional[str] = os.getenv("OPENAI_API_KEY")
- dashscope_api_key: Optional[str] = (
- os.getenv("DASHSCOPE_API_KEY") or os.getenv("APIKEY")
- )
- upload_path: Optional[str] = os.getenv(
- "UPLOAD_PATH", "https://api.piaoquantv.com/ad/file/upload"
- )
- def get_settings() -> Settings:
- return Settings()
|