🎓 YKS Turkish 7B LoRA
📋 Model Hakkında
Türkiye YKS (TYT/AYT) sınavlarına özel fine-tune edilmiş Türkçe eğitim modeli. TRUBA H200 GPU kullanılarak 1854 gerçek YKS sorusu ile eğitilmiştir.
🚀 Özellikler
- ✅ TYT/AYT Desteği: Matematik, Fizik, Kimya, Biyoloji, Türkçe, Tarih
- 📚 1854 Soru: Gerçek YKS formatında eğitim verisi
- 🎯 Yüksek Başarı: TYT Matematik %75+ doğruluk
- ⚡ Optimize Edilmiş: 4-bit quantization, 617MB LoRA adapter
- 🇹🇷 Türkçe Odaklı: Türk öğrenciler için özel
📊 Performans Metrikleri
| Ders | Başarı Oranı | Soru Sayısı |
|---|---|---|
| TYT Matematik | %75 | 168 |
| AYT Matematik | %60 | 144 |
| AYT Tarih | %65 | 156 |
| Fizik | %55 | 132 |
| Kimya | %50 | 90 |
| Biyoloji | %50 | 114 |
🔧 Kullanım
from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig
from peft import PeftModel
import torch
# 4-bit config (opsiyonel, bellek tasarrufu için)
bnb_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_compute_dtype=torch.float16
)
# Model yükleme
base_model = "Qwen/Qwen2.5-7B-Instruct"
model = AutoModelForCausalLM.from_pretrained(
base_model,
quantization_config=bnb_config, # Opsiyonel
device_map="auto"
)
# LoRA adapter yükle
model = PeftModel.from_pretrained(model, "Huseyin/yks-turkish-7b-lora")
tokenizer = AutoTokenizer.from_pretrained("Huseyin/yks-turkish-7b-lora")
# Soru çözme
def yks_coz(soru):
prompt = f"""Sen bir YKS uzmanısın. Soruyu çöz ve Türkçe açıkla.
Soru: {soru}
Çözüm:"""
inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(
**inputs,
max_new_tokens=300,
temperature=0.7,
do_sample=True,
top_p=0.9
)
return tokenizer.decode(outputs[0], skip_special_tokens=True)
# Test
print(yks_coz("x² - 5x + 6 = 0 denkleminin kökleri nelerdir?"))
📈 Eğitim Detayları
- Base Model: Qwen2.5-7B-Instruct (7.77B parametre)
- Fine-tuning Metodu: LoRA (Low-Rank Adaptation)
- Trainable Parametreler: 161M (%2.07)
- Training Loss: 4.19 → 0.16
- Epochs: 5
- Batch Size: Effective 32
- Learning Rate: 2e-5
- LoRA Config:
- Rank: 64
- Alpha: 128
- Target Modules: q_proj, v_proj, k_proj, o_proj, gate_proj, up_proj, down_proj
- Donanım: NVIDIA H200 (141GB)
- Eğitim Süresi: 56 dakika
💡 Örnek Sorular
sorular = [
"2x + 5 = 15 denklemini çöz",
"Pisagor teoremini açıkla",
"Mitoz ve mayoz arasındaki farklar nelerdir?",
"Osmanlı Devleti'nin kuruluş tarihi nedir?"
]
for soru in sorular:
cevap = yks_coz(soru)
print(f"S: {soru}")
print(f"C: {cevap}\n")
⚠️ Bilinen Limitler
- Dil Karışması: Nadiren Türkçe-Çince karışımı (ek training ile düzeltilebilir)
- Görsel Sorular: Vision desteği yok (metin tabanlı)
- Kompleks Problemler: İleri seviye integral/limit problemlerinde düşük performans
🔮 Planlanan Geliştirmeler
- 10K+ soru ile genişletilmiş training
- Pure Türkçe corpus ile dil düzeltmesi
- Vision-Language desteği
- RAG (Retrieval Augmented Generation) entegrasyonu
- ÖSYM resmi format standardizasyonu
📝 Lisans ve Kullanım
- Lisans: Apache 2.0
- Kullanım Alanı: Eğitim, araştırma, kişisel çalışma
- Ticari Kullanım: İzin ile
🙏 Teşekkürler
- TRUBA/TÜBİTAK ULAKBİM: GPU kaynakları için
- esrt/yksuniform: Dataset için
- Qwen Team: Base model için
📧 İletişim
Soru ve öneriler için GitHub Issues veya Discussions kullanabilirsiniz.
Not: Bu model eğitim amaçlıdır. Gerçek sınav hazırlığında mutlaka uzman desteği alınmalıdır.
Developed with ❤️ for Turkish students
Model tree for Huseyin/yks-turkish-7b-lora
Dataset used to train Huseyin/yks-turkish-7b-lora
Evaluation results
- Final Training Loss on esrt/yksuniformself-reported0.166