school SFT Nasıl Çalışır?
SFT, pretraining'den sonra gelen ilk hizalama adımıdır. Model, (istek, yanıt) çiftleri üzerinde standart dil modellemesi kaybıyla eğitilir; ancak yalnızca yanıt tokenleri için kayıp hesaplanır. İstek tokenleri maskelenir — bu sayede model yanıt üretmeyi öğrenir, isteği tekrar etmeyi değil. Eğitim genellikle birkaç epoch sürer ve öğrenme hızı pretrain aşamasına göre çok daha küçük tutulur (örn. 1e-5 ile 5e-5 arası). SFT tamamlandıktan sonra ortaya çıkan model 'SFT modeli' veya 'instruct modeli' olarak adlandırılır ve RLHF boru hattında ödül modeli ile PPO aşamaları için başlangıç noktası görevi görür.
dataset SFT Veri Kalitesi ve Miktarı
SFT veri kümesinin kalitesi miktarından daha belirleyicidir. InstructGPT araştırması, 10.000-50.000 yüksek kaliteli örneğin büyük ölçekli eğitimden daha etkili olabildiğini ortaya koymuştur. Alpaca (52K GPT-3.5 sentetik örnek) ve Vicuna (ShareGPT sohbet verisi) bu önemin somut kanıtlarıdır. Modern yaklaşımlar: (1) GPT-4 veya Claude ile sentetik veri üretimi, (2) Magpie ve Evol-Instruct gibi çeşitlendirme yöntemleri, (3) kalite filtresi için IFD (Instruction Following Difficulty) skoru hesaplama. Kötü veri az veriyle daha zararlıdır; garbage-in, garbage-out prensibi SFT'de diğer aşamalara göre daha kritiktir.
build SFT Araçları ve Pratik Uygulama
- check_circle Hugging Face TRL — SFTTrainer: En yaygın SFT kütüphanesi. PEFT/LoRA entegrasyonu, dataset formatting ve gradient checkpointing desteği. `SFTTrainer(model, dataset, peft_config=lora_config)` ile başlangıç.
- check_circle Axolotl: YAML konfigürasyonla tam fine-tuning, LoRA, QLoRA ve FSDP desteği. Multi-GPU dağıtık eğitim için popüler. Topluluk SFT projeleri için standart araç.
- check_circle Unsloth: 2-5× daha hızlı SFT için optimize edilmiş Triton çekirdekleri. Aynı VRAM ile daha büyük batch boyutu. Tek GPU kullanıcıları için en verimli seçenek.
- check_circle LLaMA-Factory: 100+ model mimarisini destekleyen kapsamlı fine-tuning çerçevesi. Web arayüzü ve CLI seçeneği. DPO ve RLHF de dahil tüm hizalama yöntemlerini kapsar.
compare SFT vs DPO: Ne Zaman Hangisi?
- check_circle SFT — Temel Talimat İzleme: Pretraining sonrası zorunlu ilk adım. Model henüz talimat formatını bilmiyorsa SFT şarttır. Kapalı model üreticileri (OpenAI, Anthropic) bu aşamadan geçer.
- check_circle DPO — Tercih Hizalaması: SFT modeli üzerine uygulanan tercih optimizasyonu. Ödül modeli ve PPO döngüsü gerektirmez. SFT'nin yerini almaz; üzerine inşa edilir.
- check_circle SFT Tek Başına: Birçok açık kaynak model yalnızca SFT ile tatmin edici sonuç verir. Alpaca, Vicuna, OpenHermes bu yaklaşımla üretildi. DPO/RLHF için kaynak yoksa SFT yeterli başlangıç noktasıdır.
quiz Sık Sorulan Sorular
- check_circle SFT için kaç örnek yeterli?: Kaliteye bağlı olarak 1.000-100.000 arası. InstructGPT 13K insan yazımı örnekle başladı. Kötü veri fazlası iyi veriden daha zararlıdır; 1.000 mükemmel örnek 100K ortalama örnekten iyidir.
- check_circle SFT ile full fine-tuning arasındaki fark nedir?: SFT, modelin tüm parametrelerini güncelleyebilir (full fine-tuning) veya yalnızca küçük adaptasyon matrislerini (LoRA/QLoRA). Full SFT daha yüksek performans ama daha fazla bellek gerektirir.
- check_circle Hangi model boyutu için SFT yapmalıyım?: 7B model tek RTX 4090'da QLoRA ile eğitilebilir. 13B için iki GPU veya A100 tercih edilir. 70B+ için çok GPU FSDP/DeepSpeed gerekir. Unsloth ile VRAM tüketimi yarıya düşürülebilir.
- check_circle SFT dataseti nereden bulabilirim?: Hugging Face Hub'da: Alpaca, ShareGPT, OpenHermes-2.5, Orca-Math, Magpie-Pro. Türkçe için: alpaca-tr, bactrian-x (TR alt kümesi). Kendi alanınız için GPT-4 ile sentetik üretim en etkili yöntemdir.
- check_circle SFT tamamlandıktan sonra ne yapılır?: İki seçenek: (1) SFT modeli direkt yayınlanır (çoğu açık kaynak projesinde böyle). (2) RLHF için devam edilir: SFT modeli → Ödül Modeli eğitimi → PPO veya DPO ile hizalama.