decider-4b-tr-rag: Türkçe RAG için cevaplanabilirlik
English summary. A second LoRA round (rank 64, merged into the bf16 weights) on
hayriyigit/decider-4b-tr for one decision: can this retrieved document answer
this question? Trained for one epoch on 87.318 Turkish rows built so that the negative documents are on topic and hold the
same kind of information, for another entity, institution, place or period (translated 2WikiMultihopQA, HotpotQA and MuSiQue, an
LLM judge filtering their answerable rows, LLM-written Turkish minimal pairs, SQuAD 2.0-tr) plus replay rows. On held-out rows
built the same way it is close to perfect (2WikiMultihopQA-tr 1.000, synthetic 0.992);
on the independent SQuAD 2.0-tr dev set it is unchanged (0.862 → 0.861). Treat the in-distribution
numbers as an upper bound, and check it on your own documents.
hayriyigit/decider-4b-tr üzerine, tek bir karar için yapılmış ikinci bir LoRA
turu: RAG'de getirilen belge, kullanıcının sorusunu cevaplıyor mu? Hedef hata türü, belgenin konuyla ilgili olup aynı
türden bilgiyi başka bir varlık, kurum, yer ya da dönem için içermesi: model "belgede bu türden bir bilgi var mı?" sorusuna
bakıp "bu bilgi sorulan varlığa ve döneme mi ait?" sorusuna bakmadığında "evet" diyordu.
Kullanım
import sys
from huggingface_hub import snapshot_download
path = snapshot_download("hayriyigit/decider-4b-tr-rag", token="hf_...") # private repo: okuma yetkili bir token
sys.path.insert(0, path)
from decider.infer import Decider
d = Decider(path)
QUESTION = {"answerable": {"type": "noul", "instructions": "Verilen `document`, `question` sorusunun TÜM kısımlarını doğru ve eksiksiz şekilde cevaplamak için yeterli bilgiyi açıkç…"}} # tam metin aşağıda
p_yes = d.system_one({"question": "Türksat 6A hangi tarihte uzaya fırlatıldı?", "document": belge}, QUESTION)["answers"]["answerable"]["noul"]
Eğitimde kullanılan soru metni (eğitim satırlarının yarısında bu metin, yarısında üç farklı ifade vardı):
Verilen
document,questionsorusunun TÜM kısımlarını doğru ve eksiksiz şekilde cevaplamak için yeterli bilgiyi açıkça içeriyor mu? Yalnızca belgede açıkça belirtilen veya belgeden doğrudan ve tartışmasız biçimde çıkarılabilen bilgileri kullan. Konusal olarak ilgili olmak yeterli değildir. Soruda belirli bir tarih, sayı, isim, konum, neden, yöntem veya başka bir bilgi isteniyorsa, istenen bilgi belgede doğru olay, varlık ve ilişkiyle bağlantılı olmalıdır. İstenen cevaba benzeyen bir bilginin belgede başka bir olay veya varlık için geçmesi cevap sayılmaz. Sorunun birden fazla kısmı varsa TÜM kısımlar cevaplanabiliyorsa EVET, herhangi bir gerekli kısım eksikse HAYIR döndür. Dış bilgi kullanma.
State {"question": …, "document": …}: document düz metindir (başlık, tarih ve kaynak satırları metnin içinde olabilir).
noul temperature değeri 1,097 (decider_config.json), ayrılmış 1.500 Türkçe kararda fit edildi.
Bu modelin bazı örneklerde verdiği P(evet):
| Soru | Belge (son kısmı) | P(evet) |
|---|---|---|
| Türksat 6A hangi tarihte uzaya fırlatıldı? | …yöneticilerin katıldığı bir değerlendirme toplantısı gerçekleştirildi. | 0,032 |
| Türksat 6A hangi tarihte uzaya fırlatıldı? | …Uydu SpaceX'in Falcon 9 roketiyle Cape Canaveral'dan uzaya gönderildi. | 0,003 |
| Türksat 6A hangi tarihte uzaya fırlatıldı? | …roketiyle Cape Canaveral'dan 9 Temmuz 2024 tarihinde uzaya gönderildi. | 1,000 |
| Siparişim ne zaman teslim edilecek? | …verilir ve kargoya verildikten sonra 1-3 iş günü içinde teslim edilir. | 0,932 |
| Siparişimin kargo takip numarası nedir? | …verilir ve kargoya verildikten sonra 1-3 iş günü içinde teslim edilir. | 0,000 |
İlk iki satırda belgede aynı türden bilgi (bir tarih) başka bir olay için geçiyor ya da hiç geçmiyor: model "hayır" diyor; tarih fırlatmanın kendisine ait olduğunda (üçüncü satır) "evet". Dördüncü satır tartışmalıdır: belge kişinin kendi siparişinin tarihini değil, genel bir süreyi verir; katı kurala göre cevap hayır olmalıdır, model ise genel kuralı cevap sayıyor. Genel bir politikanın belirli bir vakayı cevaplayıp cevaplamadığına kendi verinizle bakın.
Değerlendirme
Test satırları eğitimde görülmedi. "Önce" başlangıç modelidir (decider-4b-tr). Toplam: 16.243 karar, doğruluk
0,860 → 0,893, ECE 0,023 → 0,043.
| Test seti | Karar | Doğruluk (önce) | Doğruluk (sonra) | Cevaplanabilirde doğru | Cevaplanamazda doğru | AUROC | ECE |
|---|---|---|---|---|---|---|---|
| 2WikiMultihopQA-tr: aynı alan, başka varlık | 1.200 | 0,962 | 1,000 | 0,987 → 1,000 | 0,935 → 1,000 | 0,997 → 1,000 | 0,022 → 0,001 |
| Sentetik Türkçe minimal pair'ler | 1.170 | 0,906 | 0,992 | 0,997 → 0,983 | 0,862 → 0,996 | 0,996 → 1,000 | 0,028 → 0,004 |
| HotpotQA-tr: tüm hop'lar / eksik hop / distractor | 1.500 | 0,806 | 0,980 | 0,618 → 0,970 | 0,899 → 0,984 | 0,871 → 0,997 | 0,065 → 0,006 |
| MuSiQue-tr: tüm hop'lar / eksik hop | 500 | 0,634 | 0,898 | 0,376 → 0,832 | 0,908 → 0,972 | 0,751 → 0,978 | 0,186 → 0,030 |
| SQuAD 2.0-tr dev (bağımsız, insan yazımı) | 11.873 | 0,862 | 0,861 | 0,937 → 0,924 | 0,783 → 0,798 | 0,940 → 0,935 | 0,016 → 0,057 |
Sentetik setin tuzak türlerinde "hayır"ı bilme oranı:
| Tuzak | Karar | Önce | Sonra |
|---|---|---|---|
kurum (başka bir kurumun aynı bilgisi) |
113 | 0,779 | 1,000 |
varlik (aynı türden başka bir varlık) |
115 | 0,913 | 0,991 |
zaman (yayın tarihinden sonraki ya da kapsanmayan dönem) |
113 | 0,894 | 1,000 |
yer_facet (başka şehir/bölge ya da başka yön) |
113 | 0,929 | 1,000 |
eksik_oznitelik (belgede olmayan öznitelik) |
127 | 0,913 | 0,992 |
kismi (iki parçalı soru, bir parçası cevapsız) |
232 | 0,797 | 0,996 |
Nasıl okunmalı
- Büyük kazançlar eğitim verisiyle aynı yöntemle kurulmuş test setlerinde. 2WikiMultihopQA, HotpotQA, MuSiQue ve sentetik test satırları, eğitim satırlarıyla aynı şablon, aynı writer model ve aynı paragraf düzeniyle kuruldu; model bu kalıpları öğrendi. Bu sayılar gerçek belgelerdeki başarının üst sınırı olarak okunmalı.
- Bağımsız SQuAD 2.0-tr'de değişiklik yok: doğruluk 0,862 → 0,861, cevaplanamazları bilme 0,783 → 0,798, cevaplanabilirleri bilme 0,937 → 0,924; kalibrasyon biraz kötüleşti (ECE 0,016 → 0,057).
- HotpotQA ve MuSiQue testlerinin evet satırları judge ile filtrelenmedi. Train'de bu satırların sırasıyla ~%19 ve ~%46'sı katı kurala göre cevaplanamaz bulunup çıkarılmıştı; testte de benzer bir pay vardır. Modelin MuSiQue evet satırlarında "evet" oranının 0,376 → 0,832 çıkması, bu tür belgelere sorunun gerçekten cevaplanıp cevaplanmadığına bakmadan evet demeyi öğrenmiş olabileceğine işaret ediyor.
- Genel karar becerisinin (bev, jev-bench vb.) korunup korunmadığı ölçülmedi; eğitimde 7.000 replay satırı vardı.
Validation
Eğitim karışımından belgeye göre gruplanarak ayrılmış 1.500 Türkçe satır: doğruluk 0,981, cross-entropy 0,056. Bu satırlar eğitim verisiyle aynı kaynaklardan geldiği için yukarıdaki ilk uyarı onlar için de geçerli.
Eğitim verisi
| Kaynak | Evet | Hayır |
|---|---|---|
| 2WikiMultihopQA-tr: doğru varlık / aynı alan, başka varlık | 12.000 | 12.000 |
| HotpotQA-tr: judge onaylı tüm hop'lar / eksik hop + distractor | 8.090 | 10.112 |
| MuSiQue-tr: judge onaylı tüm hop'lar / eksik hop | 2.697 | 3.371 |
| Sentetik Türkçe (iki kez, iki farklı soru ifadesiyle) | 6.490 | 15.058 |
| SQuAD 2.0-tr | 8.027 | 3.973 |
| Replay: bev-decision-150K-tr ve İngilizce bev satırları, başlangıç modelinin kendi cevaplarına (KL) | 7.000 satır |
- HotpotQA ve MuSiQue'nin evet satırları
deepseek-v4.1-flashjudge'ı ile filtrelendi (sırasıyla 1.910 ve 2.303 satır çıkarıldı); bu iki kaynakta judge yalnızca evet satırlarını elediği için hayır satırları, evetlerin 1,25 katına indirildi (türler arasında eşit). - Soru metni satırların yarısında yukarıdaki metin, yarısında üç farklı ifade; model tek bir cümleye bağlanmasın diye.
- Belirli bir değerlendirme setiyle (judge set) örtüşmemesi için bazı adlar ve kombinasyonlar sentetik üretimden çıkarıldı.
Eğitim
| Başlangıç | hayriyigit/decider-4b-tr (df9aacb), o da Mapika/decider-4b v2.1 üzerine bir LoRA turu |
| Yöntem | LoRA rank 64, alpha 128; attention ve MLP projeksiyonları; 121,9M trainable parametre; bf16 ağırlıklara merge edildi |
| Loss | Türkçe satırlarda label'a cross-entropy; replay satırlarında frozen başlangıç modelinin cevap dağılımına (KL) |
| Program | 1 epoch, 660 adım × 65.536 token (106.021 prompt satırı, 49.019.781 token); learning rate 1e-4, %5 warmup, cosine |
| Donanım ve süre | 1 × RTX 5090 (32 GB), bf16, gradient checkpointing, causal-conv1d; eğitim 3 sa 24 dk (~4.290 token/s) |
Eğitim ve değerlendirme kayıtları training/ klasöründe.
Sınırlamalar
- Gerçek RAG belgelerinde (ürün sayfaları, haberler, kurum duyuruları) ayrıca doğrulanmadı; yukarıdaki test setlerinin çoğu eğitim verisiyle aynı yöntemle kuruldu.
- Hayır örnekleri eğitimde evetlerden fazlaydı; model belirsiz durumlarda "hayır"a kayabilir. Threshold'u kendi verinizle seçin.
- Eğitim verisinin çoğu makine çevirisi ve LLM üretimidir.
- Genel karar becerisi ve FP8 bu model için ölçülmedi.
Lisans
Taban modelin ve eğitim verilerinin lisansları farklıdır; ayrıntılar LICENSE.md'de.
- Downloads last month
- -