Spaces:
Sleeping
Sleeping
| from pathlib import Path | |
| import os | |
| from dotenv import load_dotenv | |
| # =============================== | |
| # LOAD ENVIRONMENT VARIABLES | |
| # =============================== | |
| BASE_DIR = Path(__file__).resolve().parents[2] | |
| DOTENV_PATH = BASE_DIR / ".env" | |
| DOTENV_LOCAL_PATH = BASE_DIR / "backend" / "ai" / ".env.local" | |
| if DOTENV_PATH.exists(): | |
| load_dotenv(DOTENV_PATH) | |
| if DOTENV_LOCAL_PATH.exists(): | |
| load_dotenv(DOTENV_LOCAL_PATH, override=True) | |
| # =============================== | |
| # GOOGLE API KEY | |
| # =============================== | |
| GOOGLE_API_KEY = os.getenv("GOOGLE_API_KEY", "") | |
| # =============================== | |
| # BACKEND PATHS | |
| # =============================== | |
| BACKEND_DIR = BASE_DIR / "backend" | |
| # =============================== | |
| # AI RUNTIME DATA (backend/ai/data) | |
| # =============================== | |
| AI_DIR = BACKEND_DIR / "ai" | |
| AI_DATA_DIR = AI_DIR / "data" | |
| AI_TEST_CUSTOMER_CSV = AI_DATA_DIR / "test_customer.csv" | |
| AI_PRODUCT_JSON = AI_DATA_DIR / "product_collection.json" | |
| AI_FINAL_VOICE_JSON = AI_DATA_DIR / "final_voice.transcript.json" | |
| # =============================== | |
| # PRECOMPUTE DATA (backend/precomputation/data) | |
| # =============================== | |
| PRECOMPUTE_DIR = BACKEND_DIR / "precomputation" | |
| PRECOMPUTE_DATA_DIR = PRECOMPUTE_DIR / "data" | |
| PRE_TEST_CUSTOMER_CSV = PRECOMPUTE_DATA_DIR / "test_customer.csv" | |
| PRE_PRODUCT_JSON = PRECOMPUTE_DATA_DIR / "product_collection.json" | |
| PRE_LAW_JSON = PRECOMPUTE_DATA_DIR / "law_collection.json" | |
| PRE_TELCO_CHURN_CSV = PRECOMPUTE_DATA_DIR / "telco_churn_cleaned.csv" | |
| # =============================== | |
| # HELPER FUNCTION: Kiểm tra file tồn tại | |
| # =============================== | |
| def validate_paths(): | |
| paths_to_check = [ | |
| AI_TEST_CUSTOMER_CSV, | |
| AI_PRODUCT_JSON, | |
| AI_FINAL_VOICE_JSON, | |
| PRE_TEST_CUSTOMER_CSV, | |
| PRE_PRODUCT_JSON, | |
| PRE_LAW_JSON, | |
| PRE_TELCO_CHURN_CSV, | |
| ] | |
| for p in paths_to_check: | |
| if not p.exists(): | |
| print(f"⚠️ [Warning] File không tồn tại: {p}") | |
| else: | |
| print(f"✅ [Found] {p}") | |