Eğitim
Table | |
|---|
| veri | tunahanf/turkish-medicine-law sürüm v2.0 |
| yöntem | QLoRA (4-bit), train_on_completions |
| r / alpha / dropout | 32 / 64 / 0.05 |
| epoch | 2 (542 adım) |
| en iyi eval_loss | 0.3481 (adım 542) |
| görülen token | 13,668,592 |
Eğitim promptunda JSON şeması, alan listesi veya örnek yoktur; model çıktı biçimini yalnız örneklerden öğrenir. Bu, ölçümde önemli: şema promptla verildiğinde model şemadaki örnek değerleri tekrarlıyor (aşağıya bakın).
Ölçüm
Test split'inin 565 örneğinde, aynı koşuda, greedy decoding ile. Karşılaştırma base model lehine kurulu: base'e promptta açık JSON şeması + kapalı etiket kümeleri veriliyor, fine-tune'a verilmiyor.
Table with columns: görev / metrik, base + şema, fine-tune, naif taban, karar| görev / metrik | base + şema | fine-tune | naif taban | karar |
|---|
madde_qa.dogru_sik | 0.798 | 0.776 | 0.557 (en uzun şık) | fark ölçülemedi |
karar_ozeti.mahkeme (daire no) | 0.919 | 1.000 | — | LoRA üstün · taban yok |
karar_ozeti.esas_karar_no (sayısal) |
Karar sütunu, source_id kümesi düzeyinde eşleşmiş bootstrap'la hesaplanan %95 güven aralığından türetildi; "fark ölçülemedi" = aralık sıfırı içeriyor, yani bu koşu o alanda bir fark gösteremiyor. Kalın yazılanlar base'i ve naif tabanı birlikte aşan tek alandır. Tabansız bir doğruluk sayısı yanıltıcıdır.
Naif tabanı geçemeyen alanlar: senaryo_analizi.ispat_yuku, sonuc_tahmini.sonuc (kurtarılmış). ispat_yuku'nda model cevapların çoğunda "belirsiz" diyerek çoğunluk sınıfını oynuyor; sonuc_tahmini'nde etiket mahkeme koduyla güçlü korelasyonlu ve model o sıfır-zekâlı stratejiyi geçemiyor. Bu alanlarda modeli kullanmayın.
Tablodaki sayılar ham çıktıdan şu düzeltmelerle üretildi (düzeltmeden base olduğundan kötü görünüyordu): Türkçe imla ASCII'ye; kesilen JSON'dan alan kurtarma; yalnız esas/karar sayıları; yazım biçimi yerine daire numarası.
Atıf geçerliliği
Modelin ürettiği her (kanun, madde) çifti 1178 maddelik mevzuat tablosuna çözdürüldü:
Table with columns: üretilen atıf, çözülen, oran | üretilen atıf | çözülen | oran |
|---|
| gold (veri setinin etiketi) | 161 | 159 | 0.988 |
| base + şema | 106 | 1 | 0.009 |
| fine-tune | 232 | 232 | 1.000 |
Base'in düşük oranı uydurma değil kelime dağarcığı hatası: kanun kodu yerine tam adını yazıyor (TÜRK BORÇLAR KANUNU m471), yani hiçbiri atıf doğrulama katmanından geçmez.
Çözülebilirlik isabet demek değildir — aynı modelin dayanak F1'i çok daha düşük. Bu sayı yalnız halüsinasyonun yokluğunu ölçer. Üretimde her atıfı mevzuat tablosuna karşı doğrulayın.
Kullanım
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
BASE = "google/gemma-4-12B-it"
ADAPTER = "tunahanf/gemma-4-12b-it-medlaw-tr-LORA-2"
tok = AutoTokenizer.from_pretrained(ADAPTER)
model = PeftModel.from_pretrained(
AutoModelForCausalLM.from_pretrained(
BASE, torch_dtype=torch.bfloat16, device_map="auto"),
ADAPTER)
mesajlar = [{"role": "user", "content":
"Hasta Hakları Yönetmeliğine göre rızanın geçerli olması "
"için hangi unsurlar aranır?"}]
girdi = tok.apply_chat_template(mesajlar, add_generation_prompt=True,
return_tensors="pt").to(model.device)
print(tok.decode(model.generate(girdi, max_new_tokens=512)[0]))
Promptu eğitimdeki gibi şemasız verin. Prompt'a doldurulmuş bir JSON örneği koyarsanız model kapalı etiketli alanlarda o örneğin değerlerini tekrarlar (ölçüldü: bazı alanlarda %100'e varan oranda).
Sınırlamalar
- Eval seti hukukçu onayından geçmedi — makine etiketli bir karşılaştırma kümesidir. "Model tıp hukukunu şu oranda biliyor" iddiasına dayanak yapılamaz.
- Veri setinde ölçüm artefaktları var:
madde_qa'da doğru şıkkın çoğu en uzun şık, sonuc_tahmini'nde etiket mahkeme koduyla korelasyonlu. Veri kartını okuyun.
- Model eğitimde hiç mevzuat belgesi görmedi. Bağlama madde koymak yalnız
madde_qa'da kazandırıyor; kapalı etiketli görevlerde yanlış seçilmiş bir madde skoru düşürebiliyor.
kvkk_uyum deneyseldir (test'te 3 örnek), raporlanmamalı.
- Kararlar anonimleştirilmiş kaynaklardan gelir ve ek bir maskeleme katmanından geçti, ama sıfır sızıntı garantisi verilmez.
Kaynak
Veri seti, ölçüm script'leri ve koşu artefaktları: tunahanf/turkish-medicine-law. Bu kartın sayıları 2026-09-19_adapterV2_veriV2.0_4kol_GECERLI koşusundan üretildi (finetune/uret_model_karti.py); elle yazılmadı.