İçeriğe geç
L'Atelier AI

Yapay Zeka Okuryazarlığı

Büyük Dil Modelleri (ChatGPT Gibi) Nasıl Çalışır?

Dr. Gökhan Tahıl 8 dakika okuma

Bu yazıda
  1. Kısa cevap: çok iyi bir “sonraki kelime” tahmincisi
  2. Adım 1: Metni parçalara ayırmak (token’lar)
  3. Adım 2: Anlamı sayılarla temsil etmek
  4. Adım 3: Bağlama dikkat etmek (transformer)
  5. Adım 4: Eğitim, yani milyarlarca tahmin alıştırması
  6. Evde deneyin: insan dil modeli oyunu
  7. Dil modelleri ne değildir?
  8. İyi soru sormak neden önemli?
  9. Veliler için kısa not
  10. Özetle

“Bugün hava çok güzel, hadi parka …” Bu cümlenin nasıl bittiğini tahmin edebilir misiniz? Büyük ihtimalle aklınıza “gidelim” geldi. Ne “uçalım” ne de “pişirelim”. İşte ChatGPT gibi sohbet robotlarının arkasındaki büyük dil modelleri tam olarak bu beceriyi, yani bir metnin devamını tahmin etmeyi, çok büyük ölçekte yapar.

Bu yazıda büyük dil modellerinin (İngilizce kısaltmasıyla LLM, Large Language Model) nasıl çalıştığını teknik doğruluktan ödün vermeden ama sade bir dille anlatacağız.

Kısa cevap: çok iyi bir “sonraki kelime” tahmincisi

Bir büyük dil modeli, temelde şu soruya cevap arar: “Buraya kadar yazılanlara bakınca, sıradaki parça büyük olasılıkla ne olur?”

Model bir cevabı tek seferde yazmaz. Önce bir parça seçer, onu metne ekler, sonra yeni metne bakıp bir sonraki parçayı seçer. Cevap bitene kadar bu döngü sürer. Ekranda kelimelerin tek tek belirmesinin sebebi de budur.

Bu kadar basit bir fikir nasıl olur da şiir yazan, kod düzelten, soru cevaplayan bir sisteme dönüşür? Cevap üç şeyde saklı: token’lar, eğitim ve ölçek.

Adım 1: Metni parçalara ayırmak (token’lar)

Bilgisayar harfleri ve kelimeleri bizim gibi görmez. Metin önce token denen küçük parçalara bölünür. Bir token bazen bütün bir kelime, bazen kelimenin bir parçası, bazen de bir noktalama işaretidir.

Türkçe gibi eklerle çalışan dillerde bu durum ilginçleşir. “Kitaplarımızdan” gibi bir kelime, modelin sözlüğüne göre birkaç parçaya bölünebilir; örneğin kök ve ekler ayrı ayrı. Her token’a bir numara verilir. Model aslında kelimelerle değil, bu numaralarla çalışır.

Bir benzetme: Lego ile bir ev yaptığınızı düşünün. Ev tek parça değildir; farklı boyutlarda tuğlalardan oluşur. Token’lar da metnin Lego tuğlalarıdır.

Adım 2: Anlamı sayılarla temsil etmek

Her token, modelin içinde uzun bir sayı listesine dönüştürülür. Buna gömme (İngilizcesiyle embedding) denir. Bu sayılar, token’ın anlamına dair bir tür “koordinat” gibi davranır.

Bir harita düşünün. İstanbul ile Kocaeli haritada birbirine yakın, İstanbul ile Tokyo uzaktır. Gömmelerde de anlamca yakın kelimeler bu sayı uzayında birbirine yakın düşme eğilimindedir. “Kedi” ile “köpek” birbirine, “kedi” ile “buzdolabı”na göre daha yakındır. Bu yakınlık kimse tarafından elle girilmez; model eğitim sırasında öğrenir.

Adım 3: Bağlama dikkat etmek (transformer)

“Yüz” kelimesini düşünün. “Denizde yüz” ile “yüz lira” ve “güler yüz” cümlelerinde tamamen farklı anlamlar taşır. Model hangi anlamın kastedildiğini nasıl anlar?

Günümüz dil modellerinin çoğu transformer adı verilen bir mimariye dayanır. Transformer’ın en önemli fikri dikkat mekanizmasıdır. Model, bir kelimeyi işlerken cümledeki diğer kelimelere bakar ve hangilerinin o an daha önemli olduğuna karar verir. “Denizde” kelimesi, “yüz”ün yüzmek anlamına geldiğine dair güçlü bir ipucudur.

Bunu sınıfta bir öğretmenin soruyu cevaplamadan önce tahtadaki notlara hızlıca göz gezdirmesine benzetebiliriz. Bütün notlara eşit değil, soruyla ilgili olanlara daha çok dikkat eder.

Adım 4: Eğitim, yani milyarlarca tahmin alıştırması

Model bu becerileri nasıl kazanır? Çok büyük miktarda metin üzerinde basit bir alıştırma yaparak:

  1. Bir metin parçası alınır, son kısmı gizlenir.
  2. Model gizlenen token’ı tahmin eder.
  3. Tahmin doğru cevapla karşılaştırılır.
  4. Model, hatasını azaltacak şekilde içindeki sayıları (parametreleri) biraz değiştirir.

Bu işlem inanılmaz sayıda kez tekrarlanır. “Büyük” kelimesi de buradan gelir: hem eğitimde kullanılan metin miktarı hem de modelin içindeki ayarlanabilir sayıların miktarı çok büyüktür. Bu yüzden bu modelleri eğitmek güçlü ekran kartlarından (GPU) oluşan büyük bilgisayar sistemleri gerektirir.

Sonraki aşamada model, insanların hazırladığı soru-cevap örnekleriyle ve insan geri bildirimiyle ayrıca eğitilir. Böylece yalnızca metin tamamlayan bir sistemden, sorulara yardımcı olmaya çalışan bir asistana dönüşür.

Evde deneyin: insan dil modeli oyunu

Bu oyun 3-4 kişiyle oynanır ve bir dil modelinin mantığını çok iyi gösterir.

  1. Birisi bir cümlenin ilk üç kelimesini söyler: “Dün akşam annem…”
  2. Sıradaki kişi, sadece önceki kelimelere bakarak tek bir kelime ekler.
  3. Tur böyle devam eder; kimse cümlenin nereye gideceğini önceden bilmez.
  4. On kelime sonra durun ve cümleyi yüksek sesle okuyun.

Sonra şunu konuşun: Herkes “en olası” kelimeyi seçtiğinde cümle nasıl oldu? Birisi bilerek sürpriz bir kelime seçtiğinde ne değişti? Dil modellerinde de bu dengeyi ayarlayan bir ayar vardır; buna sıcaklık (temperature) denir. Düşük sıcaklık daha tahmin edilebilir, yüksek sıcaklık daha yaratıcı ama bazen daha tuhaf metinler üretir.

Dil modelleri ne değildir?

Bu teknolojiyi doğru kullanmak için sınırlarını bilmek şart:

  • Bir ansiklopedi ya da veritabanı değildir. Bilgiyi bir raftan çekip getirmez; metin üretir. Bu yüzden kulağa çok emin gelen ama yanlış cümleler kurabilir. Bu duruma halüsinasyon denir; ayrıntısını yapay zeka halüsinasyonu yazımızda anlatıyoruz.
  • Bir insan değildir. Duygusu, niyeti ya da kişisel deneyimi yoktur. “Anladım” demesi, bizim anladığımız anlamda anladığı anlamına gelmez.
  • Her zaman güncel değildir. Eğitim verisi belirli bir tarihte kesilir. Ek araçlara bağlanmadıkça sonrasını bilmeyebilir.
  • Hesap makinesi değildir. Özellikle uzun hesaplarda hata yapabilir, çünkü sayıları da token olarak işler.

İyi soru sormak neden önemli?

Model, verdiğiniz metnin devamını ürettiği için, ne yazdığınız ne alacağınızı doğrudan etkiler. Belirsiz bir soru belirsiz bir cevap getirir. Amacı, bağlamı ve istenen biçimi açıkça yazan bir istek çok daha işe yarar sonuç verir. Bu beceriye prompt mühendisliği denir; prompt mühendisliği nedir yazımız bu konuya iyi bir başlangıç.

Veliler için kısa not

Dil modelleri güçlü araçlardır ama çocukların bu araçlarla kendi adlarına hesap açarak, yalnız başına çalışması gerekmez. En sağlıklı yaklaşım, bir yetişkinin gözetiminde, modelin ne yapıp ne yapamadığını tartışarak kullanmaktır. Çocuğunuz modelden bir cevap aldığında “Bunu nereden doğrulayabiliriz?” sorusunu birlikte sormak, bu teknolojiyle kurulacak ilişkinin temelini atar.

Özetle

Büyük dil modelleri metni token’lara ayırır, bu token’ları anlam taşıyan sayılara çevirir, dikkat mekanizmasıyla bağlamı değerlendirir ve bir sonraki parçayı tahmin eder. Bu kadar sade bir fikrin çok büyük ölçekte uygulanması, bugün kullandığımız sohbet robotlarını ortaya çıkarır.

L’Atelier AI’da öğrenciler dil modellerini kendi adlarına hesap açmadan, atölye hesapları ve mentor gözetimiyle kullanıyor; nasıl çalıştıklarını anlayarak projelerinde araç olarak değerlendiriyor. Ayrıntılar için Yapay Zeka ile Uygulama Geliştirme programına bakabilirsiniz.

Yazar: Dr. Gökhan Tahıl

L'Atelier AI'ın kurucusu ve mentoru. Galatasaray Üniversitesi Bilgisayar Mühendisliği; Université d'Artois'da yapay zeka doktorası.

Profil
Paylaş:

À toi de jouer.

Önce tanışalım.

Ücretsiz bir deneme oturumunda çocuğunuz atölyeyi görür, siz de mentorle konuşursunuz.