Access Request for SasakLLM

Please request permission before accessing the SasakLLM model.

Log in or Sign Up to review the conditions and access this model content.

🌴 SasakLLM v4 (1.5B Instruct)

Model AI Generatif Bahasa Sasak (Pulau Lombok, Nusa Tenggara Barat)

Small Language Model (SLM) pertama yang menguasai pemahaman langsung, morfologi kata, dan tata kesantunan tutur Bahasa Sasak.


πŸ“– Tentang SasakLLM

SasakLLM adalah inisiatif riset kecerdasan buatan (Artificial Intelligence) terbuka untuk melestarikan, mendokumentasikan, dan mendigitalisasi Bahasa Sasakβ€”bahasa daerah yang dituturkan oleh lebih dari 3 juta jiwa masyarakat di Pulau Lombok, Nusa Tenggara Barat.

Berbeda dengan sistem penerjemahan konvensional yang menerjemahkan kalimat ke Bahasa Indonesia terlebih dahulu, SasakLLM bekerja secara langsung (Direct Language Generation):

  1. Memahami Konteks Murni: Memproses pertanyaan dalam Bahasa Sasak dan langsung berpikir dalam semantik Bahasa Sasak.
  2. Kaya Morfologi Aglutinatif: Mampu mengurai afiksasi rumit (nasalisasi, prefiks N-, be-, te-, konfiks, dan reduplikasi) dengan akurasi lematisasi akar kata mencapai 80.0%.
  3. Menguasai Undak-Usuk / Tingkat Tutur: Mampu membedakan register bahasa santai (Basa Jamaq) dengan bahasa halus penghormatan (Basa Alus / Krama / Mider).
  4. Resonansi Budaya & Sastra Lokal: Memiliki wawasan mendalam mengenai cerita rakyat Lombok (Putri Mandalika, Bau Nyale, Rinjani, Cupak Gerantang), peribahasa (Sesenggakan), dan pantun (Lelakaq).

πŸ’¬ Coba Langsung di Browser (Web Demo)

Anda dapat menguji model secara langsung tanpa perlu instalasi melalui Hugging Face Spaces:
πŸ‘‰ https://huggingface.co/spaces/kodetr/SasakLLM-Chat
(Mendukung respons dwibahasa Sasak-Indonesia dan konversi otomatis ke Aksara Sasak / Jejawan).


πŸ† Hasil Evaluasi Empiris Komprehensif (Academic Benchmark)

Model SasakLLM v4 telah dievaluasi secara ketat menggunakan metrik standar riset NLP & Large Language Model (ACL / IEEE Framework) pada GPU Nvidia T4 (CUDA):

Dimensi Pengujian Metrik Formal NLP Sampel Uji Skor Capaian Status & Karakteristik
Morfologi (Test Set Terkunci) Exact Match (EM) 25 kata 80.00% β­β­β­β­β˜† Sangat Kuat (Menguasai nasalisasi & afiksasi Sasak)
Budaya Lombok & Guardrails Exact Match (EM) 25 soal 44.00% β­β­β­β˜†β˜† Solid (100% akurat pada Mandalika, Rinjani, Bau Nyale)
Kelancaran Dialog (Conversational) ROUGE-L (F1) 25 dialog 16.52% Respon sopan bernilai sastra Sasak (Verbosity Penalty)
Dialektologi Komparatif Exact Match (EM) 15 soal 13.33% Memadukan dialek ke lingua franca Sasak umum
Kamus & Leksikon Balai Bahasa chrF++ (word-order 2) 30 kata 8.77% Leksikon kosa kata terpadu Balai Bahasa NTB
Kelancaran Intrinsik (Perplexity) Perplexity (PPL) Held-out Corpus 19.0 PPL βœ… Sangat Fasih ($PPL < 20$ menandakan model konvergen stabil)
Efisiensi Komputasi (GPU T4) Throughput & Latensi 120 total 19.8 tok/s Rata-rata latensi: 1.83 detik/query (VRAM: ~3.2 GB)

πŸ“Š Visualisasi Performa Model (Publication Figures)

Radar Benchmark Category Performance

Morphology Error Taxonomy Latency and Throughput


πŸ” Temuan Kunci & Analisis Diagnostik Linguistik

1. Keberhasilan Morfologi Tinggi (Akurasi 80.0%)

Model berhasil mengekstrak bentuk dasar (root lemma) dari 20 dari 25 kata berimbuhan Sasak yang diuji dari test set terkunci benchmark_test.csv:

  • ngadep βž” adep (nasalisasi awalan ng-)
  • nyemak βž” semak (nasalisasi awalan ny-)
  • tegitaq βž” gitaq (awalan pasif te-)
  • kematian βž” mati (konfiks ke- -an)
  • tetepaq βž” tepaq (reduplikasi/sisipan)
  • besopoq βž” sopoq, ngeluluq βž” luluq, pemanis βž” manis

2. Memori Budaya & Legenda Lokal Sangat Kuat

  • Putri Mandalika: Mampu menjelaskan pengorbanan sang putri di Pantai Kuta/Seger dan hubungannya dengan tradisi berburu cacing laut tahunan.
  • Bau Nyale & Gunung Rinjani: Dikenali secara presisi sebagai identitas geografis dan sakral pulau Lombok.
  • Honest Refusal (Guardrail): Mampu menolak secara jujur saat ditanya konsep absurd: "Kapal selam nenten madue roda dait tangga..." (Kapal selam tidak beroda).

