Fine-Tuning (İnce Ayar)

Fine-tuning (ince ayar), önceden eğitilmiş bir yapay zeka modelinin küçük ve göreve özel bir veri setiyle belirli bir işe uyarlanmasıdır.

Fine-tuning (Türkçesiyle ince ayar), devasa bir veri setiyle genel amaçlı olarak önceden eğitilmiş (pre-trained) bir yapay zeka modelinin, daha küçük ve göreve özel bir veri seti kullanılarak belirli bir işe, sektöre veya üsluba (tıp, hukuk, kodlama, müşteri hizmetleri vb.) uyarlanması işlemidir. İngilizce "fine-tune" fiili, bir cihazın ayarını hassas biçimde düzeltmek anlamına gelir; yapay zekada da mantık aynıdır: model sıfırdan eğitilmez, mevcut bilgisinin üzerine ek eğitimle özel bir uzmanlık inşa edilir. Örneğin LLaMA veya GPT gibi bir temel model, birkaç bin kaliteli soru-cevap çiftiyle yeniden eğitilerek bir bankanın müşteri temsilcisi gibi konuşan ya da tıbbi raporları belirli bir formatta özetleyen bir modele dönüştürülebilir. Bu yaklaşımın önemi maliyet ve erişilebilirlikte yatar. Bir dil modelini sıfırdan eğitmek milyonlarca dolarlık hesaplama gücü ister; fine-tuning ise aynı modelin ağırlıklarını yeni veriye göre hafifçe güncelleyerek çok daha küçük bir bütçeyle özelleştirme yapmayı mümkün kılar. LoRA ve QLoRA gibi parametre-verimli (PEFT) yöntemlerle bu iş tek bir tüketici GPU'sunda bile yapılabilir hale gelmiştir. Pratikte fine-tuning; kurumsal sohbet botlarında marka diline uyum, hukuk ve sağlık gibi alanlarda terminoloji hâkimiyeti, yapılandırılmış çıktı (örneğin JSON) üretimi ve şirket içi verilerle çalışan özel asistanlar için kullanılır. Modele davranış ve üslup kazandırmak hedefleniyorsa fine-tuning, güncel veya sık değişen bilgiye erişim gerekiyorsa RAG tercih edilir; kurumsal sistemlerde ikisi çoğu zaman birlikte çalışır.

tune Fine-Tuning Neden Yapılır?

Temel modeller (base models) internetteki devasa metin yığınlarıyla eğitilir; her şeyi biraz bilirler ama hiçbir konuda size özel değillerdir. Şirketinizin müşteri hizmetleri ses tonunu benimseyen, belgelerinizi hep aynı JSON şemasında döndüren veya tıbbi terminolojiyi hatasız kullanan bir model istiyorsanız, prompt yazmak çoğu zaman yetmez; modele ek eğitim vermeniz gerekir. Fine-tuning, modelin ağırlıklarını (parametrelerini) yeni veriye göre hafifçe güncelleyerek üslubunu, formatını ve davranışını kalıcı olarak değiştirir. Prompt'la her istekte yeniden tarif etmek zorunda kaldığınız kurallar, ince ayar sonrasında modelin doğal davranışı haline gelir. Bu hem token maliyetini düşürür hem de çıktı tutarlılığını artırır: model yüzlerce kural içeren bir sistem promptu yerine, o kuralları zaten öğrenmiş halde çalışır. Ayrıca açık kaynak bir modeli kendi sunucunuzda fine-tune ederseniz, hassas verilerinizi üçüncü taraf API'lere göndermeden tamamen size ait bir uzman model elde edersiniz.

İnce Ayar Yöntemleri

all_inclusive Full Fine-Tuning

Modelin tüm parametrelerinin güncellenmesi işlemidir. Maksimum adaptasyon gücü sunar ama çok fazla GPU belleği, süre ve maliyet gerektirir; ayrıca modelin eski bilgilerini unutması (catastrophic forgetting) riski taşır.

compress PEFT (Parameter-Efficient FT)

Milyarlarca parametreyi dondurup sadece küçük bir kısmını güncelleyen yaklaşımların genel adıdır. Devasa modellerin tek bir GPU'da eğitilmesine olanak tanır; LoRA, QLoRA ve adapter yöntemleri bu ailedendir.

layers_clear LoRA (Low-Rank Adaptation)

En popüler PEFT yöntemidir. Modelin katmanları arasına küçük, eğitilebilir matrisler ekler. Eğitim bittiğinde bu ince ayar, küçük bir dosya olarak temel modele tak-çıkar yapılabilir; aynı temel model farklı LoRA dosyalarıyla farklı uzmanlıklara bürünür.

memory QLoRA

Temel modeli 4-bit'e kuantize edip üzerine LoRA uygulayan yöntemdir. Bellek ihtiyacını dramatik biçimde düşürür: 65B parametreli bir model tek bir 48 GB GPU'da, 30B sınıfı modeller ise 24 GB VRAM'li tüketici kartlarında ince ayardan geçirilebilir.

