File size: 2,117 Bytes
0649d3e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
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}")