"""환경 설정""" from pydantic_settings import BaseSettings from functools import lru_cache from typing import List class Settings(BaseSettings): """환경 설정 클래스""" # 서버 설정 app_name: str = "AI Service (Python)" host: str = "0.0.0.0" port: int = 8086 # STT(8084)와 충돌 방지 # Claude API claude_api_key: str = "" claude_model: str = "claude-3-5-sonnet-20241022" claude_max_tokens: int = 250000 claude_temperature: float = 0.7 # Redis redis_host: str = "20.249.177.114" redis_port: int = 6379 redis_password: str = "" redis_db: int = 4 # Azure Event Hub eventhub_connection_string: str = "" eventhub_name: str = "hgzero-eventhub-name" eventhub_consumer_group: str = "ai-transcript-group" # CORS cors_origins: List[str] = [ "http://localhost:*", "http://127.0.0.1:*", "http://localhost:8080", "http://localhost:3000" ] # 로깅 log_level: str = "INFO" # 분석 임계값 min_segments_for_analysis: int = 10 text_retention_seconds: int = 300 # 5분 class Config: env_file = ".env" case_sensitive = False @lru_cache() def get_settings() -> Settings: """싱글톤 설정 인스턴스""" return Settings()