Sıfırdan Türkçe ile eğitilmiş deneysel GPT modelleri
Kayra, Türkçe dil işleme araştırmaları için geliştirilmiş, sıfırdan eğitilmiş küçük ölçekli GPT tabanlı dil modelleridir. Bu projede iki farklı model bulunmaktadır:
| Parametre | Aralık | Varsayılan | Açıklama |
|---|---|---|---|
| Temperature | 0.1 - 2.0 | 0.7 | Çıktının rastgeleliğini kontrol eder. Düşük değerler daha tutarlı, yüksek değerler daha yaratıcı sonuçlar üretir. |
| Max Tokens | 10 - 512 | 150 | Üretilecek maksimum token (kelime parçası) sayısı. |
| Top K | 1 - 100 | 50 | Her adımda sadece en olası K tokenden seçim yapılır. Düşük K daha odaklı, yüksek K daha çeşitli çıktı üretir. |
| Top P (Nucleus) | 0.1 - 1.0 | 0.9 | Kümülatif olasılığı P'yi geçen tokenlerden seçim yapılır. Temperature ile birlikte kullanılır. |
| Repetition Penalty | 1.0 - 2.0 | 1.3 | Tekrarlayan kelimeleri cezalandırır. Yüksek değerler tekrarı azaltır ama anlam bozulabilir. |
| Stream Mode | Açık/Kapalı | Açık | Açıkken cevap kelime kelime gösterilir, kapalıyken tamamı bir anda gösterilir. |
Yüksek temperature ve top-k ile daha özgün ve beklenmedik çıktılar üretir. Hikaye yazımı, beyin fırtınası için ideal.
temp=1.2, top_k=80, top_p=0.95, rep=1.1
Varsayılan ayarlar. Çoğu kullanım senaryosu için uygundur.
temp=0.7, top_k=50, top_p=0.9, rep=1.3
Düşük temperature ile daha tutarlı ve tahmin edilebilir çıktılar. Bilgi gerektiren sorular için.
temp=0.3, top_k=20, top_p=0.8, rep=1.5
Maksimum rastgelelik. Çılgın ve beklenmedik sonuçlar için. Dikkatli kullanın!
temp=1.8, top_k=100, top_p=1.0, rep=1.0
| Özellik | kayra-1 (Stable) | kayra-1-exp (Deneysel) |
|---|---|---|
| Tür | Instruction-tuned | Sadece Pretrained |
| Kullanım | Soru-Cevap formatında | Metin tamamlama |
| Stabilite | Stabil | Deneysel |
| Prompt Formatı | ### Soru: ... ### Cevap: | Düz metin |
| Önerilen Kullanım | Genel test ve demo | Araştırma ve analiz |
| Model Türü | Decoder-only Transformer (GPT-style) |
| Katman Sayısı | 10 |
| Hidden Size | 640 |
| Attention Heads | 10 |
| FFN Size | 2560 |
| Vocabulary | 32,000 BPE tokens |
| Context Length | 512 tokens |
| Toplam Parametre | ~85 milyon |
| Kaynak | Doküman Sayısı | Açıklama |
|---|---|---|
| Wikipedia TR | ~170,000 | Türkçe Vikipedi makaleleri |
| mC4 Turkish | ~330,000 | Common Crawl web dokümanları |
| Toplam | ~500,000 | MinHash LSH ile dedupe edilmiş |
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained(
"sixfingerdev/kayra-1-exp",
trust_remote_code=True # ONEMLI!
)
tokenizer = AutoTokenizer.from_pretrained("sixfingerdev/kayra-1-exp")
prompt = "Türkiye'nin başkenti"
inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(
inputs.input_ids,
max_new_tokens=100,
temperature=0.8,
top_k=50,
top_p=0.9,
repetition_penalty=1.2,
do_sample=True
)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
Lisans: MIT License - Ticari ve akademik kullanım serbesttir.
@misc{kayra2024hallucination,
title={Why Small Turkish GPTs Hallucinate Facts: An Experimental 85M Model},
author={sixfingerdev},
year={2024},
publisher={HuggingFace},
howpublished={\url{https://huggingface.co/sixfingerdev/kayra-1-exp}},
note={Research on loss-factuality divergence in low-resource language models}
}