Ücretsiz eğitim  /  Yapay zekâ ve yazılım temelleri

LLM nasıl çalışır? Token, tahmin ve olasılık

Claude'un içindeki matematiği bilmek zorunda değilsin. Ama nasıl karar verdiğini bilmek zorundasın, çünkü ileride karşılaşacağın tuhaf davranışların çoğunun açıklaması bu derste.

LLM nasıl çalışır? Token, tahmin ve olasılık dersinin video kapağı Bu dersi YouTube'da izle ↗

Kısa cevap

LLM (büyük dil modeli), tek bir iş yapan bir programdır: sıradaki metin parçasını tahmin eder. Bu parçalara token denir. Model her adımda olası devamların bir listesini çıkarır, birini seçer, cümleye ekler ve aynı işi tekrarlar. Bu yüzden aynı soruya farklı cevaplar alabilirsin ve model emin görünürken yanılabilir.

Modelin yaptığı tek iş: sıradaki parçayı tahmin etmek

LLM, İngilizce large language model yani büyük dil modeli demek. Claude'un arkasında bu tür modeller çalışıyor. Basitleştirerek söylersem yaptığı tek bir iş var: sıradaki parçayı tahmin etmek.

Şu cümleye bak: "Bugün hava çok..." Devamını sen bile tahmin edebiliyorsun. Güzel, sıcak, soğuk. Model de tam olarak bunu yapıyor, yalnız çok büyük miktarda metinden öğrendiği kalıplarla.

Dikkat etmen gereken nokta şu: tek bir cevap üretmiyor. Bir olasılık listesi çıkarıyor, sonra oradan seçiyor.

"Bugün hava çok..." cümlesinin olası devamı
güzel%31
sıcak%24
soğuk%18
diğerleri%27

Oranlar anlatım için yazıldı, gerçek bir modelin çıktısı değil.

Cevap da bir bütün olarak kurulmuyor. Seçilen parça metne ekleniyor, model bu yeni metne bakıp bir sonraki parçayı tahmin ediyor. Uzun bir cevap, bu adımın binlerce kez tekrarı.

Aynı soruya neden iki farklı cevap alırsın?

Model her seferinde listenin en üstündekini seçmek zorunda olmadığı için. Bir seferinde "güzel", diğerinde "sıcak" gelebilir. O küçük fark sonraki bütün tahminleri etkilediğinden cevaplar giderek birbirinden ayrılır.

"Aynı şeyi iki kez sordum, iki farklı cevap aldım" durumunun sebebi bu. Bozuk değil, tasarımı böyle. Kod yazdırırken de aynı istek iki farklı kod getirebilir; ikisi de çalışıyor olabilir.

Token: modelin asıl birimi

Model kelimelerle değil, kelime parçalarıyla çalışıyor. Bunlara token deniyor. Kısa ve yaygın bir kelime tek parça olabilir, uzun bir kelime birkaç parçaya bölünür:

Merhaba
yapabileceklerimizden

Bölünme temsilî: gerçek parçalar modele göre değişir.

Türkçe konuşan biri olarak bilmen gereken bir şey var: Türkçe genellikle İngilizceden daha fazla token harcar. Bu modeller ağırlıklı olarak İngilizce metinlerle eğitildi, Türkçenin ek yapısı da kelimeleri daha çok parçaya böldürüyor. Yani aynı şeyi Türkçe yazdığında genellikle daha çok yer kaplıyor.

Token sayısı üç yerde karşına çıkıyor:

  • Kullanım sınırı: Uzun sohbetler ve büyük dosyalar sınırını daha hızlı doldurur.
  • Hafıza: Modelin aynı anda aklında tutabildiği miktar da token ile ölçülür. Bir sonraki ders olan context window bunu anlatıyor.
  • API maliyeti: Claude'u kendi uygulamana bağlarsan ödemeyi token başına yaparsın. Rakamlar Claude API rehberinde.

Bu dersin en kritik cümlesi: model bilmiyor, tahmin ediyor

Claude sana kod yazarken "bu kodun doğru olduğunu biliyorum" demiyor. Fiilen yaptığı şey şu: "bu bağlamda böyle bir kod gelme ihtimali yüksek."

Çoğu zaman ikisi aynı sonucu verir. Ama her zaman değil. Yanıldığında da özür dileyen bir tonda değil, gayet kendinden emin bir tonda yanılır, çünkü emin görünen cümleler de öğrendiği kalıpların parçası.

Bu anlatım neyi basitleştiriyor?

