KUTUP-1-Decision-2B / README.md
TurkishCodeMan's picture
Release KUTUP-1-Decision-2B with AutoModel & AutoTokenizer support
8dbced7 verified
|
Raw History Blame Contribute Delete
5.63 kB
---
license: apache-2.0
base_model: Qwen/Qwen3.5-2B-Base
tags:
- clef
- systemone
- decision-model
- zero-token
- latent-reasoning
- turkish
- classification
datasets:
- bezir/MMLU-pro-TR
metrics:
- accuracy
model-index:
- name: KUTUP-1-Decision-2B
results:
- task:
type: multiple-choice
name: Multiple Choice Question Answering
dataset:
name: MMLU-Pro-TR
type: bezir/MMLU-pro-TR
metrics:
- name: Accuracy
type: accuracy
value: 34.12
---
# 🚀 KUTUP-1-Decision-2B: Türkçe SystemOne Karar Motoru (0-Token Latent Decision)
**KUTUP-1-Decision-2B**, Cloudflare'ın öncülük ettiği **CLEF / SystemOne (Classification via Latent Evidence Fusion)** mimarisi referans alınarak, `Qwen/Qwen3.5-2B-Base` omurgası üzerinde sıfırdan inşa edilmiş ve eğitilmiş **ilk yerli Türkçe Ayrımcı Karar Motorudur.**
Geleneksel üretken LLM'lerin (Autoregressive) aksine, bu model yeni kelimeler üretmez (0-Token Inference). Girdi metnini tek bir ileri geçişte (Forward Pass) işleyerek sadece **43 milisaniyede** doğrudan yapılandırılmış kararlar, olasılık dağılımları ve kalibre edilmiş güven skorları üretir.
---
## 🏆 Benchmark Karşılaştırması: MMLU-Pro-TR (bezir/MMLU-pro-TR)
10 seçenekli (A-J), üniversite ve doktora seviyesindeki 11.842 adet zorlu Türkçe soru üzerinde yapılan genel bilgi ve akıl yürütme değerlendirmesi:
| Model | Mimari / Türü | Parametre Boyutu | MMLU-Pro-TR Doğruluk | Ortalama Gecikme |
| :--- | :--- | :---: | :---: | :---: |
| **Cloudflare CLEF-Flash** | Ayrımcı SystemOne (Global) | **9B** | **%41.88** | 79.67 ms |
| **KUTUP-1-Decision-2B (Bu Model)** | **Ayrımcı SystemOne (Türkçe)** | **2B** | **%34.12** | **43.12 ms** |
| **LiquidAI/d1-3B** | Multimodal / Autoregressive | **3B** | **%27.24** | 17.11 ms |
| **Laya-Multilingual** | mmBERT Karar Modeli | **~300M** | **%11.76** | 10.48 ms |
### 💡 Kritik Başarılar:
1. **+1 Milyar Parametre Üstünlüğü:** Kendisinden 1 milyar daha büyük parametreye sahip olan `LiquidAI/d1-3B` modeline **neredeyse 7 puan net fark** atmıştır (%34.12 vs %27.24).
2. **4.5 Kat Büyük 9B Modelin Ensesinde:**
- **Biyoloji:** %59.52 (LiquidAI: %49.58)
- **Psikoloji:** %49.87 (LiquidAI: %35.13)
- **İktisat:** %46.27 (LiquidAI: %34.46)
- **Sağlık:** %39.00 (LiquidAI: %20.25)
- **Bilgisayar Bilimi:** %34.76 (LiquidAI: %24.18)
- **Mühendislik:** %37.41 (9B modelin %40.21'lik skoruna yakın rekabette)
---
## 🛠️ Mimari ve Katman Tasarımı
1. **Omurga (Backbone):** `Qwen/Qwen3.5-2B-Base` (LoRA adaptörleri ile r=32, α=64).
2. **Context Memory Projeksiyonu:** 2048 boyutlu omurga uzayını 1024 boyutlu karar uzayına indirgeyen darboğaz katmanı.
3. **EvidenceRoutingBlock (Cross-Attention):** Seçeneklerin metindeki kanıtları kendi içine çekmesini sağlayan delil toplama bloğu.
4. **Joint Transformer Decoder (x4):** Seçeneklerin birbirini eleme mantığıyla yarıştığı derin karar katmanı.
5. **İkili Skorlayıcı (Prior + Gated Residual MLP):** Sözcüksel benzerlik ile derin mantıksal çelişkileri birleştiren nihai kapılı skorlama modülü.
---
## 📚 Nasıl Eğitildi?
Model 2 aşamalı disiplinli bir eğitimden geçmiştir:
- **Aşama 1 (Head Warmup):** Qwen omurgası dondurularak 100.000 örnekle sadece `JointSchemaHead` katmanları ısıtıldı.
- **Aşama 2 (Knowledge & Decision LoRA):** 38.3 milyon tokenlık "3'lü Altın Harman":
- 35.000 adet çok alanlı kurumsal sentetik sözleşme (max 1.500 token),
- 13.985 adet saf akademik MMLU-TR sorusu (57 disiplin),
- 25.000 adet NLI mantıksal çelişki verisi.
- Parametre başına düşen token oranı **1.004 token / parametre** ideal seviyesine oturtuldu. Brier Kalibrasyonu ile güven skorları hizalandı.
---
## 💻 Hızlı Kullanım (Quickstart)
Model, standart Hugging Face `transformers` kütüphanesi üzerinden doğrudan `AutoModel` ve `AutoTokenizer` ile kullanılabilir:
```python
import torch
from transformers import AutoModel, AutoTokenizer
model_id = "TurkishCodeMan/KUTUP-1-Decision-2B"
# 1. Tokenizer ve Modeli Yükle (GPU üzerinde ~6-8 GB VRAM)
tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True)
model = AutoModel.from_pretrained(
model_id,
trust_remote_code=True,
device_map="cuda:0",
torch_dtype=torch.bfloat16
)
# 2. Durum ve Karar Sorularını Tanımla
durum = "Hasta 48 yaşında erkek. Göğüs sol tarafında sıkıştırıcı ağrı ve EKG'de ST yükselmesi mevcut."
sorular = {
"klinik_teshis": {
"type": "choice",
"instructions": "Bu klinik tablo için en olası acil tanı nedir?",
"criteria": {
"A": "Akut Miyokard Enfarktüsü (Kalp Krizi)",
"B": "Gastroözofageal Reflü",
"C": "Panik Atak",
"D": "Kaburga Kas Zedelenmesi"
}
}
}
# 3. Tek İleri Geçişte (43 ms) Kararı Al
sonuc = model.decide(tokenizer=tokenizer, state=durum, questions=sorular)
print(sonuc["answers"]["klinik_teshis"])
# Çıktı: {'choice': 'A', 'confidence': 0.9517, 'probabilities': {'A': 0.9517, 'B': 0.0154, 'C': 0.0147, 'D': 0.0183}}
```
---
## 🔮 Gelecek Planları (Roadmap)
- **Stage 3: RLCD (Reinforcement Learning from Contrastive Decisions):** Daha geniş ve filtrelenmiş Türkçe karar senaryoları üzerinde çeldirici eleme politikasını pekiştirerek 2B boyutuyla 9B modelin genel skorunu geride bırakmak.
---
## 📜 Lisans & Atıf
Bu model açık kaynak topluluğu için Apache 2.0 lisansı altında paylaşılmıştır.
Geliştirici: **TurkishCodeMan**