File size: 1,093 Bytes
ca7a2c2 45b1ef5 ca7a2c2 |
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 43 44 45 46 47 48 49 50 |
"""Core configuration for LocalMate v2."""
from pydantic_settings import BaseSettings
class Settings(BaseSettings):
"""Application settings loaded from environment."""
# App
app_env: str = "local"
app_debug: bool = True
# Supabase
supabase_url: str
supabase_anon_key: str
supabase_service_role_key: str
database_url: str
# Neo4j
neo4j_uri: str
neo4j_username: str
neo4j_password: str
# Google AI
google_api_key: str
# Google OAuth
google_client_id: str
jwt_secret: str
# MegaLLM (OpenAI-compatible)
megallm_api_key: str | None = None
megallm_base_url: str = "https://ai.megallm.io/v1"
# Optional: CLIP for image embeddings
huggingface_api_key: str | None = None
# Default model configs (can be overridden per request)
default_gemini_model: str = "gemini-2.0-flash"
default_megallm_model: str = "deepseek-ai/deepseek-v3.1-terminus"
embedding_model: str = "text-embedding-004"
class Config:
env_file = ".env"
extra = "ignore"
settings = Settings()
|