File size: 1,114 Bytes
adf8222
 
 
 
 
 
59f10cb
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
adf8222
59f10cb
 
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
import os
from typing import Optional

class LLMConfig:
    """Configuration loader for LLM providers"""
    
    def __init__(self):
        # Load all environment variables
        self.hf_token = os.getenv("HF_TOKEN")
        self.ollama_host = os.getenv("OLLAMA_HOST")
        self.local_model_name = os.getenv("LOCAL_MODEL_NAME", "mistral:latest")
        self.hf_api_url = os.getenv("HF_API_ENDPOINT_URL", "https://zxzbfrlg3ssrk7d9.us-east-1.aws.endpoints.huggingface.cloud/v1/")
        self.use_fallback = os.getenv("USE_FALLBACK", "true").lower() == "true"
        self.openweather_api_key = os.getenv("OPENWEATHER_API_KEY")
        self.nasa_api_key = os.getenv("NASA_API_KEY")
        self.tavily_api_key = os.getenv("TAVILY_API_KEY")
        self.redis_host = os.getenv("REDIS_HOST")
        self.redis_port = os.getenv("REDIS_PORT")
        self.redis_username = os.getenv("REDIS_USERNAME")
        self.redis_password = os.getenv("REDIS_PASSWORD")
        
        # Detect if running on HF Spaces
        self.is_hf_space = bool(os.getenv("SPACE_ID"))

# Global config instance
config = LLMConfig()