3. Fenomena Verbosity Penalty pada ROUGE-L & chrF++

Pada pengujian percakapan sapaan ('Berembe kabarmu niki?'), model menghasilkan jawaban yang sangat santun:

"Alhamdulillah kabar solah dait becik-becik gati. Berembe kabarn pelinggih? Mugi seterusne bagie dait rahayu."

Secara kualitas penutur asli, jawaban ini memiliki nilai kesantunan tinggi. Namun karena rujukan benchmark hanya berupa kalimat pendek ("Alhamdulillah kabar solah dait becik-becik gati"), metrik otomatis ROUGE-L dan chrF++ memotong skor precision karena adanya token elaborasi doa tambahan.


πŸ“š Komposisi Dataset 100K (instruction_dataset_v4_100k.jsonl)

Pilar Kebahasaan Jumlah Data Persentase Sumber & Cakupan
Morfologi & Derivasi Kata 59.977 60,0% Lematisasi, derivasi prefiks/sufiks, analisis morfem (benchmark_train.csv)
Korpus Kalimat & Konteks Otentik 24.995 25,0% Standarisasi kalimat, pelengkapan struktur, dan tes pengisian kata (cloze test)
Kamus Dwi-Arah & Leksikon 13.367 13,4% Balai Bahasa NTB, ABVD Austronesian Core Vocabulary, paralel Sasak <-> ID
Dialog Harian & Etika Santun 1.301 1,3% Sapaan kabar, salam waktu, bertamu, pasar, bertani, transformasi Jamaq <-> Alus
Budaya, Nilai & Guardrails 360 0,3% Sesenggakan, Lelakaq, Mandalika, Bau Nyale, dan honest refusal
Total 100.000 100% Distribusi Berimbang Terverifikasi

πŸ’» Panduan Penggunaan Cepat (Inference)

# 1. Nonaktifkan modul torchao bawaan platform jika dijalankan di Kaggle / Colab
try:
    import peft.import_utils
    peft.import_utils.is_torchao_available = lambda: False
    import peft.tuners.lora.torchao
    peft.tuners.lora.torchao.is_torchao_available = lambda: False
    peft.tuners.lora.torchao.dispatch_torchao = lambda *args, **kwargs: None
except Exception:
    pass

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel

BASE_MODEL_ID = "Qwen/Qwen2.5-1.5B-Instruct"
ADAPTER_ID = "kodetr/SasakLLM-1.5B-Instruct-v4"

# 2. Muat Tokenizer & Base Model
tokenizer = AutoTokenizer.from_pretrained(BASE_MODEL_ID, trust_remote_code=True)
base_model = AutoModelForCausalLM.from_pretrained(
    BASE_MODEL_ID,
    torch_dtype=torch.float16,
    device_map="auto",
    trust_remote_code=True
)

# 3. Muat Adapter SasakLLM v4
model = PeftModel.from_pretrained(base_model, ADAPTER_ID)
model.eval()

# 4. Format Prompt
SYSTEM_PROMPT = (
    "Panjenengan adalah asisten cerdas Bahasa Sasak Lombok yang fasih, santun, dan terpercaya. "
    "Gunakan Bahasa Sasak yang murni, logis, dan alami. Jangan mencampuradukkan kata-kata acak atau bahasa lain. "
    "Jawab sapaan, dialog harian, budaya, dan pertanyaan dengan ramah, akurat, dan relevan."
)

prompt = "Berembe kabarmu niki?"
messages = [
    {"role": "system", "content": SYSTEM_PROMPT},
    {"role": "user", "content": prompt}
]

text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tokenizer([text], return_tensors="pt").to(model.device)

# 5. Generate Respon (Gunakan Greedy Decoding untuk Akurasi Maksimal Tanpa Halusinasi)
with torch.no_grad():
    output_tokens = model.generate(
        **inputs,
        max_new_tokens=120,
        do_sample=False,              # Greedy decoding (Anti-halusinasi)
        repetition_penalty=1.15,      # Anti pengulangan
        pad_token_id=tokenizer.eos_token_id
    )

response = tokenizer.decode(output_tokens[0][inputs.input_ids.shape[1]:], skip_special_tokens=True)
print("Jawaban SasakLLM:", response)

πŸ“œ Sitasi & Referensi Riset

Jika Anda menggunakan model atau dataset SasakLLM dalam riset ilmiah Anda, silakan sitasi karya ini:

@misc{sasakllm2026,
  author = {SasakLLM Research Team and kodetr},
  title = {SasakLLM: Low-Resource Small Language Model for Sasak Language with Morphological Grounding},
  year = {2026},
  publisher = {Hugging Face},
  howpublished = {\url{https://huggingface.co/kodetr/SasakLLM-1.5B-Instruct-v4}}
}
Downloads last month
13
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Model tree for kodetr/SasakLLM-1.5B-Instruct-v4

Adapter
(1699)
this model

Evaluation results

  • Morphological Root Extraction (Exact Match) on Sasak Benchmark 100k
    self-reported
    80.000
  • Intrinsic Perplexity on Sasak Benchmark 100k
    self-reported
    19.000
  • Culture & Guardrails Exact Match on Sasak Benchmark 100k
    self-reported
    44.000
  • Conversational Fluency ROUGE-L on Sasak Benchmark 100k
    self-reported
    16.520
  • Lexicon Translation chrF++ on Sasak Benchmark 100k
    self-reported
    8.770