Spaces:
Sleeping
Sleeping
File size: 1,169 Bytes
b33a861 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | """
Configuration management for Smart Escalation API.
This module defines the Settings class using Pydantic for environment variable
management with validation and default values.
"""
from pydantic_settings import BaseSettings
from typing import Optional
class Settings(BaseSettings):
"""
Application settings loaded from environment variables.
All settings can be overridden via environment variables or .env file.
"""
# LLM API Configuration
google_api_key: str
# Embedding Model Configuration
embedding_model: str = "all-MiniLM-L6-v2"
# Escalation Logic Configuration
relevance_threshold: float = 0.5
top_k_chunks: int = 3
# Chunking Configuration
chunk_size: int = 500
chunk_overlap: int = 50
# LLM Configuration
llm_model: str = "gemini-1.5-flash"
llm_temperature: float = 0.3
# Server Configuration
port: int = 8000
host: str = "0.0.0.0"
class Config:
"""Pydantic configuration."""
env_file = ".env"
env_file_encoding = "utf-8"
case_sensitive = False
# Global settings instance
settings = Settings()
|