Buraya kadarki anlatım bir model, gerçek sistem biraz daha karmaşık. Bugünkü Claude cevap vermeden önce düşünme adımları kullanabiliyor, web araması yapabiliyor, Claude Code içinde dosya okuyup kod çalıştırarak sonucu kontrol edebiliyor. Bunlar yanılma ihtimalini düşürür, sıfırlamaz. Alttaki mekanizma yine tahmin olduğu için sonucu kontrol etme işi sende kalır.

Bu bilginin üç pratik sonucu

1. Ne kadar iyi bağlam verirsen tahmin o kadar isabetli olur

Modele tahmin edecek malzeme vermezsen en olası şeyi yazar, en olası şey de genellikle en sıradan şeydir. Şu iki isteği karşılaştır:

Müşteri randevuya gelecek mi, ona bir mesaj yaz.
Yarın randevusu olan müşterilere, gelip gelmeyeceklerini teyit etmek için kısa bir SMS yaz. Mahalle kuaförüyüz, amacımız gelemeyecek olanları önceden öğrenip o saati başkasına verebilmek. İki cümle olsun, samimi ama saygılı; sonunda EVET ya da HAYIR diye cevap vermelerini iste. Emoji kullanma.

Claude Code ile proje yaparken ilk işin kod yazmak değil, şartname yazmak olmasının sebebi de bu. Şartname, çok büyük ve dikkatli yazılmış bir istekten ibaret. Hazırlamak için SaaS MD Oluşturucu aracını kullanabilirsin.

2. Farklı sonuç geldiğinde panikleme, iyi sonucu kaydet

Aynı isteğin aynı sonucu vereceğini varsayma. Çalışan bir sonuca ulaştığında onu kaydet, sonra bir sonraki değişikliğe geç. Kod tarafında bunun aracı Git dersinde anlattığım kayıt noktaları.

3. Emin görünmesi doğru olduğu anlamına gelmez

Rakam, tarih, kaynak ve hukuki bilgileri doğrula. Kodu çalıştırmadan "tamam" deme. Neden uydurduğunu ve bunu nasıl yakalayacağını halüsinasyon dersinde ayrıca işliyorum.

Kendin dene: üç küçük deney

Okumak yerine görmek daha kalıcı. Ücretsiz bir Claude hesabı yeterli, toplam on dakika sürer.

Deney 1: Aynı soru, iki sohbet

İki ayrı yeni sohbet aç ve ikisine de şunu yaz: "Bir kuaför salonu için üç cümlelik tanıtım yazısı yaz." Cevapları yan yana koy. Neyin değiştiğine, neyin aynı kaldığına bak.

Deney 2: Bağlamın etkisi

Yukarıdaki kısa ve uzun SMS isteklerini iki ayrı sohbette dene. İkinci cevabı düzeltmek için kaç kelime değiştirmen gerektiğini say.

Deney 3: Metnin kaç token tutuyor?

Yazdığın bir paragrafı Claude Token Hesaplayıcı'ya yapıştır, sonra aynı paragrafın İngilizce çevirisini de dene. Araç yaklaşık bir tahmin verir, kesin sayım değildir; ama uzun bir metnin neden pahalıya geldiğini görmek için yeterli.

Bu dersten aklında kalması gerekenler

KavramAnlamı
LLMSıradaki metin parçasını tahmin eden büyük dil modeli.
TokenModelin çalıştığı kelime parçası. Kullanım ve maliyet bununla ölçülür.
Olasılık listesiModel her adımda olası devamları sıralar ve birini seçer. Cevapların değişmesinin sebebi bu.
BağlamModele verdiğin bilgi. Tahminin kalitesini en çok bu belirler.

Diğer terimler için kavram sözlüğüne bakabilirsin.

Sık sorulan sorular

LLM ne demek?

Large language model, yani büyük dil modeli. Çok büyük miktarda metinden öğrendiği kalıplarla sıradaki metin parçasını tahmin eden yapay zeka modeli. Claude ve benzeri asistanlar bu modeller üzerine kurulu.

Claude aynı soruya neden farklı cevap veriyor?

Model her adımda olası devamların bir listesini çıkarıp birini seçiyor ve her zaman en üsttekini seçmek zorunda değil. Bu küçük farklar sonraki tahminleri de etkilediği için cevaplar değişiyor. Bu bir hata değil, modelin çalışma biçimi.

Token nedir?

Modelin metni işlerken kullandığı kelime parçası. Kısa bir kelime tek token olabilir, uzun bir kelime birkaç token'a bölünebilir. Kullanım sınırları, modelin hafızası ve API maliyeti token üzerinden ölçülür.

Türkçe daha çok token harcar mı?

Genellikle evet. Modeller ağırlıklı olarak İngilizce metinlerle eğitildi ve Türkçenin ek yapısı kelimelerin daha çok parçaya bölünmesine yol açıyor. Kesin oran metne ve modele göre değişir.