File size: 1,012 Bytes
7c8e7f2
 
 
 
 
 
 
 
 
 
9577d95
 
 
eeb3f17
 
 
 
 
 
 
 
 
f45999f
 
 
 
 
 
 
 
 
 
7c8e7f2
 
08dd282
f45999f
08dd282
f45999f
8fe9ff0
7c8e7f2
08dd282
 
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
from pydantic_settings import BaseSettings, SettingsConfigDict

class Settings(BaseSettings):
    model_config = SettingsConfigDict(
        env_file=".env", extra="ignore", env_file_encoding="utf-8"
    )
    # --- Application Configuration ---
    APP_NAME: str = "Makhfi AI"
    APP_VERSION: str = "0.1.0"

    # --- CORS ---
    FRONTEND_URL: str
    
    # --- Supabase Configuration ---
    SUPABASE_KEY: str
    SUPABASE_URL: str
    SUPABASE_JWT_SECRET: str

    # --- Database Configuration ---
    DATABASE_URL: str
    DB_CONNECT_ARGS: dict = {"sslmode": "require"}
    
    # --- API Keys ---
    GOOGLE_API_KEY: str
    GROQ_API_KEY: str
    MEM0_API_KEY: str

    # --- Vectorstore Configuration ---
    PINECONE_API_KEY: str
    INDEX_NAME: str
    NAMESPACE: str
    TOP_K: int = 4

    # --- Models Configuration ---
    DEFAULT_MODEL: str
    FALLBACK_MODEL: str
    EMBEDDINGS_MODEL: str
    OUTPUT_FORMATTER_MODEL: str
    TITLE_GENERATOR_MODEL: str

def get_settings():
    return Settings()