Spaces:
Sleeping
Sleeping
File size: 1,361 Bytes
0a40afa c5a266f 0a40afa 2e1dd92 0a40afa 665cc97 9dfeb67 665cc97 9dfeb67 665cc97 0a40afa c5a266f 665cc97 c5a266f 0a40afa |
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 |
from pydantic import Field
from pydantic_settings import BaseSettings, SettingsConfigDict
import logging
logger = logging.getLogger(__name__)
class Settings(BaseSettings):
OPENAI_API_KEY: str = Field("", env="OPENAI_API_KEY")
AZURE_DI_ENDPOINT: str = Field("", env="AZURE_DI_ENDPOINT")
AZURE_DI_KEY: str = Field("", env="AZURE_DI_KEY")
# Azure OpenAI
AZURE_OPENAI_ENDPOINT: str = Field("", env="AZURE_OPENAI_ENDPOINT")
AZURE_OPENAI_DEPLOYMENT: str = Field("", env="AZURE_OPENAI_DEPLOYMENT")
AZURE_OPENAI_API_VERSION: str = Field("2025-03-01-preview", env="AZURE_OPENAI_API_VERSION")
AZURE_OPENAI_API_KEY: str = Field("", env="AZURE_OPENAI_API_KEY")
AZURE_OPENAI_EMBEDDING_MODEL: str = Field("text-embedding-3-small", env="AZURE_OPENAI_EMBEDDING_MODEL")
# Retry configuration
LLM_MAX_RETRIES: int = Field(50, env="LLM_MAX_RETRIES")
LLM_BASE_DELAY: float = Field(1.0, env="LLM_BASE_DELAY")
LLM_MAX_DELAY: float = Field(600.0, env="LLM_MAX_DELAY")
model_config: SettingsConfigDict = {"env_file": ".env"}
def __init__(self, **kwargs):
super().__init__(**kwargs)
logger.info(f"Settings initialized with API version: {self.AZURE_OPENAI_API_VERSION}")
logger.info(f"LLM retry config: max_retries={self.LLM_MAX_RETRIES}, base_delay={self.LLM_BASE_DELAY}s")
settings = Settings() |