pranshu dhiman
Deploy MathSutra Space
7fab45b
Raw
History Blame Contribute Delete
951 Bytes
from __future__ import annotations
import os
from dataclasses import dataclass
from pathlib import Path
from dotenv import load_dotenv
ROOT_DIR = Path(__file__).resolve().parents[2]
load_dotenv(ROOT_DIR / ".env")
@dataclass(frozen=True)
class Settings:
root_dir: Path = ROOT_DIR
chroma_dir: Path = ROOT_DIR / "data" / "chroma"
processed_dir: Path = ROOT_DIR / "data" / "processed"
uploads_dir: Path = ROOT_DIR / "data" / "uploads"
collection_name: str = os.getenv("CHROMA_COLLECTION", "class12_math_rag")
ollama_base_url: str = os.getenv("OLLAMA_BASE_URL", "http://127.0.0.1:11434")
llm_model: str = os.getenv("OLLAMA_LLM_MODEL", "qwen2.5:7b-instruct")
embed_model: str = os.getenv("OLLAMA_EMBED_MODEL", "nomic-embed-text")
chunk_size: int = 1200
chunk_overlap: int = 200
top_k: int = int(os.getenv("TOP_K", "5"))
request_timeout: int = 120
def get_settings() -> Settings:
return Settings()