-
Notifications
You must be signed in to change notification settings - Fork 0
Training
ChiefVenzox edited this page Jun 18, 2026
·
1 revision
1) veri (seed üret veya kendi JSONL'lerin) backend/datasets/*.jsonl
2) tokenizer -> backend/checkpoints/tokenizer.json
3) veri hazırla -> backend/datasets/bin/{train,val}.bin + meta.json
4) model eğit -> backend/checkpoints/ckpt.pt
5) çalıştır -> backend (uvicorn) + frontend (vite)
# 0) örnek tohum veri (8 kategori, dengeli) — kendi verin varsa atla
python backend/datasets/build_seed.py
# 1) kendi BPE tokenizer'ımız
python scripts/train_tokenizer.py --input backend/datasets --vocab-size 16000
# 2) JSONL -> token bin
python scripts/prepare_dataset.py --input backend/datasets --out backend/datasets/bin
# 3) eğitim (GTX 1660 Ti)
python scripts/train_model.py --preset chiefui-30m --data backend/datasets/bin
# hızlı deneme:
python scripts/train_model.py --preset chiefui-tiny --data backend/datasets/bin --max-steps 1000
# devam et (resume):
python scripts/train_model.py --resume backend/checkpoints/ckpt.pt --data backend/datasets/bin- Turing (1660 Ti) fp16 kullanır (otomatik; bf16 emülasyon kapalı).
-
CUDA out of memory→--batch-sizedüşür,--grad-accumartır;gradient_checkpointingzaten açık;block_size'ı 1024 → 512 yap. - 8-bit optimizer (opsiyonel): config'te
use_8bit_optimizer=True+bitsandbyteskur.
GPU yoksa --device cpu ile çalışır (çok yavaş, sadece test).
Sıfırdan model veriyle iyileşir. En yüksek etkili adımlar:
-
Veriyi büyüt/dengele.
backend/datasets/build_seed.py'yi genişlet ya da kendi*.jsonlörneklerini ekle. Her kategori için farklı ifadelerle bol örnek (örn. "Create a button", "Make a CTA button", "I need a button") modelin prompt'taki anahtar kelimeyi çıktı türüyle ilişkilendirmesini sağlar. -
Daha büyük preset + uzun eğitim (
chiefui-30m, daha çok adım). -
Daha büyük bağlam gerekiyorsa
block_size'ı artır (VRAM ile dengele).
- Eğitim sırasında eval iyileşince en iyi model
ckpt.pt'ye yazılır. - Koşu sonunda her zaman
ckpt_last.ptyazılır. - Eval hiç çalışmadıysa (kısa koşu) son model
ckpt.ptolarak da yazılır (eski/bayat birckpt.ptüzerine yazılır) — böylece backend daima güncel modeli yükler. - Devam etmek için:
--resume backend/checkpoints/ckpt.pt.