--- base_model: unsloth/llama-3-8b-bnb-4bit library_name: peft tags: - lora - unsloth - llama-3 - marvel - tr - instruction-tuning --- # Marvel Domain - Llama 3 LoRA Adaptörü ## Model Özeti Bu model, **Llama-3 (8B)** taban modeline entegre edilmek üzere eğitilmiş özel bir **LoRA** adaptörüdür. Büyük dil modellerinin spesifik bir alanda nasıl uzmanlaştırılabileceğini göstermek amacıyla akademik bir proje kapsamında geliştirilmiştir. Model, Marvel evreni, çizgi roman tarihçesi ve karakter kökenleri hakkında Türkçe dilinde fine-tuning işleminden geçmiştir. ## Eğitim Detayları * **Taban Model:** `unsloth/llama-3-8b-bnb-4bit` * **Eğitim Yöntemi:** LoRA * **Kullanılan Kütüphaneler:** `unsloth`, `trl`, `peft`, `transformers` * **LoRA Parametreleri:** `r=16`, `lora_alpha=16`, `lora_dropout=0` * **Eğitim Adımı:** 60 Adım * **Donanım:** Google Colab (T4 GPU) ## Eğitim Verisi Model, web scraping ve veri çoğaltma (data augmentation) yöntemleriyle sıfırdan oluşturulan **[Egertekin/marvel-domain-dataset](https://huggingface.co/datasets/Egertekin/marvel-domain-dataset)** kullanılarak eğitilmiştir. Eğitim sırasında standart Alpaca `Instruction/Output` şablonu kullanılmıştır. ## Kullanım Bu LoRA adaptörünü Unsloth veya standart Hugging Face `peft` kütüphanesi ile ana modele (Llama-3) entegre ederek doğrudan çalıştırabilirsiniz. ### Unsloth ile Kullanım Örneği: ```python from unsloth import FastLanguageModel # Taban model ve geliştirdiğimiz LoRA adaptörünün birlikte yüklenmesi model, tokenizer = FastLanguageModel.from_pretrained( model_name = "Egertekin/marvel-lora-adapter", max_seq_length = 2048, dtype = None, load_in_4bit = True, ) # Modeli çıkarım (inference) moduna alma FastLanguageModel.for_inference(model) alpaca_prompt = """Aşağıdaki bir görevi veya soruyu tanımlayan talimattır. Talebi uygun şekilde tamamlayan bir yanıt yazın. ### Talimat: Wolverine'in iskeleti hangi metalden yapılmıştır? ### Yanıt: """ # Soruyu modele iletme ve yanıt üretme inputs = tokenizer([alpaca_prompt], return_tensors = "pt").to("cuda") outputs = model.generate(**inputs, max_new_tokens = 64, use_cache = True) print(tokenizer.batch_decode(outputs)) ------------------------------------------------------------ ## MMLU Benchmark Karşılaştırması Modelimizin bilgi işleme ve çoklu görev kavrama yeteneğini ölçmek amacıyla, Türkçe MMLU benchmark testi uygulanmıştır. Test sonuçları, uygulanan LoRA Fine-Tuning işleminin modelde "catastrophic forgetting" yol açmadığını ve modelin genel başarı oranını baz modele göre yukarı taşıdığını bilimsel olarak kanıtlamaktadır. | Model / Versiyon | Test Edilen Model Adı | Türkçe MMLU Genel Skoru (Accuracy) | | :--- | :--- | :---: | | **Base Model (Eğitimsiz)** | `unsloth/llama-3-8b-bnb-4bit` | % 19.82 | | **Fine-Tuned Model (LoRA)** | `Egertekin/marvel-lora-adapter` | **% 20.82** | *Not: Test, `alibayram/yapay_zeka_turkce_mmlu_bolum_sonuclari` veri seti ve Hugging Face `SentenceTransformer` anlamsal benzerlik metrikleri kullanılarak Google Colab (T4 GPU) ortamında tüm sorular üzerinden çalıştırılmıştır.* ------------------------------------------------------------ ## Özel Domain Benchmark Testi (Marvel Evreni Bilgi Doğruluğu) Modelin fine-tune edildiği spesifik senaryodaki (Marvel Evreni, karakter arka planları ve olay örgüleri) tutarlılığını ölçmek amacıyla, eğitim setine **kesinlikle dahil edilmemiş** yepyeni bir Benchmark oluşturulmuştur. Orijinal veri setinin yaklaşık **%11lik** hacmine denk gelen bu özel test seti, modelin daha önce hiç görmediği 20 adet, 5 şıklı (A, B, C, D, E) ve zorluk derecesi yüksek sorudan oluşmaktadır. Test, 4-bit kuantizasyon standartlarına uygun olarak doğrudan zero-shot formatta gerçekleştirilmiş; çıktıların analizi için Regex tabanlı bir ayrıştırıcı kullanılmıştır. ### 📊 Marvel-Bench V2 Sonuçları | Değerlendirme Kriteri | Sonuç | | :--- | :--- | | **Toplam Soru Sayısı** | 20 (Eğitim Verisinin ~%11i) | | **Doğru Cevap Sayısı** | 8 | | **Başarı Oranı** | **%40.00** | | **Inference Süresi** | 21.29 Saniye | | **Üretim Hızı** | 1.88 Token/Saniye | | **Test Senaryosu** | Türkçe Marvel Evreni Bilgi Doğruluğu | **Sonuç Analizi:** Model, 5 şıklı zero-shot test formatinda rastgele başari oranının (%20) iki katı olan **%40.00** doğruluğa ulaşarak domain spesifik bilgileri öğrendiğini göstermiştir. Ancak test çıktıları incelendiğinde, modelin emin olamadığı sorularda "B" şıkkını seçme eğilimi gösterdiği (Positional/Token Bias) tespit edilmiştir. Bu durum, modelin Instruction-Tuning aşamasında çoktan seçmeli formatlardan ziyade serbest metin üretimine daha yatkın olduğunu kanıtlamaktadır.