Türk Vergi Hukuku Özelinde Büyük Dil Modeli (LLM) Denemesi

Yapay zeka teknolojilerinin hukuk pratiğine entegrasyonu, teknolojiye yatkın meslektaşlar arasında sıcak bir konu bu aralar. Genel geçer modellerin (ChatGPT, Claude, Llama Base vb.) “halüsinasyon” problemleri ve terminolojik yetersizlikleri hepimizce bilinmekte. Genel amaçlı bu modeller, milyarlarca parametreleri sayesinde dilbilgisel açıdan kusursuz metinler üretebilseler de, Türk Hukuku’nun kendine has jargonu, usul hukuku kuralları ve özellikle yargının yerleşik içtihat kültürü karşısında yetersiz kalmaktalar. Anglosakson hukuk sistemine dayalı veri setleriyle eğitilen bu modellerin, Kıta Avrupası hukuk sistemine ve Türk mevzuatına uyarlanması, basit bir “çeviri” işleminin ötesinde, modelin muhakeme yeteneğinin yeniden şekillendirilmesini gerektirir.

Ben de hem merakımı gidermek hem de yeni kabiliyetler kazanabilmek için, açık kaynaklı “Meta Llama-3-8B” modelinin, özelleştirilmiş bir veri seti ile eğitilerek (fine-tuning), vergi hukuku alanında uzmanlaşmış bir karar destek sistemine dönüştürülme sürecini denemek istedim. Aşağıda bu ilk denememdeki metodolojik tercihlerimin gerekçelerini, karşılaştığım teknik darboğazları ve elde ettiğim ilk ampirik sonuçları paylaşmak istiyorum.

Sürecin başlangıcındaki en kritik karar, hangi temel modelin kullanılacağı ve bu modelin nasıl eğitileceğiydi. Model seçiminde Meta Llama-3-8B versiyonunu tercih ettim. Bunun temel nedeni, “donanım verimliliği” ile “muhakeme yeteneği” arasındaki optimum dengeyi sunması oldu. 70 milyar (70B) veya daha büyük parametreli modeller daha derin bir kavrayış sunsa da, bu modellerin eğitimi için gereken kurumsal donanım altyapısına (A100 GPU kümeleri vb.) erişimim bulunmamakta; ayrıca bu durum, benim aklımdaki projenin “yerel ve erişilebilir” olma hedefiyle çelişmekte. 8 milyar parametreli Llama-3, standart tüketici sınıfı donanımlarda (örneğin 16GB-24GB VRAM’e sahip sistemler veya Apple M-serisi çipli cihazlar) çalıştırılabildiğinden, bu modelin vergi hukuku gibi karmaşık mantıksal çıkarımlar gerektiren bir alanda yeterli (asgari) “bilişsel kapasiteyi” sunan iyi bir açık kaynak alternatif olduğunu düşündüm.

Eğitim metodolojisi olarak Tam İnce Ayar (Full Fine-Tuning) yerine LoRA (Low-Rank Adaptation) tekniğini ve Adaptör (Adapter) mimarisini tercih ettim. Bu tercih teknik bir zorunluluktan öte, stratejik bir karardı. Tam ince ayar, modelin tüm parametrelerinin güncellenmesini gerektirmekte; bu işlem hem benim sahip olmadığım ölçekte bir hesaplama gücü ister hem de “Yıkıcı Unutma” (Catastrophic Forgetting) riskini doğurabilir. Yani model hukuk öğrenirken, temel dil yeteneklerini veya genel mantık kurma becerisini kaybedebilir. Buna karşın, uyguladığım LoRA tekniği ile ana modelin ağırlıkları dondurulmuş, modelin üzerine sadece vergi hukuku yeteneğini içeren, yaklaşık 150 MB boyutunda, taşınabilir ve hafif bir “adaptör katmanı” eklenmiş oldu. Bu yaklaşım, modelin genel zekasını korurken, ona spesifik bir uzmanlık alanı (Türk Vergi Hukuku) enjekte etmeme olanak tanıdı.

Denemenin veri altyapısını, kamuya açık kaynaklardan derlenmiş Danıştay vergi dava daireleri kararlarından oluşan büyükçe denilebilecek bir veri seti oluşturdu. Ancak, kullandığım bulut tabanlı eğitim platformları olan Google Colab ve Kaggle üzerindeki GPU (Tesla T4) ve RAM kısıtları, bu verinin tamamının tek seferde işlenmesini (tokenization) imkansız kıldı.  Yazılım sorunları nediyle Kaggle üzerinde erişebildiğim çift GPU’dan sadece birini kullanabildim. Teknik bir darboğaz olan “Out of Memory” (Bellek Yetersizliği) hatalarını aşmak için, veri setinde stratejik bir küçültmeye gittim ve “Akıllı Örnekleme” (Smart Subsampling) yöntemini uyguladım. Havuz içerisinden rastgele seçilen yaklaşık 20.000 karar, modelin Danıştay’ın karar yazım mantığını ve hukuki argümantasyon tekniğini kavraması için eğitim seti olarak kullanıldı. Bu sınırlılık, modelin nadir görülen istisnai emsal kararları öğrenmesini engellese de, vergi hukukunun ana omurgasını oluşturan temel prensipleri (tarhiyat, ceza, uzlaşma vb.) bir miktar kavraması için faydalı oldu.

