File size: 1,121 Bytes
dccc925
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8d306f9
 
dccc925
 
 
 
 
 
 
a43aaf6
 
 
dccc925
 
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
"""Application configuration loaded from environment variables."""

import os
from dotenv import load_dotenv

load_dotenv()


class Settings:
    """Application settings from environment variables."""

    # OpenRouter (Primary LLM)
    OPENROUTER_API_KEY: str = os.getenv("OPENROUTER_API_KEY", "")

    # Supabase
    SUPABASE_URL: str = os.getenv("SUPABASE_URL", "")
    SUPABASE_ANON_KEY: str = os.getenv("SUPABASE_ANON_KEY", "")
    SUPABASE_SERVICE_KEY: str = os.getenv("SUPABASE_SERVICE_KEY", "")
    SUPABASE_DB_URL: str = os.getenv("SUPABASE_DB_URL", "")

    # HuggingFace (Fallback LLM)
    HUGGINGFACE_API_TOKEN: str = os.getenv("HUGGINGFACE_API_TOKEN", "")

    # LLM Models
    #PRIMARY_MODEL: str = "z-ai/glm-4.5-air:free"
    PRIMARY_MODEL: str = "meta-llama/llama-3.3-70b-instruct:free"
    FALLBACK_MODEL: str = "mistralai/Mistral-7B-Instruct-v0.3"
    EMBEDDING_MODEL: str = "Qwen/Qwen3-Embedding-0.6B"

    # Server
    HOST: str = "0.0.0.0"
    PORT: int = 7860

    # Chat Memory Configuration
    CHAT_MEMORY_WINDOW_SIZE: int = int(os.getenv("CHAT_MEMORY_WINDOW_SIZE", "6"))


settings = Settings()