İki Soru, Tek Karışıklık
Yapay zekâyla ciddi bir şey inşa etmeye kalkan hemen herkes aynı duvara çarpar: hazır bir dil modeli, sizin işinizin özel bilgisini bilmez. Şirketinizin iç politikalarından, ürününüzün son sürümünden, dünkü mevzuat değişikliğinden ya da müşteri kayıtlarınızdan haberi yoktur. Model zekidir ama sizin dünyanıza karşı kördür. Tam bu noktada iki kavram durmadan karşınıza çıkar: 'RAG' ve 'ince ayar' (fine-tuning). Üstelik genellikle birbirinin rakibi gibi, tek bir soruyla sunulurlar: hangisi daha iyi?
İşte tuzak bu çerçevede. RAG ve ince ayar farklı problemleri çözer; biri diğerinin daha iyi versiyonu değildir. Onları rakip görmek, 'sözlük mü daha iyidir, dil kursu mu?' diye sormaya benzer. Cevap, neye ihtiyacınız olduğuna bağlıdır: o an doğru kelimeyi mi aramanız gerekiyor, yoksa kalıcı bir beceriyi mi içselleştirmeniz?
Bu yazıda ikisini de sıfırdan, jargonun arkasına saklanmadan açıklayacağız. Önce her birinin nasıl çalıştığını somut benzetmelerle kuracağız. Sonra kararı asıl belirleyen ölçütler üzerinden karşılaştıracağız: güncellik, maliyet, kontrol ve halüsinasyon. En sonunda da olgun sistemlerin neden çoğu zaman ikisini birden kullandığını ve İçtiHub'ın hukuki cevaplarda neden ağırlığını RAG'a verdiğini göreceğiz.
Önce Temel: Bir Dil Modeli Aslında Ne Bilir?
Bir büyük dil modeli (LLM, large language model), devasa miktarda metin üzerinde 'bir sonraki kelimeyi tahmin et' oyununu oynayarak eğitilir. Bu süreçte iki ayrı şey öğrenir. Birincisi dilin kendisi: dilbilgisi, akıl yürütme kalıpları, üslup, bir argümanın nasıl kurulduğu. İkincisi de eğitim verisinde sık sık geçen olgular: ülke başkentleri, temel bilimsel gerçekler, yaygın kod kalıpları. Bu iki tür bilgi de modelin 'ağırlıklarına', yani milyarlarca sayısal parametreye gömülüdür.
Buradaki kritik nokta şu: modelin bildiği her şey, eğitim bittiği anda donar. Eğitim verisi belirli bir tarihe kadar uzanır ve o tarihten sonra olan hiçbir şeyi model kendiliğinden bilemez. Üstelik model bir olguyu 'bunu şu kaynaktan öğrendim' diye etiketlemez; her şeyi tek bir bulanık istatistik havuzunda eritir. İşte bu yüzden ham bir model, inandırıcı görünen bir uydurmayı gerçek bir cevaptan ayırt edemez.
RAG ve ince ayar tam olarak bu iki sınırı iki ayrı uçtan ele alır. RAG, modelin donmuş hafızasını es geçip cevap anında ona taze, doğrulanmış bilgi sunar. İnce ayar ise modelin ağırlıklarını yeniden şekillendirerek yeni bir davranışı ya da bilgiyi kalıcı biçimde içine işler. Birincisini 'dışarıdan bilgi getirmek', ikincisini 'modeli içeriden değiştirmek' diye düşünebilirsiniz.
RAG: Modelin Önüne Kitabı Açık Bırakmak
RAG, 'Retrieval-Augmented Generation', yani 'getirmeyle güçlendirilmiş üretim' demektir. Çalışma mantığı şaşırtıcı derecede sezgiseldir. Bir soru geldiğinde sistem önce sizin belge havuzunuzda (şirket dokümanları, ürün kılavuzları, mevzuat metinleri, her ne ise) o soruyla en alakalı parçaları arar. Sonra bu parçaları, soruyla birlikte modele 'bağlam' olarak verir ve tek bir talimat koyar: 'Yalnızca sana verdiğim bu metinlere dayanarak cevap ver.' Böylece model ezberinden değil, önüne konan kanıttan konuşur.
En iyi benzetme şu: bir öğrenciye kapalı kitap sınavı yerine açık kitap sınavı vermek. Kapalı kitap sınavında öğrenci sadece aklında kalanlarla, bazen yanlış hatırlayarak cevap verir. Açık kitap sınavında ise doğru sayfayı açar, oradan okur ve cevabını ona yaslar. RAG, dil modelini sürekli bir açık kitap sınavında tutar. Modelin işi artık bilgiyi hatırlamak değil, önüne getirilen metni doğru biçimde yorumlayıp toparlamaktır.
Bu yaklaşımın getirisi büyüktür. Bilgi değiştiğinde modeli yeniden eğitmeniz gerekmez; yalnızca arama yaptığı belge havuzunu güncellersiniz. Dünkü düzenleme bugün havuza eklenir ve sistem anında ondan haberdar olur. Dahası, her cevap somut bir kaynağa bağlanabilir: model 'bunu şu belgenin şu bölümünden aldım' diyebilir, çünkü cevap zaten o bölümden üretilmiştir. Kaynak gösterebilirlik, belki de RAG'ın en değerli özelliğidir.
Teknik tarafta bu arama genellikle 'embedding' denen bir yöntemle yapılır: her metin parçası, anlamını temsil eden bir sayı dizisine (vektöre) çevrilir ve soruyla anlamca en yakın parçalar bulunur. Bu sayede kullanıcı tam o kelimeleri kullanmasa bile ilgili bilgi yüzeye çıkabilir; örneğin 'işten çıkarma tazminatı' diye sorduğunuzda, metinde 'kıdem tazminatı' geçen bölüm de getirilebilir. Ama ayrıntılar bir yana, akılda tutulacak çekirdek fikir basittir: RAG, modele doğru sayfayı açıp açık tutmaktır.
İnce Ayar: Modeli Yeniden Okula Göndermek
İnce ayar (fine-tuning) tamamen başka bir şey yapar. Burada modele dışarıdan bilgi getirmezsiniz; modelin kendisini değiştirirsiniz. Önceden eğitilmiş bir modeli alır, kendi örneklerinizden oluşan daha küçük ve odaklı bir veri kümesiyle ek bir eğitim turuna sokarsınız. Bu süreçte modelin ağırlıkları, yani o milyarlarca parametre, sizin örneklerinize doğru yeniden ayarlanır. Sonunda elinizde, davranışı kalıcı olarak değişmiş yeni bir model olur.
Benzetmeyi sürdürelim: RAG bir öğrenciye açık kitap sınavı vermekse, ince ayar o öğrenciyi belirli bir alanda yetiştirmektir. Genel bir hukuk fakültesi mezununu alıp aylarca yalnızca dilekçe yazdırarak ona o işin üslubunu, kalıbını ve reflekslerini kazandırmak gibi. Artık her seferinde 'dilekçe şöyle yazılır' diye anlatmanız gerekmez; bu, onun ikinci doğası olmuştur.
İnce ayarın asıl parladığı yer bilgi eklemek değil, davranış ve biçim öğretmektir. Modelin belirli bir tonu tutturmasını, çıktıyı her zaman belirli bir formatta vermesini, niş bir alanın jargonunu doğal kullanmasını ya da dar bir görevde daha isabetli olmasını istiyorsanız ince ayar tam yerindedir. Buna karşılık 'şu modele yeni bir gerçeği öğreteyim' diye ince ayar yapmak çoğu zaman kötü bir fikirdir: yeni bilgi parametrelere bulanık biçimde dağılır, kaynak gösterilemez ve model o bilgiyi yine yanlış hatırlayabilir.
Bir nüans daha: ince ayarla işlediğiniz bilgi de yine donar. Modeli bugün eğitirsiniz, yarın mevzuat değişir ve eğittiğiniz modelin bundan haberi olmaz. Güncellemek için tüm süreci baştan çalıştırmanız gerekir. Yani ince ayar, sık değişen olgular için değil, kararlı kalan beceriler ve üsluplar için biçilmiş kaftandır.
Dört Eksende Karşılaştırma
İkisini de kavradıktan sonra karar dört eksende netleşir. Birincisi güncellik. RAG burada açık ara öndedir: bilgiyi değiştirmek için belge havuzunu güncellemeniz yeter, model anında haberdar olur. İnce ayarda ise her güncelleme yeni bir eğitim turu demektir; sık değişen bilgi için bu pratik değildir. Bilginiz hızlı değişiyorsa varsayılan tercihiniz RAG olmalı.
İkincisi maliyet ve emek. RAG'ın asıl maliyeti her sorguda biraz daha fazla işlem yapmak ve sağlam bir arama altyapısı kurmaktır; buna karşılık veriyi güncellemek ucuz ve hızlıdır. İnce ayarın maliyeti ise öne yüklenir: kaliteli örnek verisi hazırlamak ve eğitim turunu çalıştırmak hem emek hem hesaplama gücü ister. Ama bunun karşılığında, eğitim bittikten sonra her sorgu daha yalın olabilir, çünkü modele uzun bir bağlam vermeniz gerekmez.
Üçüncüsü kontrol ve kaynak gösterebilirlik. RAG cevabı somut bir belgeye bağlayabildiği için denetlenebilir ve şeffaftır; kullanıcı kaynağa gidip kendisi doğrulayabilir. İnce ayarlı model ise neyi neden söylediğini bir kaynakla gösteremez; bilgi parametrelere dağılmıştır. Cevabın dayanağının görünür olması sizin için önemliyse, bu tek başına RAG lehine güçlü bir argümandır.
Dördüncüsü halüsinasyon, yani modelin kendinden emin bir şekilde uydurması. RAG, modeli getirilen kanıta yaslanmaya zorladığı için halüsinasyonu belirgin biçimde azaltır; arama katmanı iyi çalıştığı sürece model dayanaksız konuşmaz. İnce ayar tek başına halüsinasyonu çözmez; hatta yeni olguları zorla öğretmeye çalışırsanız modeli daha da kendinden emin bir uydurmacıya çevirebilir. Bu dört eksen birlikte değerlendirildiğinde tablo netleşir: 'bilgi getirme' ihtiyacı RAG'ı, 'davranış ve biçim' ihtiyacı ince ayarı işaret eder.
Peki Hangisini Ne Zaman Seçmeli?
Pratik bir karar kuralı şöyle özetlenebilir. Probleminiz 'modelin doğru, güncel ve doğrulanabilir olgulara erişmesi gerekiyor' biçimindeyse, cevap neredeyse her zaman RAG'dır. Müşteri destek botu şirket dokümanlarından konuşacaksa, bir asistan sürekli değişen kataloğa dayanacaksa, bir hukuk aracı yürürlükteki mevzuata yaslanacaksa, burada ihtiyaç bilgi getirmektir ve RAG tam bunun için tasarlanmıştır.
Probleminiz 'model belirli bir tarzda davransın, belirli bir formatı tutarlı versin, niş bir alanın dilini doğal konuşsun ya da dar bir görevde daha isabetli olsun' biçimindeyse, devreye ince ayar girer. Markanızın ses tonunu birebir yakalamak, çıktıyı her seferinde aynı yapılandırılmış biçimde almak ya da genel modelin zorlandığı özel bir sınıflandırma görevini iyileştirmek, ders kitabına girecek ince ayar senaryolarıdır.
Yaygın bir hata, sık değişen bilgiyi ince ayarla modele 'ezberletmeye' çalışmaktır. Bu yol hem pahalı hem kırılgandır: bilgi her değiştiğinde yeniden eğitirsiniz, üstelik model o bilgiyi yine kaynaksız ve bazen yanlış hatırlar. Böyle bir ihtiyaçta doğru araç ezberletmek değil, açık kitap vermektir; yani RAG. Tersinden, yalnızca RAG ile bir modele kalıcı bir üslup ya da derin bir alan refleksi kazandırmaya çalışmak da yanlış aleti zorlamak olur.
Ya İkisini Birlikte Kullanırsanız?
Buraya kadar ikisini ayrı tuttuk, çünkü önce farklarını net görmek gerekiyordu. Ama gerçek dünyadaki olgun sistemlerin çoğu, RAG ile ince ayarı rakip değil, birbirini tamamlayan iki parça olarak kullanır. Çünkü çözdükleri problemler çakışmaz: biri bilgiyi, diğeri davranışı halleder. Doğru kurgu, ikisinin güçlü yanlarını üst üste bindirir.
Tipik birleşik mimari şöyle işler: ince ayar modele alanın diline ve istenen davranışa hâkim olmayı öğretir; RAG ise her cevap anında güncel ve doğrulanmış olguları getirir. Niş bir alanda çalışan bir asistanı düşünün. İnce ayarla o alanın jargonunu, beklenen cevap biçimini ve üslubunu içselleştirmiş olabilir; aynı anda RAG ile her sorguda en güncel belgelerden besleniyordur. Sonuç hem doğru tonda hem de gerçeğe bağlı cevaplar verir.
Buradaki temel ilke, her aracı en iyi yaptığı işe koşmaktır. Olguları parametrelere ezberletmeye çalışmazsınız; onları getirme katmanına bırakırsınız. Tarzı ve refleksleri her seferinde uzun talimatlarla anlatmazsınız; onları ince ayarla modele işlersiniz. Pratikte çoğu ekip önce RAG ile başlar, çünkü en büyük kazanımı en düşük emekle o verir; ince ayara ancak davranış ya da biçim ihtiyacı net biçimde belirginleştiğinde geçerler.
İçtiHub Neden Ağırlığını RAG'a Veriyor?
EcoFluxion'da geliştirdiğimiz hukuk yapay zekâsı ürünü İçtiHub'ın çekirdeğinde ağırlıklı olarak RAG yatar. Bunun sebebi felsefi değil, doğrudan hukukun doğasından gelir. Mevzuat sürekli değişir, maddeler mülga olur, yeni kararlar verilir. Donmuş hafızasıyla konuşan bir model burada kaçınılmaz olarak yanılır; dünkü değişikliği bilmeyen bir hukuk asistanı tehlikelidir.
Daha da önemlisi, hukukta değerli olan ezber değil dayanaktır. Bir avukatın ileri sürdüğü her iddianın bir kaynağı olmak zorundadır. RAG tam olarak bunu mümkün kılar: İçtiHub'ın verdiği cevaplar, getirilen gerçek Türk mevzuatına ve içtihadına bağlanabilir; kullanıcı kaynağa gidip kendi gözüyle doğrulayabilir. Cevap kaynaksız kalıyorsa, doğru davranış uydurmak değil, 'bu konuda elimde dayanak yok' diyebilmektir. Bu dürüstlük, ancak bilgi getirme katmanından geldiğinde mümkün olur.
Bu, ince ayarın hukukta hiç yeri yok demek değildir. Modelin hukuk dilini doğal kullanması ya da cevapları tutarlı bir biçimde sunması gibi davranışsal kazanımlarda ince ayar değerli olabilir. Ama olguların, yani hangi maddenin yürürlükte olduğunun ve ne dediğinin kaynağı her zaman dışarıdan, doğrulanabilir biçimde gelmelidir. Bizim için ayrım nettir: dilin akıcılığı modelden, doğruluğun teminatı ise getirilen kaynaktan gelir.
Sonuçta RAG ile ince ayar arasındaki seçim 'hangisi daha iyi' sorusu değildir; 'şu an hangi problemi çözüyorum' sorusudur. Güncel ve doğrulanabilir bilgiye mi ihtiyacınız var, yoksa kalıcı bir davranışa mı? Çoğu zaman cevap ikisidir; ama hangisiyle başlayacağınızı bilmek, sağlam bir sistemin ilk adımıdır. Hukuk gibi her cümlenin bir dayanağı olması gereken bir alandaysa o ilk adım neredeyse her zaman RAG'dır.