diff --git a/config/settings.py b/config/settings.py index debd2a4..e83ecae 100644 --- a/config/settings.py +++ b/config/settings.py @@ -49,12 +49,20 @@ class Settings(BaseSettings): default=2, description="Maximum number of models to keep loaded" ) - # API Authentication + # API Configuration + api_enabled: bool = Field(default=True, description="Enable REST API") api_key: Optional[str] = Field(default=None, description="API key for authentication") + api_key_required: bool = Field(default=False, description="Require API key for requests") + api_rate_limit: int = Field(default=10, description="API rate limit per minute") cors_origins: list[str] = Field( default=["*"], description="Allowed CORS origins" ) + # Audio Output + default_format: str = Field(default="wav", description="Default audio format (wav, mp3, flac)") + sample_rate: int = Field(default=32000, description="Output sample rate") + normalize_audio: bool = Field(default=True, description="Normalize audio output") + # Generation Defaults default_duration: float = Field(default=10.0, description="Default generation duration") max_duration: float = Field(default=300.0, description="Maximum generation duration") @@ -70,6 +78,10 @@ class Settings(BaseSettings): # Logging log_level: str = Field(default="INFO", description="Logging level") + debug: bool = Field(default=False, description="Enable debug mode") + + # Model Management + max_loaded_models: int = Field(default=2, description="Maximum models loaded simultaneously") def ensure_directories(self) -> None: """Create required directories if they don't exist."""