from pathlib import Path ROOT_DIR = Path(__file__).resolve().parents[2] DATA_PATH = ROOT_DIR / "data" / "processed" / "matcha_sentiment_binary.csv" ARTIFACT_DIR = ROOT_DIR / "artifacts" MODEL_DIR = ROOT_DIR / "models" LABEL2ID = {"Negatif": 0, "Positif": 1} ID2LABEL = {0: "Negatif", 1: "Positif"} DEFAULT_TRANSFORMER_MODELS = [ "ChristopherA08/IndoELECTRA", "naufalihsan/indonesian-sbert-large", "sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2", "w11wo/indonesian-roberta-base-sentiment-classifier", "cahya/distilbert-base-indonesian", ] CLASSICAL_MODELS = [ "logistic_regression", "linear_svm", "random_forest", "extra_trees", "gradient_boosting", ] INDONESIAN_STOPWORDS = { "ada", "adalah", "agar", "akan", "aku", "anda", "apa", "atau", "bagaimana", "bagi", "bagian", "bahwa", "baik", "banyak", "baru", "begitu", "belum", "benar", "berapa", "berada", "berbagai", "beri", "berikut", "bersama", "bisa", "buat", "cukup", "dalam", "dan", "dapat", "dari", "daripada", "dengan", "di", "dia", "dibanding", "diberikan", "diri", "dulu", "hingga", "ia", "ini", "itu", "jadi", "juga", "kalau", "kami", "kan", "karena", "ke", "kembali", "kemudian", "kepada", "ketika", "lagi", "lebih", "maka", "makanan", "makin", "masih", "melalui", "memang", "mereka", "menu", "meski", "minuman", "mungkin", "namun", "oleh", "pada", "para", "pasti", "pernah", "perlu", "saat", "saja", "saling", "sama", "sambil", "sampai", "sangat", "saya", "sebagai", "sebaiknya", "sebelum", "sebelumnya", "sebuah", "secara", "sedang", "sedikit", "sehingga", "sejak", "sekali", "sekitar", "selain", "selama", "seluruh", "semua", "sendiri", "seperti", "serta", "setelah", "setidaknya", "setiap", "sudah", "supaya", "tadi", "tanpa", "tapi", "telah", "tempat", "tentang", "tentu", "terasa", "terdapat", "tergolong", "tersebut", "tetapi", "the", "to", "untuk", "yang", } DOMAIN_STOPWORDS = { "gandaria", "city", "gc", "green", "ikuya", "ikuyo", "matcha", "matchanya", "matchaya", "milk", "tea", } STOPWORDS = INDONESIAN_STOPWORDS | DOMAIN_STOPWORDS