rdune71's picture
Enhance modular LLM provider interface with HF endpoint integration
59f10cb
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()