Fine-Tuning Yöntemleri

  • check_circle Tam Fine-Tuning: Tüm model ağırlıkları yeni veriyle güncellenir. Avantajı maksimum adaptasyondur; dezavantajı büyük hesaplama maliyeti ve catastrophic forgetting riskidir. 7B parametreli bir model için tipik olarak 4×A100 sınıfı GPU ve günlerce eğitim gerekir. Genellikle yalnızca büyük bütçeli ekiplerin tercih ettiği yoldur.
  • check_circle LoRA (Low-Rank Adaptation): Ağırlık matrislerine düşük dereceli adaptör matrisleri eklenir ve yalnızca bu küçük matrisler eğitilir; 7B bir modelde parametrelerin yaklaşık %0.1-1'i kadarı güncellenir. Tek bir A100 veya RTX 4090 ile saatler içinde tamamlanabilir. QLoRA varyantı 4-bit kuantize model üzerine LoRA uygulayarak 65B modellerin tek bir 48 GB GPU ile fine-tune edilmesine olanak verir.
  • check_circle Instruction Tuning: Model komut-yanıt çiftleriyle yeniden eğitilir; Alpaca, ShareGPT ve Dolly popüler instruction veri setleridir. Sonuç, kullanıcı isteklerine sohbet formatında yanıt verebilen bir 'asistan' modeldir. Tercih verisiyle çalışan DPO (Direct Preference Optimization), ayrı bir ödül modeli eğitmeden RLHF benzeri hizalama etkisi elde etmek için bu aşamanın üzerine uygulanır.

Fine-Tuning Ne Zaman Gereklidir?

Fine-tuning'in gerçekten gerekli olduğu durumlar bellidir: domain-spesifik dil ve terminoloji (tıbbi, hukuki, mühendislik), her seferinde aynı çıktı formatı (JSON şeması, şirket içi rapor stili), tutarlı bir marka üslubu ve dış API'lere göndermek istemediğiniz gizli verilerle çalışma ihtiyacı. Buna karşılık iki durumda fine-tuning'e hiç girmeden sorun çözülebilir: istenen davranış iyi bir prompt'la elde edilebiliyorsa prompt engineering yeterlidir; modelin güncel veya kuruma özel bilgiye erişmesi gerekiyorsa RAG doğru araçtır, çünkü fine-tuning bilgi eklemekte zayıftır ve veri her değiştiğinde yeniden eğitim gerektirir. Maliyet tarafında iki yol vardır: kapalı modellerde OpenAI gibi sağlayıcıların fine-tuning API'leri kullanılır (eğitim token başına ücretlendirilir ve özelleştirilmiş modelin çıkarım maliyeti standart modele göre daha yüksektir); açık modellerde ise Unsloth ve QLoRA kombinasyonuyla 7B sınıfı bir model Google Colab'ın ücretsiz katmanında bile eğitilebilir. Yaygın araçlar arasında Hugging Face Trainer, Axolotl, Unsloth ve LLaMA-Factory sayılır. Pratik sıralama şudur: önce prompt, sonra RAG, en son fine-tuning.

quiz Sıkça Sorulan Sorular (FAQ)

  • check_circle Fine-tuning nedir?: Fine-tuning, büyük ve önceden eğitilmiş bir yapay zeka modelinin, küçük ve göreve özel bir veri setiyle ek eğitimden geçirilerek belirli bir işe veya sektöre uyarlanmasıdır. Genel amaçlı model bu süreçte özel terminoloji, üslup ve çıktı formatı öğrenir. Türkçe karşılığı ince ayardır.
  • check_circle Fine tune ne demek?: İngilizce 'fine-tune' fiili, bir şeyin ayarını hassas biçimde düzeltmek anlamına gelir; radyo frekansını netleştirmek gibi. Yapay zekada bir modeli fine-tune etmek, onu sıfırdan eğitmek yerine mevcut bilgisi üzerinde küçük ve hedefli güncellemeler yaparak istenen davranışa yaklaştırmak demektir.
  • check_circle Fine-tuning mi yoksa RAG mi kullanmalıyım?: Modele yeni bilgi vermek istiyorsanız (örneğin şirketinizin son bilançosu) RAG kullanın; bilgi değiştikçe yeniden eğitim gerekmez. Modelin davranışını, üslubunu veya çıktı formatını değiştirmek istiyorsanız fine-tuning yapın. Kurumsal mimarilerde ikisi genellikle birlikte kullanılır.
  • check_circle Fine-tuning mi, prompt engineering mi?: Önce prompt engineering'i deneyin: hızlı, ucuz ve esnektir. Prompt'la istenen tutarlılık elde edilemiyorsa, örnekler bağlam penceresine sığmıyorsa veya her istekte uzun talimatlar tekrarlamak maliyetli hale geliyorsa fine-tuning'e geçin. Fine-tuning kalıcı davranış kazandırır ama veri hazırlığı ve eğitim emeği ister.
  • check_circle LoRA ile tam fine-tuning arasındaki fark nedir?: Tam fine-tuning'de tüm parametreler güncellenir; adaptasyon en güçlüdür ama maliyet yüksektir. LoRA yalnızca küçük adaptör matrislerini eğitir ve çoğu görevde benzer performansı çok daha düşük maliyetle verir. QLoRA ise 4-bit kuantizasyonla birleşerek 65B sınıfı modellerin bile tek bir 48 GB GPU'da eğitilmesine imkân tanır.
  • check_circle Fine-tuning için ne kadar veri gerekir?: Görevin zorluğuna göre değişir: üslup ve format değişikliği için 100-1000 kaliteli soru-cevap çifti çoğu zaman yeterlidir; kapsamlı instruction tuning için 500-5000 örnek iyi bir başlangıçtır. 100'ün altındaki veri setlerinde overfitting riski artar. Kural basittir: temiz ve tutarlı az veri, gürültülü on binlerce örnekten daha değerlidir.