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, question sorusunun 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-flash judge'ı 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
-
Safetensors
Model size
4B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for hayriyigit/decider-4b-tr-rag

Adapter
(1)
this model
Adapters
1 model

Datasets used to train hayriyigit/decider-4b-tr-rag