LLM’ler Nasıl Çalışır: Yapay Zeka’nın Temel Mimarisini Anlamak
Modern Büyük Dil Modelleri (LLM’ler), ardışık olarak istiflenmiş Transformer blokları üzerine kurulmuştur. Bu yazıda, Transformer tabanlı LLM’lerin temel mekanizmalarını, derinlemesine teknik detaylara inmeden ancak özünü kaybetmeden adım adım inceleyeceğiz. Bu rehber, LLM’lerin iç işleyişine bir giriş niteliğindedir ve sizi modern LLM makalelerini veya model kartlarını okumaya hazırlayacaktır. İşte izleyeceğimiz yol:
- Tokenlar: Metin dizelerinin nasıl sayı dizilerine dönüştürüldüğü
- Embedding’ler: Sayıların nasıl anlam kazandığı
- Konumsal Kodlama: Modelin tokenların sırasını nasıl anladığı
- Dikkat Mekanizması: Tokenların birbiriyle nasıl bilgi paylaştığı
- Çok Kafalı Dikkat: Modelin aynı anda birçok ilişkiyi nasıl takip ettiği
- İleri Beslemeli Ağ (Feed-forward network): Modelin depolanmış yapısının büyük bir kısmının bulunduğu yer
- Artık Akış (Residual stream) ve Katman Normalizasyonu: Derin katman yığınlarını nasıl eğitilebilir kıldığı
- Bir Sonraki Tokenı Tahmin Etme: Modelin gerçekte ne ürettiği ve üretim döngüsünün nasıl çalıştığı
- Mimari ve Eğitilmiş Ağırlıklar: Modern LLM’lerde geniş ölçüde paylaşılanlar ve farklı olanlar
Tokenizasyon: Metinden Sayılara Dönüşüm
Modeller metni doğrudan okumaz; bunun yerine tamsayı ID’lerini okur. İstemcinizi bir tamsayı dizisine dönüştüren bu adıma tokenizasyon denir. Bir tokenlaştırıcı (tokenizer), bir dizeyi alır ve her tamsayının sabit bir kelime dağarcığındaki bir girişi işaret ettiği bir tamsayı dizisi üretir. Modern LLM kelime dağarcıkları genellikle on binlerce ila birkaç yüz bin giriş içerir. Modelin bir kelime dağarcığı girişi için kullandığı tamsayıya token ID denir.
Tokenlar genellikle tam kelimeler değildir; genellikle alt kelime parçalarıdır. Örneğin, ‘tokenizasyon’ kelimesi [‘token’, ‘izasyon’] şeklinde bölünebilirken, ‘running’ kelimesi [‘run’, ‘ning’] olarak ayrılabilir. Bunun nedeni verimliliktir. Tam kelime dağarcıkları çok büyüktür ve yeni kelimelere genelleşmez. Karakter düzeyindeki kelime dağarcıkları ise çok küçüktür ve modelin en basit kalıpları bile sıfırdan öğrenmesini gerektirir. Alt kelime tokenizasyonu bu ikisinin ortasında yer alır: en yaygın parçalar tek token haline gelir, nadir veya yeni kelimeler daha küçük parçalardan oluşur. Kelime dağarcığı, tokenlaştırıcının sabit parçalar listesidir; her parçanın bir ID’si vardır ve model yalnızca bu listedeki ID’leri doğrudan alabilir.
Farklı model aileleri farklı tokenlaştırıcılar kullanır. GPT modelleri Byte Pair Encoding (BPE) varyantlarını kullanırken, SentencePiece LLaMA tarzı modellerde yaygındır. Seçim, hesaplama maliyeti (daha az token daha az iş demektir) ve çok dilli kapsam gibi faktörler için önemlidir, ancak temel şekil aynıdır: metin girişi, tamsayılar çıkışı. İsteminiz artık bir tamsayı dizisi olduğuna göre, sonraki adım bu tamsayılara anlam vermektir.
Embedding’ler: Sayılara Anlam Katmak
1024 gibi bir token ID sadece bir satır indeksidir. Kendi başına bir anlam taşımaz. Ona anlam veren şey, embedding matrisi adı verilen devasa bir tablodur. Her modelde bir tane bulunur ve kelime dağarcığındaki her giriş için bir satırı vardır. Her satır, uzun bir sayı vektörüdür; her satırın uzunluğu modelin gizli boyutudur (hidden size). Birçok 7B sınıfı modelde bu, token başına 4.096 sayı anlamına gelir. Daha büyük modeller genellikle daha geniş vektörler kullanır. Bir vektör, bir sayı listesidir; Transformer’da her token, modelin üzerinde matematiksel işlemler yapabilmesi için bir vektöre dönüşür.
Tokenlaştırıcı, modele bir tamsayı verdiğinde, model o satırı arar ve onun yerine vektörü kullanır. Bu vektör, token’ın embedding’idir. Eğitim sırasında öğrenilen, modelin o token’ın ‘anlamı’nı temsil eden yapısıdır. Embedding matrisi, bir arama tablosudur: token ID girişi, öğrenilmiş vektör çıkışı.
Bu embedding’lerin ilginç bir özelliği, anlamsal olarak benzer tokenların benzer vektörlere sahip olmasıdır. ‘Kral’ için olan vektör, ‘kraliçe’ için olana uzayda yakınken, ‘Paris’ için olan ‘Fransa’ya yakındır. Bunların hiçbiri önceden kodlanmamıştır; yeterli metin üzerinde eğitimden kendiliğinden ortaya çıkar ve model bu konumları iyi metin tahmin etmesine izin verdiği için öğrenir. Embedding’ler üzerinde aritmetik işlemler yapabilirsiniz ve bazen işe yarar. Ünlü örnek: ‘kral – adam + kadın ≈ kraliçe’. Embedding uzayının geometrisi, modelin bu şekilde inşa etmesi söylenmemesine rağmen, gerçek anlamsal yapıyı taşır.
Bu aşamada her token, embedding’iyle değiştirilmiş olsa da, embedding tek başına token’ın dizideki konumunu söylemez. ‘Köpek’ için olan vektör, ‘köpek’ istemcinizin ilk kelimesi de olsa beşinci kelimesi de olsa aynı vektördür. İşte bu noktada konumsal kodlama devreye girer.
Konumsal Kodlama: Sırayı Anlamak
Basit kendi kendine dikkat mekanizması, kelime sırasının yerleşik bir temsiline sahip değildir. Bir konumsal sinyal olmadan, ‘köpek’in ‘ısırır’dan önce mi yoksa sonra mı geldiğini bilmenin doğrudan bir yolu yoktur. Kelime sırası anlamı değiştirir. Dolayısıyla modelin başka bir parçaya ihtiyacı vardır: her tokenın konumunu matematiksel işlemlere dahil etmenin bir yoluna. Konumsal kodlama, modelin sıra bilgisini nasıl aldığıdır; modele her tokenın dizide nerede oturduğunu söyler.
Orijinal Transformer makalesi (Vaswani ve diğerleri, 2017), her konuma kendi sayı desenini vererek ve diğer tüm işlemlerden önce doğrudan her tokenın embedding’ine ekleyerek bunu yapmıştır. 1. konumun bir deseni, 5. konumun farklı bir deseni, 100. konumun başka bir deseni vardı. Desenler, farklı frekanslardaki sinüs ve kosinüs dalgalarından geliyordu. Böylece, 1. konumdaki ‘köpek’ için embedding, 5. konumdaki ‘köpek’ için olandan farklıydı, sadece eklenen konum deseni farklı olduğu için.
Modern modeller çoğunlukla Su ve diğerleri (2021) tarafından tanıtılan ve şimdi LLaMA, Mistral, Gemma, Qwen ve diğer birçok açık ağırlıklı ailede kullanılan Rotary Position Embeddings (RoPE) adı verilen farklı bir şema kullanır. Sezgi: her tokenın vektörüne konum bilgisi eklemek yerine, RoPE vektörü konumuna bağlı bir açıyla döndürür. 1. konumdaki bir token küçük bir dönüş, 100. konumdaki bir token daha büyük bir dönüş alır. Daha sonra dikkat sırasında iki token karşılaştırıldığında, önemli olan, aralarındaki mesafeyi kodlayan dönüşler arasındaki farktır. RoPE, göreceli konumu doğal olarak kodlar (bu, dikkatin aslında istediği şeye daha yakındır), daha uzun bağlamlara daha iyi genelleşir ve modele yeni parametreler eklemez.
İyi bir konumsal kodlamaya rağmen, modern LLM’lerin belgelenmiş bir ‘ortada kaybolma’ sorunu vardır (Liu ve diğerleri, 2023). Uzun istemlerin başındaki ve sonundaki bilgileri ortada gömülü bilgilerden daha güvenilir bir şekilde kullanırlar. Bu nedenle ‘önemli bağlamı ilk sıraya koyun’ veya ‘anahtar bilgiyi sonda tekrarlayın’ gibi istem mühendisliği ipuçları gerçekten yardımcı olur.
Token anlamı ve konumu kodlandığına göre, bir sonraki soru tokenların bilgiyi gerçekte nasıl değiştirdiğidir.
Dikkat Mekanizması: Tokenların Bilgi Paylaşımı
Bu mekanizma mimariye adını vermiştir: Dikkat (Attention). Her Transformer katmanının içinde dikkat tek bir şey yapar: her tokenın görmesine izin verilen diğer tokenlara bakmasını ve hangilerinin bir sonraki adım için önemli olduğuna karar vermesini sağlar.
Bunu, her tokene aynı anda üç rol vererek yapar. Her token, Sorgu (Query), Anahtar (Key) ve Değer (Value) (Q, K, V) adı verilen üç yeni vektöre dönüştürülür. Sorgu ‘ne arıyorum’ anlamına gelirken, Anahtar ‘bana bakan tokenlara ne sunuyorum’ anlamına gelir ve Değer, eşleşme güçlü olduğunda kopyalanan bilgiyi taşır. Aynı token aynı anda üç rolü de oynar. Q, K, V dönüşümleri öğrenilmiş matrislerdir, bu nedenle model, eğitim sırasında her tokenın ne araması ve ne sunması gerektiğini anlar.
Eşleşme, bir benzerlik puanı aracılığıyla gerçekleşir. Her tokenın Sorgusu, görmesine izin verilen her tokenın Anahtarına, ölçeklendirilmiş bir nokta çarpımı kullanılarak karşılaştırılır. Nokta çarpımı, iki vektörün ne kadar hizalandığını puanlamak için basit bir yoldur. Sezgisel olarak, bu iki vektörün ne kadar hizalandığını ölçer. Ölçeklendirme, softmax’tan önce sayıları sabit tutar. Eşleşme puanları daha sonra softmax kullanılarak ağırlıklara dönüştürülür. Softmax, herhangi bir sayı kümesini alır ve 1’e kadar toplayan olasılık benzeri bir dağılıma dönüştürür. Daha yüksek eşleşme puanına sahip tokenlar daha yüksek ağırlıklar alır ve bu ağırlıklar daha sonra değer vektörlerinin ağırlıklı ortalamasını almak için kullanılır.
GPT tarzı dil modellerine özgü bir kısıtlama, metni soldan sağa doğru üretmeleridir. 5. konumdaki bir tokenın yalnızca 1’den 5’e kadar olan konumlara dikkat etmesine izin verilir. 6, 7, 8 gibi konumlardaki tokenlara dikkat edemez, çünkü bunlar henüz üretilmemiştir. Buna nedensel maskeleme (causal masking) denir. Uygulaması basittir: gelecekteki tokenlar, softmax’tan sonra fiilen sıfır ağırlıkla sonuçlanacak kadar düşük eşleşme puanları alır. Nedensel maskeleme, gelecekteki tokenları gizler ve yalnızca bir kod çözücü (decoder-only) dil modelinin bir sonraki tokenı tahmin ederken ileriye bakmasını engeller.
Yorumlanabilirlik araştırmasındaki en ilginç bulgulardan biri, 2022’de Anthropic tarafından bulunan indüksiyon başlıkları (induction heads) adı verilen özel dikkat başlıkları hakkındadır. Bu başlıklar, istemde ‘A B … A’ biçimindeki kalıpları tespit etmeyi öğrenir ve bir sonraki olarak B’nin geleceğini tahmin eder. Model ‘A’yı ikinci kez gördüğünde, indüksiyon başlığı ‘A’nın daha önce nerede göründüğüne bakar, ardından gelen şeyi görür ve onu kopyalar. Bunlar, LLM’in isteminizden bir kalıp alıp onu devam ettirme yeteneği olan bağlam içi öğrenmenin (in-context learning) arkasındaki en net bilinen mekanizmalardan biridir.
Dikkat mekanizmasının önemli bir maliyeti vardır. Tam dikkatte, her token görmesine izin verilen tüm tokenlara karşı karşılaştırma yapar, bu nedenle istem uzunluğunu ikiye katlamak işi yaklaşık dört kat artırır. Bu nedenle uzun istemlerin çalıştırılması pahalıdır ve son araştırmaların çoğu dikkati daha verimli hale getirme (FlashAttention, sparse attention, linear attention) üzerindedir.
Ancak bir dikkat başlığı, modele bu ilişkilerin yalnızca bir öğrenilmiş görünümünü verir.
Çok Kafalı Dikkat: İlişkileri Paralel İzleme
Tek bir dikkat geçişi, modele hangi tokenların hangi diğer tokenlar için önemli olduğuna karar vermenin bir yolunu sunar. Bu yeterli değildir. Dilde aynı anda birçok ilişki gerçekleşir: özne ve fiil uyumu, zamirler ve atıfta bulundukları isimler, cümleler arasındaki uzun menzilli referanslar, kelime sırası ve yerel ifadeler.
Çok kafalı dikkat (Multi-head attention) bunu, dikkati birçok kez paralel olarak çalıştırarak çözer; her paralel geçiş kendi daha küçük uzayında çalışır. Her paralel geçişe bir başlık (head) denir. Bir dikkat başlığı, kendi öğrenilmiş projeksiyonlarına sahip bağımsız bir dikkat geçişidir.
Her başlık, orijinal token vektörünün gerçek bir dilimini almaz. Her başlığın, tam token vektörünü kendi daha küçük Q, K ve V vektörlerine eşleyen kendi öğrenilmiş projeksiyon matrisleri vardır. Yani, bir modelde token başına 4.096 sayı ve 32 başlık varsa, her başlık genellikle 128 boyutlu bir uzayda çalışır, ancak bu 128 sayı, tam 4.096’nın öğrenilmiş bir projeksiyonudur, sabit bir dilim değil. Aynı tokenın farklı ‘görünümleri’, farklı parçaları değil.
Her başlık kendi dikkat geçişini bağımsız olarak çalıştırır. Ardından, tüm başlıkların çıktıları birleştirilir ve nihai bir doğrusal katmandan geçirilerek tekrar tam boyutlu tek bir vektöre karıştırılır. Model bu nihai karıştırmayı da öğrenir.
Bunu ilginç kılan şey, farklı başlıkların genellikle kısmen uzmanlaşmış olmasıdır. Modele her başlığın ne yapması gerektiği asla söylenmez. Uzmanlaşma, eğitim sırasında doğal olarak ortaya çıkar. Araştırmacılar, dilbilgisini takip eden (fiilleri nesneleriyle, makaleleri isimleriyle bağlayan), hangi zamirin hangi isme atıfta bulunduğunu çözen, konumsal kalıpları izleyen başlıklar, indüksiyon başlıkları ve daha fazlasını bulmuşlardır. Tek bir Transformer katmanı 32 başlığa sahip olabilir. Modern bir öncü model düzinelerce katmana sahiptir. Yani tipik bir LLM, her biri kendi öğrenilmiş görünümünü ekleyen toplamda binlerce dikkat başlığına sahiptir.
Yakın zamanda mimari bir değişikliği tetikleyen pratik bir maliyet endişesi vardır. Her başlık, zaten üretilmiş tüm tokenlar için Anahtar (Key) ve Değer (Value) vektörlerini bellekte tutmalıdır, böylece yeni bir token üretildiğinde modelin her şeyi baştan hesaplaması gerekmez. Buna KV önbelleği (KV cache) denir ve uzun bağlam uzunluklarında bir LLM çalıştırmanın ana bellek maliyetidir. KV önbelleği, üretim sırasında eski Anahtar ve Değer vektörlerini depolar; bu, modelin her token eklediğinde tüm istemi yeniden hesaplamasını engeller.
Modern sadece-kod çözücü (decoder-only) LLM’ler çoğunlukla Gruplanmış Sorgu Dikkat (Grouped-Query Attention – GQA) adı verilen bir varyant kullanır. Her başlığın kendi anahtarları ve değerleri olmak yerine, başlık grupları aynı anahtar ve değer başlıklarını paylaşır. LLaMA-2 70B’de 64 sorgu başlığı, ancak sadece 8 anahtar/değer başlığı bulunur. Mistral 7B’de 32 sorgu başlığı ve 8 anahtar/değer başlığı vardır. Sonuç, tam çok kafalı dikkatle neredeyse aynı doğrulukta olup, çok daha az bellek basıncı ve çıkarım maliyetidir. GQA, birden fazla sorgu başlığının daha az anahtar/değer başlığını paylaşmasına olanak tanır. Bu, birçok sorgu görünümünü korurken KV önbelleği belleğini azaltır.
İleri Beslemeli Ağ (FFN): Modelin Hafızası
Dikkat mekanizması tokenlar arasındaki bilgiyi karıştırmayı bitirdikten sonra, her katmanda kimsenin pek bahsetmediği ikinci bir adım vardır: ileri beslemeli ağ (feed-forward network – FFN). Dikkat tokenların birbiriyle konuşmasıyla ilgiliyken, ileri beslemeli ağ her tokenın kendi başına daha fazla işlem yapmasıyla ilgilidir. Her tokenın vektörü üzerinde bağımsız olarak çalışır, tokenlar arası karıştırma yapmaz.
İleri beslemeli ağ sırasıyla üç şey yapar:
- Tokenın vektörünü daha büyük bir boyuta genişletir (orijinal Transformer 4 kat kullanırken, modern SwiGLU modelleri genellikle farklı genişleme boyutları kullanır).
- Doğrusal olmayan bir fonksiyon uygular.
- Vektörü orijinal boyutuna geri sıkıştırır.
Ortadaki doğrusal olmayan adım, anlaşılması gereken belirli bir şey yapar. Doğrusal olmama (non-linearity), girdiyi büken bir fonksiyondur. En basiti olan ReLU, herhangi bir negatif sayı için sıfır çıkarır ve pozitif sayıları değiştirmeden geçirir. Doğrusal olmama, ağın tek bir büyük doğrusal dönüşüme çökmesini engelleyen bir fonksiyondur. Onsuz, FFN sadece üst üste istiflenmiş iki doğrusal katman olurdu ve saf doğrusal matematiği istiflemek çöker. Art arda iki doğrusal katman matematiksel olarak tek bir doğrusal katmana eşdeğerdir ve art arda yüz doğrusal katman hala birine eşdeğerdir. Doğrusal olmama bu çöküşü durduran şeydir ve FFN’nin tek bir matris çarpımından daha zengin bir şey yapabilmesinin nedenidir.
Orijinal Transformer ReLU kullanıyordu. GPT ve BERT GELU’ya geçti. LLaMA, Mistral ve PaLM gibi modern modeller SwiGLU kullanır. Genişlet-sonra-sıkıştır yapısı aynı kaldı. Doğrusal olmama işlevinin kendisi üzerinde iterasyon yapılmıştır.
Yoğun bir Transformer modelindeki parametrelerin çoğu FFN’de yaşar, dikkat mekanizmasında değil. Parametrelerin büyük bir kısmı ileri beslemeli katmanlarda bulunur.
Ve bu parametreler jenerik değildir. Modelin depolanan gerçek ve anlamsal yapısının çoğu burada yaşar. Araştırmacılar, FFN içindeki bazı nöronların belirli kavramlar veya gerçeklerle güçlü bir şekilde ilişkili olduğunu bulmuşlardır. Bir nöron Eyfel Kulesi ile ilgili metinlerde güçlü bir şekilde etkinleşebilir. Bir diğeri programlama dillerinde. Bir diğeri geçmiş zaman fiillerinde. Bir model ‘Paris’in Fransa’nın başkenti olduğunu’ bildiğinde, bu gerçek belirli katmanlardaki FFN ağırlıkları ve aktivasyonları boyunca temsil edilir.
Bu depolanmış bellek özelliği ilginç bir sonuca sahiptir. Araştırmacılar, eğitilmiş bir modeldeki bazı gerçekleri yeniden eğitmeden doğrudan nasıl düzenleyeceklerini bulmuşlardır. ROME (Rank-One Model Editing) gibi yöntemler, belirli bir FFN ağırlık matrisine hedeflenmiş düşük dereceli bir düzenleme yaparak ‘Eyfel Kulesi Paris’tedir’ ifadesini ‘Eyfel Kulesi Roma’dadır’ olarak değiştirebilir. Model daha sonra düzenlenmiş ilişkiyle tutarlı metinler üretme eğilimindedir.
Bazı modern öncü modeller, yoğun FFN’yi Uzmanlar Karışımı (Mixture of Experts – MoE) adı verilen bir şeyle değiştirmeye başlamıştır. Her katman için tek bir ileri beslemeli ağ yerine, modelin birçok paralel FFN’si (uzmanlar denir) ve her tokenı hangi uzmanların işleyeceğini seçen küçük bir yönlendirici ağı vardır. Mixtral 8x7B’de katman başına 8 uzman bulunur; herhangi bir token için sadece 2’si etkinleştirilir. Toplam parametre sayısı önemli ölçüde artar, ancak token başına hesaplama çok daha yavaş büyür çünkü sadece birkaç uzman çalışır. MoE, modelin birkaç ileri beslemeli ağı olduğu ve her tokenı bunlardan sadece birkaçı aracılığıyla yönlendirdiği anlamına gelir. Bu, çıkarım maliyetini orantılı olarak artırmadan parametre sayısını artırmanın yoludur.
Artık Akış ve Katman Normalizasyonu: Derin Ağların İstikrarı
Artık akış (residual stream), modeli ‘toplamalı’ (additive) hale getirir, ‘değiştirmeli’ (replacing) değil. Dikkat mekanizması çalıştıktan veya ileri beslemeli ağ çalıştıktan sonra, sonuç genellikle tokenın vektörünü değiştirmez. Bunun yerine, ona eklenir. Konum konum. Yeni vektör, eski vektör artı alt bloğun çıktısına eşittir. Bir artık bağlantı (residual connection), bir bloğun çıktısını başladığı vektöre geri ekler. Bu, bilgiye ve gradyanlara ağ boyunca bir kısayol sağlar.
Otuz, elli veya yüz katmanda, her katmanın katkısı, önceki vektörün üzerine yazmak yerine birikir. Bu çalışan toplamaya artık akış denir ve garip bir özelliği vardır: orijinal girdi embedding’leri, yol boyunca her alt bloğun katkısıyla karıştırılmış olarak, geç katmanlara hala doğrudan bir toplamsal yola sahiptir.
Artık bağlantılar Transformer’lar için icat edilmemiştir. ResNet’ten (He ve diğerleri, 2015), orijinal olarak görüntü tanıma için gelmişlerdir. Motivasyon, derin ağların eğitilmesinin imkansız olmasıydı. Eğitim sinyali, birçok katmandan geri döndüğünde çok zayıfladı (veya bazen çok güçlendi). Model kendi hatalarından gerçekten öğrenemiyordu. Bir kısayol yolu eklemek, sinyalin doğrudan çıktıdan girişe geri akmasına izin verdi. Birdenbire yüzlerce katmanı olan ağları eğitebildiniz. Transformer’lar aynı hileyi miras aldı.
Modern yorumlanabilirlik araştırmalarında, artık akış merkezi nesne haline gelmiştir. Her bileşen, her dikkat başlığı, her ileri beslemeli ağ, hatta sondaki unembedding adımı bile, artık akıştan okur ve ona geri yazar.
İkinci parça, katman normalizasyonu (layer normalization), çok daha pratik bir nedenle vardır. Onsuz, artık akış stabil kalmazdı. Düzinelerce eklemeyle akan sayılar ya yukarı doğru patlama ya da sıfıra doğru çökme eğilimindedir. Her iki durumda da eğitim başarısız olur. Katman normalizasyonu, her tokenın vektörünü alt bloklar arasında kontrollü bir aralığa geri ölçekler. Katman normalizasyonu, model eğitilirken sayıları stabil bir aralıkta kalacak şekilde bir token vektörünü yeniden boyutlandırır.
Orijinal 2017 Transformer, her alt bloktan SONRA normalizasyon uyguladı (post-norm). Bu, sığ modeller için işe yaradı, ancak derinlik arttıkça güvenilir bir şekilde eğitilmesi zorlaştı. Modern Transformer’lar (GPT-2’den itibaren, LLaMA, Mistral) genellikle her alt bloktan ÖNCE normalizasyon uygular (pre-norm). Bu, çok derin Transformer’ların eğitilmesini kolaylaştıran değişikliklerden biridir.
Fonksiyonun kendisi de değişti. Birçok modern açık model (LLaMA, Mistral, Gemma, Phi), RMSNorm adı verilen daha basit bir varyant kullanır. Orijinal katman normalizasyonu aynı anda iki şey yapıyordu: her vektörü sıfıra doğru kaydır, sonra sayıların boyutunu yeniden ölçekle. RMSNorm, kaydırma adımını bırakır ve yalnızca yeniden ölçeklemeyi korur. Ampirik olarak, yeniden ölçekleme faydanın çoğunu taşırken hesaplaması daha ucuzdur. RMSNorm, vektör boyutunu ortalamadan çıkarmadan yeniden ölçekleyen daha ucuz bir normalizasyon yöntemidir.
Bu, gösterişsiz makine yapısıdır. Artık bağlantılar olmadan, çok derin modelleri eğitmek çok daha zorlaşır. Katman normalizasyonu olmadan, çalışan toplam patlayabilir veya çökebilir. Her ikisiyle de, yüzlerce katman derinliğinde modeller elde edersiniz.
Bir Sonraki Tokenı Tahmin Etme: LLM’lerin Çıktı Üretimi
Tüm dikkat ve ileri beslemeli işlem katmanları bittikten sonra, modelin dizideki her token için bir vektörü vardır. Üretim sırasında, bir sonraki kelimeyi tahmin etmek için, yalnızca son tokenın nihai vektörünü alır.
Bu son vektör, olası her bir sonraki token için bir sayıya dönüştürülür. Kelime dağarcığında 100.000 token varsa, bu 100.000 sayıdır. Bu sayılara logit denir. Bunlar henüz olasılık değildir; herhangi bir boyutta, pozitif veya negatif olabilirler. Logitler, her olası bir sonraki token için ham puanlardır. Yalnızca softmax’tan sonra olasılığa dönüşürler.
Bir softmax, bu logitleri modelin olası bir sonraki tokenlar üzerindeki olasılık dağılımına dönüştürür. Öncekiyle aynı işlem, modelde farklı bir yer. Model genellikle her seferinde en yüksek olasılıklı tokenı seçmez. Çözme ayarları, çıktının ne kadar deterministik veya çeşitli olduğunu kontrol eder. Sıcaklık (temperature), dağılımın ne kadar keskin olduğunu değiştirir. Top-k ve top-p, seçimleri en mantıklı bir sonraki tokenlarla sınırlar. Bu nedenle aynı model, bir ayarda hassas, başka bir ayarda daha yaratıcı hissedebilir. Sıcaklık, örnekleme sırasında rastgeleliği kontrol eder. Düşük sıcaklık modeli daha muhafazakar yapar; yüksek sıcaklık daha çeşitli yapar.
Bir token seçildiğinde, girdiye eklenir. Model, daha uzun dizi üzerinde bir sonraki adımı çalıştırır, genellikle KV önbelleğini yeniden kullanarak tüm öneki baştan hesaplamaz. Yeni token için yeni dikkat. Yeni ileri besleme. Yeni nihai vektör. Yeni tahmin. Döngü, model bir dizi sonu tokenı yayana veya bir uzunluk sınırına ulaşana kadar devam eder. Bütün bir paragraf, bu döngü, birer birer tokenlarla yazılır.
Bir sonraki tokenı tahmin etme gibi tek hedef, bir temel LLM için çekirdek eğitim sinyalidir. Temel model, doğrudan olgusal doğruluk, konuşma yeteneği, akıl yürütme veya kodlama üzerine eğitilmez. Büyük miktarlarda metinde bir sonraki tokenı tahmin etmek üzere eğitilmiştir. Daha sonraki eğitim sonrası aşamalar, modeli talimatları takip etme, tercihler, güvenlik ve konuşma davranışları için ayarlayabilir.
Bilmeye değer önemli bir verimlilik yeniliği olmuştur: spekülatif çözümleme (speculative decoding). Küçük, hızlı bir model birkaç token ilerisini önerir. Büyük model bunları paralel olarak doğrular. Önerilen tokenlar, büyük modelin olasılıkları altında kabul edilirse, kabul edilirler. Değilse, büyük modele geri dönülür. Doğru yapılırsa, çıktı dağılımı yalnızca büyük modeli çalıştırmakla eşleşir, ancak döngü çok daha hızlı çalışabilir. Spekülatif çözümleme, bir taslak modeli kullanarak öne tahminler yapar, ardından daha büyük modelin birkaç tahmin edilen tokenı aynı anda doğrulamasını ister.
Bir sonraki token tahmin döngüsü, mimarinin en basit parçasıdır, ancak her şeyin çalışmasını sağlayan da budur.
Mimari ve Eğitilmiş Ağırlıklar: LLM’ler Arasındaki Farklar
Çekirdek mekanizmaları ele aldık: tokenlar, embedding’ler, konumsal kodlama, dikkat, çok kafalı dikkat, ileri beslemeli ağ, artık akış ve normalizasyon, ve çıktı tarafındaki bir sonraki token döngüsü. Bu, temel mimarinin tek geçişte özetidir.
Peki GPT, Claude, Gemini ve LLaMA arasındaki fark nedir? Kamuya açık ayrıntılar değişir ve özel modeller her mimari seçimi yayınlamaz. Ancak bu yazının kapsadığı düzeyde, genel olarak aynı Transformer ailesi tasarım alanında yer alırlar.
Çoğu modern Transformer tabanlı LLM, aynı geniş yapıyı kullanır: tokenizasyon, embedding’ler, konumsal kodlama, yığılmış Transformer katmanları (her biri çok kafalı dikkat ve ileri beslemeli ağ ile), artık akışlar, katman normalizasyonu ve bir sonraki token tahmini.
Modeller arasındaki farklılıklar şunlardır:
- Farklı eğitim verileri ve farklı ölçeklerde öğrenilen eğitilmiş ağırlıkların kendisi. Ağırlıklar, modelin içindeki öğrenilmiş sayılardır. Eğitim, model metni iyi tahmin edene kadar bu sayıları değiştirir.
- Yapılandırma: katman sayısı, kelime dağarcığı boyutu, başlık sayısı, parametre sayısı, MoE veya yoğun model.
- Eğitim sonrası işlemler: talimat ayarlaması, insan geri bildiriminden öğrenme, temel modelin üzerine uygulanan güvenlik kontrolleri.
2023-2025 ‘modern Transformer’ yığını, farklı ekipler bunlara bağımsız olarak ulaşsa da, birçok ciddi öncü ve açık ağırlıklı modelde ortak bir dizi seçim üzerinde yakınlaşmıştır. Pre-norm yerleşimi. RMSNorm. RoPE. SwiGLU. Gruplanmış Sorgu Dikkat. En büyük modellerde Uzmanlar Karışımı. Bunların hiçbiri bir kerede icat edilmedi. Orijinal 2017 tasarımının üzerine yaklaşık beş yıllık bir iyileştirme ile biriktiler.
Gelecek Perspektifleri
Transformer ailesi mimarileri etrafındaki yakınlaşma, makine öğrenimi tarihinde sıra dışıdır. Alanın ömrünün çoğu boyunca, her problemin kendi özel ağı vardı. Görüntü tanıma bir tür kullanırdı. Dil başka bir tür. Ses üçüncü bir tür. Görsel ve dil ekipleri yöntemleri zar zor paylaşırdı.
Şimdi Transformer tarzı modeller, dil, görüntü, ses ve multimodal sistemlerde karşımıza çıkıyor. Transformer, alanın büyük bir bölümünü absorbe etti.
Bu değişebilir. Mamba ve diğer durum uzayı modelleri, özellikle çok uzun diziler için güvenilir alternatiflerdir. Hibrit mimariler keşfediliyor. Uzmanlar Karışımı, beş yıl önce egzotik kabul edilecek şekillerde ‘mimari’nin ne anlama geldiğini sınırda zaten değiştirdi.
Ancak bu yazıda yer alan çekirdek mekanizmalar (tokenlar, embedding’ler, konumsal kodlama, dikkat, ileri beslemeli ağ, artık akış ve normalizasyon, ve bir sonraki token tahmini) dayanıklı kısımlardır. Mimari değişse bile, bunlar herhangi bir dizi modelinin bir şekilde çözmesi gereken sorunlardır.
Bu noktaya kadar geldiyseniz, birçok modern Transformer makalesini veya model kartını okuyabilir ve her bölümün hangi parçadan bahsettiğini anlayabilirsiniz. Hedefimiz buydu.

