from pydantic_settings import BaseSettings from functools import lru_cache class Settings(BaseSettings): app_name: str = "BreachOS" debug: bool = False max_turns: int = 10 # LLM hf_token: str = "" api_base_url: str = "https://api.groq.com/openai/v1" model_name: str = "llama-3.1-8b-instant" provider: str = "groq" groq_api_key: str = "" llm_timeout: int = 30 llm_max_retries: int = 3 class Config: env_prefix = "BREACHOS_" env_file_encoding = "utf-8" extra = "ignore" @lru_cache def get_settings() -> Settings: return Settings()