--- library_name: mlx language: - id - ar tags: - qwen - mlx - lora - hadith - islamic-nlp - fine-tune - kutub-al-sittah - alii license: apache-2.0 base_model: Qwen/Qwen2.5-7B-Instruct pipeline_tag: text-generation --- Training Dashboard # ILMA-KUTUB6 **Qwen2.5-7B-Instruct — fine-tuned with LoRA on Kutub al-Sittah hadith dataset** Model fine-tuning pertama dari **AI Literacy Innovation Institute (ALII)** UIN Syarif Hidayatullah Jakarta. Dikembangkan untuk analisis hadits dalam bahasa Indonesia dan Arab. ## Training Performance | Metric | Value | | ------------------------ | -------------------- | | **Final Train Loss** | 0.193 | | **Final Val Loss** | 0.183 | | **Total Tokens Trained** | 223,977 | | **Training Time** | ~54 menit (500 iter) | | **Peak Memory** | 10.176 GB | ## Cara Penggunaan ### 1. Install Dependencies ```bash pip install mlx-lm ``` ### 2. Load Model ```python from mlx_lm import load, generate from mlx_lm.sample_utils import make_sampler model, tokenizer = load("ai-literacy-innovation-institute/ilma-kutub-6") ``` ### 3. Generate (Plain Prompt) ```python response = generate( model, tokenizer, prompt="Apa hukum shalat berjamaah?", max_tokens=1024, sampler=make_sampler(temp=0.7), ) print(response) ``` ### 4. Generate (Chat Template - Recommended) ```python messages = [ {"role": "system", "content": "Kamu adalah seorang asisten keilmuan Islam..."}, {"role": "user", "content": "Analisis sanad hadits riwayat Bukhari."}, ] formatted = tokenizer.apply_chat_template( messages, tokenize=False, add_generation_prompt=True ) response = generate( model, tokenizer, prompt=formatted, max_tokens=1024, sampler=make_sampler(temp=0.7), ) print(response) ``` ### 5. Conversational Chat ```python history = [{"role": "system", "content": "Kamu adalah seorang asisten keilmuan Islam..."}] history.append({"role": "user", "content": "Apa itu hadits mutawatir?"}) formatted = tokenizer.apply_chat_template(history, tokenize=False, add_generation_prompt=True) response = generate(model, tokenizer, prompt=formatted, max_tokens=512, sampler=make_sampler(temp=0.7)) history.append({"role": "assistant", "content": response}) print("A:", response) # Follow-up question history.append({"role": "user", "content": "Berikan contohnya dari Shahih Bukhari."}) formatted = tokenizer.apply_chat_template(history, tokenize=False, add_generation_prompt=True) response = generate(model, tokenizer, prompt=formatted, max_tokens=512, sampler=make_sampler(temp=0.7)) print("A:", response) ``` ### 6. Streamlit App ```bash streamlit run app.py ``` ## Contoh Pertanyaan untuk Testing ### Sanad & Rijal 1. Analisis sanad hadits: _حَدَّثَنَا قُتَيْبَةُ بْنُ سَعِيدٍ، حَدَّثَنَا لَيْثٌ، عَنِ ابْنِ شِهَابٍ، عَنْ عُرْوَةَ، عَنْ عَائِشَةَ_. Identifikasi setiap perawi beserta thabaqat-nya dan kualitas sanad. 2. Bandingkan metode al-Jarh wa al-Ta'dil antara Imam Ibnu Hajar dalam _Tahdhib al-Tahdhib_ dengan Imam al-Dhahabi dalam _Mizan al-I'tidal_. 3. Seorang perawi dinilai _majhul_. Jelaskan perbedaan pendapat ulama tentang penerimaan riwayat perawi majhul. ### Mustalah al-Hadits 4. Jelaskan perbedaan _hadits shahih li-dzatihi_ dan _shahih li-ghairihi_. Berikan contoh dari Shahih al-Bukhari. 5. Apa kriteria Imam al-Tirmidzi dalam menetapkan status _hasan_? Bandingkan dengan pendekatan Ibnu Hajar. 6. Apa itu _hadits mudraj_? Berikan contoh dari Sunan al-Tirmidzi dan cara mendeteksinya. ### Takhrij & Perbandingan Kutub al-Sittah 7. Lakukan takhrij hadits _"من سن في الإسلام سنة حسنة"_ — bandingkan lafaz riwayat antara Muslim, al-Tirmidzi, dan Ibnu Majah. 8. Hadits _"إنما الأعمال بالنيات"_ — bandingkan seluruh riwayat dalam Kutub al-Sittah. Adakah perbedaan redaksi antar kitab? 9. Mengapa hadits _"لا ضرر ولا ضرار"_ hanya diriwayatkan oleh Ibnu Majah? Bagaimana statusnya sebagai dalil hukum? ### Fiqh & Hadits 10. Terdapat dua hadits yang tampak kontradiktif: (a) Puasa Syawwal seperti puasa setahun (HR. Muslim) dan (b) Tidak ada puasa setelah Ramadhan kecuali sunnah (HR. Bukhari). Bagaimana ulama memadukan keduanya? 11. Hadits _mu'an'an_ — apa syarat Imam al-Bukhari dan Muslim dalam menerimanya? Mengapa Syu'bah menolak hadits mu'an'an dari mudallis? ### Multi-dimensi 12. Analisis hubungan QS. al-Maidah [5]: 3 dengan hadits _"بني الإسلام على خمس"_. Jelaskan korelasi ayat ikmal al-din dengan rukun Islam. 13. Jika sebuah hadits muttafaq 'alaih ternyata memiliki 'illah yang baru terdeteksi — bagaimana sikap peneliti? 14. Bandingkan pendekatan Sunan Abu Dawud vs Ibnu Majah dalam meriwayatkan hadits ahkam. Mana yang lebih ketat? ### Peneliti & Akademik 15. Apa itu AI Literacy Innovation Institute (ALII) dan apa fokus utamanya? 16. Siapa Dr. Kamal Fiqry Musa dan apa kontribusinya dalam pengembangan AI untuk kajian kitab kuning? ## Dataset Dataset SFT (60,561 examples) mencakup analisis hadits dari Kutub al-Sittah, kritik sanad, biografi perawi, fiqh, dan profil peneliti ALII UIN Jakarta. ## License Apache 2.0 ## Citation ```bibtex @misc{ilma-kutub6-2026, author = {ALII UIN Jakarta}, title = {ILMA-KUTUB6: Qwen2.5-7B Fine-tuned on Kutub al-Sittah}, year = {2026}, publisher = {AI Literacy Innovation Institute}, } ``` --- _Dikembangkan oleh **AI Literacy Innovation Institute (ALII)** — UIN Syarif Hidayatullah Jakarta_