Bu ilk denemem, doğal olarak, biraz başarı ve biraz başarısızlıkla sonuçlandı. Eğitim sonrası elde edilen “Vergi Uzmanı” modelinin başarısını ölçmek amacıyla, eğitimsiz ham model (Llama-3 Base) ile karşılaştırmalı bir A/B testi uyguladım. Sonuçlar özetle şöyle oldu: (Doğrudan incelemek isteyenler test sorularına ve ve her iki modelin ilk yanıtlarına buradan erişebilir.

Başarılanlar (Kazanımlar): Dil ve Jargon Hakimiyeti: Ham model, “Limited Şirketlerde Amme Borcu Sorumluluğu” sorusuna İngilizce cevap verip Amerikan “LLC” kavramlarından bahsederken; adaptörlü modelim soruyu 6183 sayılı Kanun’un 35. ve Mükerrer 35. maddelerine kusursuz bir Türkçe ile atıf yaparak yanıtladı. Usul Hukuku ve Mantık: Eğitimli modelin en somut başarısı usul kurallarında karşımıza çıktı. Ham model, “Elektronik Tebligat Süresi” sorusuna “Ertesi iş günü tebliğ edilmiş sayılır” şeklinde hatalı bir yanıt verirken; eğitilmiş modelim “İzleyen beşinci günün sonunda” kuralını (VUK Md. 107/A) net bir şekilde uyguladı. Benzer şekilde, “Tarhiyat Sonrası Uzlaşma” konusunda, “Tarhiyat öncesi uzlaşmada uzlaşamazsa, mükellef tarhiyat sonrası uzlaşma talep edemez” kuralını bilmesi, modelin sadece kelimeleri değil, hukuksal süreçlerin “algoritmasını” da öğrendiğini göstermekte.

Başarılamayanlar (Eksikler ve Halüsinasyonlar): Sayısal Veriler ve Oranlar: Eğitilmiş model, sözel mantıkta temel modele göre daha gelişmiş olsa da, sayısal ezberde belirgin hatalar yaptı. Örneğin, “Örtülü Sermaye” konusunda kavramı genel olarak doğru açıklasa da, borcun öz sermayeye oranını (3 katı yerine) %20 gibi hatalı bir oranla ifade etti. Bu, bence 8 milyar parametreli modellerin sıkıştırma (compression) kaybı nedeniyle sayısal verileri tutmakta zorlandığını gösteriyor. Güncellik ve Kaynakça:Temel modelin eğitimi 2021 ve öncesi verilere dayandığı için, rastgele seçilmiş kararlar içinde de gerekli veri bulunmamış ya da eski veriler yer alıyor olabileceğinden, örneğin ödeme emrine dava açma süresini güncel 15 gün yerine, 7 gün olarak hatırladı. Belli ki, yapmış olduğum sınırlı fine-tuning, modele “nasıl yazacağını” öğretmiş, ancak ona hatasız bir “ansiklopedik hafıza” verememiş.

Elde ettiğim sonuçlar, tek başına bir dil modelinin (ne kadar iyi eğitilirse eğitilsin) profesyonel bir hukuk asistanı olmak için yeterli olmadığını, ancak orta üstü düzeyde bir “araştrıma/muhakeme motoru” olabileceğini düşündürmekte. Bu nedenle bir sonraki deneme aşamasında, modelin eksiklerini kapatmak için dağıtık bir hibrit mimari kullanmayı düşünüyorum. Bu yapıda;

  1. Aynı ya da benzer yöntemlerle ve fakat daha gelişmiş donanım ve çok daha kapsamlı bir veri seti kullanarak yeniden bir model eğitimi gerçekleştirmeyi (daha doğrusu, adaptör oluşturmayı),
  2. Eğittiğim adaptörlü modeli webe/ağa açık bir yerel makinada çalıştırarak bir arayüz üzerinden kullanıcı sorularını hukuki bir dille yanıtlatmayı,
  3. İkinci bir sunucu üzerinde çalışan bir vektör veritabanında tutacağım güncel mevzuat, içtihat ve literatür kaynakları ile doğrudan veriye erişim destekli metin üretimi (RAG / Retrieval-Augmented Generation) ortamı yaratmayı; bu sayede modelin, “ezberinden” değil, önündeki “kaynaktan” konuşmasını sağlamayı,
  4. Ayrıca, internetteki seçilmiş kaynaklara (MCP / Model Context Protocol ile) doğrudan bağlantı kurarak modelin, örneğin mevzuat.gov.tr gibi kaynaklara canlı bağlanarak, eğitim setinde olmayan en yeni verileri de kullanmasını sağlamayı amaçlıyorum.

Bu ilk deneme benim kabiliyetlerim, imkanlarım ve beklentilerim çerçevesinde -bence- oldukça başarılı oldu. Test sorularına verilen yanıtları inceleyenleriniz pek muhtemelen bu ilk model için “daha kırk fırın ekmek yemesi lazım” diyebilirler. Zira, eğitilmiş modelin yanıtlarında da çok esaslı hatalar var. Sonraki denemelerde daha büyük ve kaynak çeşitliliği içeren veri seti ile yapılacak ince ayar işlemleri sonrasında daha iyi / doğru sonuçlar elde edebileceğimi düşünüyorum. Eldeki (evdeki) imkanlarla ve bendeki mevcut bilgilerle ilk sonuç bu kadar oldu. Dilerim makul bir süre içinde çok daha başarılı bir hukuk modeli geliştirmek mümkün olur.

İzlemek isteyenler için mükerrer bir denemeden kısa bir video: