Spaces:
Sleeping
Sleeping
| """ | |
| config.py | |
| Single source of truth for all paths, model settings, and environment config. | |
| Import from here everywhere β never hardcode paths in pipeline files. | |
| """ | |
| import os | |
| from pathlib import Path | |
| from dotenv import load_dotenv | |
| load_dotenv() | |
| # ββ Directory layout ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| BASE_DIR = Path(__file__).resolve().parent | |
| DATA_DIR = BASE_DIR / "data" | |
| FRONTEND_DIR = BASE_DIR / "frontend" | |
| CHROMA_DIR = BASE_DIR / "chroma_db" | |
| # ββ Model paths βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| MODEL_PATH = str( | |
| BASE_DIR | |
| / "claim_classification_model_distilbert_trained" | |
| / "claim_classifier_model" | |
| / "checkpoint-902" | |
| ) | |
| # ββ External API keys βββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| GROQ_API_KEY = os.getenv("GROQ_API_KEY", "") | |
| # ββ Inference settings ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| CLAIM_MODEL_BATCH_SIZE = 64 | |
| CLAIM_MODEL_THRESHOLD = 0.6 | |
| CLAIM_MODEL_MAX_LENGTH = 128 | |
| # ββ RAG settings ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| RAG_TOP_K = 6 | |
| CHROMA_DB_PATH = str(CHROMA_DIR) | |
| CHROMA_COLLECTION = "claims" | |
| EMBEDDING_MODEL = "all-MiniLM-L6-v2" | |
| GROQ_MODEL = "llama-3.3-70b-versatile" | |
| # ββ Flask settings ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| DEBUG = os.getenv("FLASK_DEBUG", "false").lower() == "true" | |
| HOST = os.getenv("FLASK_HOST", "0.0.0.0") | |
| PORT = int(os.getenv("FLASK_PORT", 5000)) | |
| SECRET_KEY = os.getenv("SECRET_KEY", "dev-secret-change-in-prod") |