Bu bir oyun değil: kendi bilgisayarında sıfırdan küçük bir Türkçe sohbet modeli eğittiren bir prompt. PyTorch ile 10 ila 50 milyon parametrelik bir transformer, kendi verinden eğitilen bir BPE tokenizer, önce ham Türkçe metinle ön eğitim, sonra açık lisanslı bir sohbet veri setiyle ince ayar isteniyor.
Promptta RTX 4060 (8 GB), Ryzen 7 5700X ve 32 GB RAM'li bir bilgisayar ile 1 ila 3 saatlik eğitim süresi yazıyor; kendi donanımına göre o satırları değiştirmen gerekir. Sonunda mesaj balonlu bir yerel sohbet arayüzü ve çift tıklayınca açan bir baslat.bat çıkıyor.
Bilgisayarımda sıfırdan eğitilen, basit ve çalışan bir Türkçe sohbet/metin üreten yapay zeka modeli yapmanı istiyorum. Bu model YouTube kanalım için eğlenceli içerik üretmek amacıyla kullanılacak.
DONANIM
- Windows, NVIDIA RTX 4060 (8 GB VRAM), Ryzen 7 5700X, 32 GB RAM
- Modelin bu donanımda 1-3 saat içinde eğitilebilmesi gerekiyor
HEDEF
- Küçük bir GPT tarzı transformer modeli (yaklaşık 10-50 milyon parametre), PyTorch ile, sıfırdan yazılmış ve hazır önceden eğitilmiş ağırlık kullanmadan
- Tokenizer: Türkçe için uygun bir BPE tokenizer (kendi veri setimden eğitilsin)
- Veri seti: Türkçe, serbestçe kullanılabilir bir kaynak indir (örn. Türkçe Wikipedia dump'ının bir kısmı veya Hugging Face'teki açık Türkçe veri setleri). Lisansını kontrol et ve bana söyle.
- Eğitim sonunda modelin "komik ve tuhaf ama bazen mantıklı" Türkçe cümleler kurması yeterli. Mükemmel olması gerekmiyor.
İSTEDİKLERİM
1. Proje klasör yapısı: data/, tokenizer/, model.py, train.py, generate.py, app.py, README.md
2. train.py: mixed precision (fp16/bf16), gradient accumulation, belirli aralıklarla checkpoint kaydetme, loss'u ekrana yazdırma, eğitim kesilirse kaldığı yerden devam edebilme
3. generate.py: komut satırından prompt verip metin üretme (temperature ve top-k ayarlı)
4. app.py: basit bir yerel web arayüzü (vanilla HTML/CSS/JS + küçük bir Python sunucusu). Kullanıcı mesaj yazsın, model cevap üretsin.
5. README.md: kurulum ve çalıştırma adımları (Türkçe), adım adım
KURALLAR
- Önce kısa bir plan yaz, sonra kodu yaz, sonra gerçekten çalıştırıp test et
- Önce çok küçük bir veriyle (1-2 dakikalık deneme eğitimi) her şeyin hata vermeden çalıştığını doğrula, ardından tam eğitime geç
- Karmaşık kütüphane kullanma: PyTorch, tokenizers ve standart kütüphane yeterli
- Kodun içine Türkçe açıklama yorumları ekle
- Takıldığın yerde bana soru sor, tahmin edip ilerleme
EK İSTEKLER (sohbet modu)
- Eğitimi iki aşamalı yap:
1) Ön eğitim: ham Türkçe metinle (yukarıdaki gibi)
2) Sohbet ince ayarı: açık lisanslı bir Türkçe talimat/sohbet veri seti bul,
"Kullanıcı: ... / Asistan: ..." formatına çevir ve modeli bununla tekrar eğit.
Modelin cevabı bitirince özel bir bitiş token'ı üretip durması gereken şekilde eğit.
- Küçük model yüzünden cevaplar basit kalacak, bunu kabul ediyorum. Ama soruya alakasız
devam etmek yerine soru-cevap formatında yanıt vermesini istiyorum.
- app.py: sohbet geçmişini tutan, mesaj balonlu bir arayüz olsun, cevap yazılırken
harf harf akması (streaming) güzel olur
- Proje klasörüne baslat.bat dosyası ekle: çift tıklayınca sunucuyu başlatsın ve
tarayıcıda arayüzü otomatik açsın
- Eğitim bittikten sonra sohbet arayüzünü gerçekten açıp 5-10 örnek mesajla test et,
sonuçları bana göster
Yorumlar
Yorum Yap