Create README.md
Browse files
README.md
ADDED
|
@@ -0,0 +1,141 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: apache-2.0
|
| 3 |
+
language:
|
| 4 |
+
- tr
|
| 5 |
+
- en
|
| 6 |
+
tags:
|
| 7 |
+
- causal-lm
|
| 8 |
+
- custom-architecture
|
| 9 |
+
- turkish
|
| 10 |
+
- code
|
| 11 |
+
- from-scratch
|
| 12 |
+
pipeline_tag: text-generation
|
| 13 |
+
library_name: transformers
|
| 14 |
+
datasets:
|
| 15 |
+
- uonlp/CulturaX
|
| 16 |
+
- HuggingFaceTB/cosmopedia
|
| 17 |
+
- roneneldan/TinyStories
|
| 18 |
+
- nampdn-ai/tiny-textbooks
|
| 19 |
+
- nampdn-ai/tiny-codes
|
| 20 |
+
- ise-uiuc/Magicoder-Evol-Instruct-110K
|
| 21 |
+
- theblackcat102/evol-codealpaca-v1
|
| 22 |
+
- turkish-nlp-suite/InstrucTurca
|
| 23 |
+
---
|
| 24 |
+
|
| 25 |
+
# SykoLLM-V5.4
|
| 26 |
+
|
| 27 |
+
**SykoLLM**, modern dil modeli tasarım prensiplerinden (RoPE, RMSNorm, SwiGLU, GQA) ilham alınarak sıfırdan yazılmış özel bir mimariyle oluşturulmuş 233M parametreli bir nedensel dil modelidir. Türkçe, İngilizce ve kod içeren çok dilli bir veri karışımıyla eğitilmiştir.
|
| 28 |
+
|
| 29 |
+
---
|
| 30 |
+
|
| 31 |
+
## Model Detayları
|
| 32 |
+
|
| 33 |
+
| Özellik | Değer |
|
| 34 |
+
|---|---|
|
| 35 |
+
| **Mimari** | Syko (özel Llama-tarzı decoder) |
|
| 36 |
+
| **Parametre Sayısı** | 233,214,720 |
|
| 37 |
+
| **Gizli Boyut** | 768 |
|
| 38 |
+
| **Katman Sayısı** | 24 |
|
| 39 |
+
| **Dikkat Başlığı** | 6 |
|
| 40 |
+
| **Bağlam Uzunluğu** | 1024 token |
|
| 41 |
+
| **Kelime Hazinesi** | 32.000 (özel BPE) |
|
| 42 |
+
| **Eğitim Adımı** | 4.000 |
|
| 43 |
+
| **Son Loss** | ~2.0 |
|
| 44 |
+
| **Hassasiyet** | fp16 |
|
| 45 |
+
| **Lisans** | Apache 2.0 |
|
| 46 |
+
|
| 47 |
+
---
|
| 48 |
+
|
| 49 |
+
## Mimari Özellikleri
|
| 50 |
+
|
| 51 |
+
- **RMSNorm** — fp16 stabilitesi için varyans hesabı float32'de yapılır
|
| 52 |
+
- **RoPE** — float32 cos/sin hesaplamasıyla Döndürmalı Konum Kodlaması
|
| 53 |
+
- **SwiGLU** — kapılı MLP aktivasyonu (gate × up → down projeksiyonu)
|
| 54 |
+
- **GQA desteği** — `num_key_value_heads` ile Gruplu Sorgu Dikkat mekanizması
|
| 55 |
+
- **Ön-norm** — her alt katmandan (dikkat + MLP) önce normalizasyon
|
| 56 |
+
- **Embedding scaling yok** — sqrt çarpımı olmadan temiz embedding
|
| 57 |
+
- **lm_head float32'de** — 768→32000 projeksiyonunda fp16 taşmasını önler
|
| 58 |
+
|
| 59 |
+
---
|
| 60 |
+
|
| 61 |
+
## Eğitim Verisi
|
| 62 |
+
|
| 63 |
+
Model, aşağıdaki veri setlerinin harmanlanmış karışımıyla eğitilmiştir:
|
| 64 |
+
|
| 65 |
+
| Veri Seti | Açıklama |
|
| 66 |
+
|---|---|
|
| 67 |
+
| `uonlp/CulturaX` (tr) | Türkçe web metni |
|
| 68 |
+
| `HuggingFaceTB/cosmopedia` | Sentetik eğitim içeriği |
|
| 69 |
+
| `roneneldan/TinyStories` | Kısa İngilizce hikayeler |
|
| 70 |
+
| `nampdn-ai/tiny-textbooks` | Sentetik ders kitabı içeriği |
|
| 71 |
+
| `nampdn-ai/tiny-codes` | Kod talimat çiftleri |
|
| 72 |
+
| `ise-uiuc/Magicoder-Evol-Instruct-110K` | Kod talimat verisi |
|
| 73 |
+
| `theblackcat102/evol-codealpaca-v1` | Kod talimat verisi |
|
| 74 |
+
| `turkish-nlp-suite/InstrucTurca` | Türkçe talimat çiftleri |
|
| 75 |
+
|
| 76 |
+
Veriler, düzgün karışım sağlamak amacıyla 10K'lık bloklar halinde karıştırılarak eğitime hazırlanmıştır.
|
| 77 |
+
|
| 78 |
+
---
|
| 79 |
+
|
| 80 |
+
## Tokenizer
|
| 81 |
+
|
| 82 |
+
Eğitim verisinin 100K örneği üzerinde eğitilmiş özel BPE tokenizer.
|
| 83 |
+
|
| 84 |
+
Özel tokenlar: `<pad>`, `<bos>`, `<eos>`, `<unk>`, `<user>`, `</user>`, `<assistant>`, `</assistant>`, `<think>`, `</think>`, `<code>`, `</code>`, `<tr>`, `<en>`
|
| 85 |
+
|
| 86 |
+
---
|
| 87 |
+
|
| 88 |
+
## Kullanım
|
| 89 |
+
|
| 90 |
+
```python
|
| 91 |
+
from transformers import AutoModelForCausalLM, AutoTokenizer
|
| 92 |
+
import torch
|
| 93 |
+
|
| 94 |
+
tokenizer = AutoTokenizer.from_pretrained("SykoSLM/SykoLLM-V5.4")
|
| 95 |
+
model = AutoModelForCausalLM.from_pretrained("SykoSLM/SykoLLM-V5.4", trust_remote_code=True)
|
| 96 |
+
model.eval()
|
| 97 |
+
|
| 98 |
+
prompt = "<bos><user>\nMerhaba, nasılsın?</user>\n<assistant>\n"
|
| 99 |
+
inputs = tokenizer(prompt, return_tensors="pt")
|
| 100 |
+
|
| 101 |
+
with torch.no_grad():
|
| 102 |
+
outputs = model.generate(
|
| 103 |
+
**inputs,
|
| 104 |
+
max_new_tokens=200,
|
| 105 |
+
temperature=0.7,
|
| 106 |
+
top_p=0.9,
|
| 107 |
+
do_sample=True,
|
| 108 |
+
repetition_penalty=1.1,
|
| 109 |
+
)
|
| 110 |
+
|
| 111 |
+
print(tokenizer.decode(outputs[0], skip_special_tokens=False))
|
| 112 |
+
```
|
| 113 |
+
|
| 114 |
+
---
|
| 115 |
+
|
| 116 |
+
## Sınırlamalar
|
| 117 |
+
|
| 118 |
+
- 233M parametre nispeten küçük bir modeldir. Karmaşık çok adımlı akıl yürütme güvenilir olmayabilir.
|
| 119 |
+
- 4.000 adım eğitilmiştir — daha fazla eğitim tutarlılığı ve doğruluğu artırır.
|
| 120 |
+
- Özellikle bilgi yoğun sorularda yanlış bilgi üretebilir.
|
| 121 |
+
- Güvenlik için ince ayar yapılmamıştır — çıktılar filtresizdir.
|
| 122 |
+
|
| 123 |
+
---
|
| 124 |
+
|
| 125 |
+
## Eğitim Altyapısı
|
| 126 |
+
|
| 127 |
+
| Özellik | Değer |
|
| 128 |
+
|---|---|
|
| 129 |
+
| **Donanım** | 2× NVIDIA T4 (Kaggle) |
|
| 130 |
+
| **Framework** | PyTorch + HuggingFace Transformers |
|
| 131 |
+
| **Dağıtık Eğitim** | DDP (Accelerate) |
|
| 132 |
+
| **Optimizer** | AdamW |
|
| 133 |
+
| **Öğrenme Hızı** | 3e-4, cosine decay |
|
| 134 |
+
| **Batch Boyutu** | 6 cihaz başına × 10 gradient accumulation = efektif 120 |
|
| 135 |
+
| **Warmup** | 300 adım |
|
| 136 |
+
|
| 137 |
+
---
|
| 138 |
+
|
| 139 |
+
## Lisans
|
| 140 |
+
|
| 141 |
+
Apache 2.0 — detaylar için [LICENSE](LICENSE) dosyasına bakın.
|