Üretken Yapay Zekâ (Generative AI) Nedir?
Yapay Zekâ (AI), makinelerin insan davranışlarını taklit etmesini sağlayan bir teknolojidir. Makine öğrenmesi sayesinde çevresiyle etkileşime girerek, kendisine verilen görevleri açık talimatlar olmadan yerine getirebilir.
Üretken Yapay Zekâ (Generative AI) Nedir?
Üretken Yapay Zekâ ise yapay zekânın orijinal içerik oluşturabilen özel bir alanıdır. Günlük hayatımızda en çok sohbet botları ve asistanlar aracılığıyla bu teknolojiyle karşılaşırız. Örneğin, Microsoft Copilot gibi yapay zekâ destekli araçlar, çalışma deneyiminizi geliştirmek için size gerçek zamanlı destek ve öneriler sunar.
Üretken yapay zekâ uygulamaları, doğal dilde verilen komutları anlayarak uygun yanıtlar üretir. Bu yanıtlar; yazılı metin, görsel, kod veya farklı formatlarda olabilir.
Doğal Dil Üretimi (Natural Language Generation)
Örneğin, Copilot yapay zeka aracı ile “Tarih bölümünden mezun biri için bir ön yazı hazırla.” prompt’u ile bir talepte bulunabilirsiniz. Üretken yapay zekâ bu isteğe şu şekilde yanıt verebilir:
“Sayın İK Yetkilisi,
Bu ön yazıyla [iş ilanında belirtilen pozisyon] pozisyonuna başvurmak istediğimi belirtmek istiyorum…”

Bu teknoloji, içerik üretimini kolaylaştırarak hem bireylerin hem de işletmelerin işlerini hızlandırmasına yardımcı olur.
Görsel Üretimi (Image Generation)
Bazı üretken yapay zekâ uygulamaları, doğal dilde verilen komutları anlayarak buna uygun görseller oluşturabilir.
Örneğin, “Bir çiçekçi dükkânı için minimalist bir logo tasarla.” şeklinde bir istekte bulunabilirsiniz.
Üretken yapay zekâ, verdiğiniz tanıma uygun olarak tamamen yeni ve orijinal bir görsel oluşturarak size sunabilir. Bu sayede, tasarım konusunda uzman olmasanız bile yaratıcı fikirlerinizi hayata geçirebilirsiniz.

Kod Üretimi (Code Generation)
Bazı üretken yapay zekâ uygulamaları, yazılım geliştiricilere kod yazma konusunda yardımcı olmak için tasarlanmıştır.
Örneğin, “İki sayıyı toplayan bir Python kodu yaz.” şeklinde bir istekte bulunabilirsiniz.
Bu durumda, yapay zekâ size şu şekilde bir kod sunabilir:
def topla(a, b):
return a + b
sonuc = topla(5, 3)
print(sonuc) # Çıktı: 8
Dil Modelleri Nedir?
Üretken yapay zekâ uygulamaları, dil modelleri adı verilen özel makine öğrenimi modelleri sayesinde çalışır. Bu modeller, doğal dil işleme (NLP) görevlerini yerine getirmek için kullanılır. Örneğin:
- Metinleri duygu analizi yaparak sınıflandırabilir.
- Uzun metinleri özetleyebilir.
- Farklı kaynaklardaki metinleri anlam açısından karşılaştırabilir.
- Yeni, anlamlı cümleler üretebilir.
Dil modellerinin arkasındaki matematiksel prensipler oldukça karmaşık olabilir. Ancak, temel çalışma mantığını anlamak, nasıl çalıştıkları konusunda genel bir fikir edinmenizi sağlar.
Transformer Modelleri
Doğal dil işleme için kullanılan makine öğrenimi modelleri yıllar içinde büyük gelişim gösterdi. Günümüzde en gelişmiş dil modelleri, transformer adı verilen bir mimari üzerine inşa edilir. Transformer modeli, kelimeler arasındaki anlam ilişkilerini öğrenerek mantıklı metinler oluşturabilen bir sistemdir.
Bu modeller, büyük miktarda metinle eğitilir ve kelimeler arasındaki anlam bağlantılarını temsil eden matematiksel yapılar oluşturur. Bu sayede, girdiye uygun ve doğal görünen yeni metinler üretebilirler.
Transformer mimarisi iki temel bileşenden oluşur:
- Encoder (Kodlayıcı): Metinleri anlamlandırarak kelimeler arasındaki ilişkileri belirler.
- Decoder (Çözücü): Bu anlam ilişkilerini kullanarak yeni ve mantıklı cümleler oluşturur.

Bir transformer modeli eğitilirken büyük miktarda metin verisi kullanılır. Metinler küçük parçalara, yani token’lara (kelimeler veya kelime grupları) ayrılır. Encoder bu token’lar arasındaki ilişkileri analiz eder ve her bir kelimenin anlamını bir vektör (sayısal temsil) haline getirir. Decoder ise bu anlam ilişkilerini kullanarak mantıklı cümleler üretir.
Örneğin, modele “Benim köpeğim çok” şeklinde bir giriş verirseniz, transformer modeli bu cümlenin anlamını analiz eder ve “oyuncuydu” gibi mantıklı bir tamamlamayla yanıt verebilir.
Farklı transformer modelleri, farklı bileşenler kullanarak çalışır:
- BERT (Bidirectional Encoder Representations from Transformers): Google tarafından geliştirilen ve yalnızca encoder bloğunu kullanan bir modeldir. Arama motoru gibi görevlerde kullanılır.
- GPT (Generative Pretrained Transformer): OpenAI tarafından geliştirilen ve yalnızca decoder bloğunu kullanan bir modeldir. Yeni metin üretmeye odaklanır.
Transformer modelleri, üretken yapay zekânın en önemli parçalarından biridir. Bu modellerin nasıl çalıştığını anlamak, yapay zekâ ile üretilen içeriklerin mantığını kavramanıza yardımcı olur.
Tokenization Nedir?
Bir transformer modelinin eğitilmesindeki ilk adım, metni token adı verilen küçük parçalara ayırmaktır. Daha basit bir şekilde söylemek gerekirse, her benzersiz kelime veya kelime parçası bir token olarak kabul edilir.
Genellikle token’lar, kelimeleri tek tek ayırarak oluşturulur. Ancak, bazı durumlarda kelimenin yalnızca bir kısmı ya da noktalama işaretleriyle birlikte bir bütün olarak da token haline getirilebilir.
Örneğin, şu cümleyi ele alalım:
“Bir köpek yüksek sesle havladı.”
Bu cümleyi token’lara ayırırsak, her kelimeye bir token ID atanabilir:
- Bir (1)
- köpek (2)
- yüksek (3)
- sesle (4)
- havladı (5)
Eğer cümlede aynı kelime tekrar ederse, ona yeni bir token atanmaz; daha önce verilen ID kullanılır. Örneğin, “Bir kedi ve bir köpek gördüm.” cümlesinde “bir” kelimesi zaten token’landığı için tekrar numaralandırılmaz.
Tokenization, yapay zekânın metni anlamlandırabilmesi için önemli bir adımdır. Bu sayede model, kelimeler arasındaki ilişkileri daha iyi öğrenebilir ve anlamlı metinler üretebilir.
Gömülü Temsiller (Embeddings) Nedir?
Bir kelimeyi sadece bir kimlik numarası (ID) ile temsil etmek, onu bir dizin gibi düzenlememizi sağlar; ancak bu, kelimenin anlamı veya diğer kelimelerle ilişkisi hakkında bize pek bir şey söylemez. İşte bu noktada gömülü temsiller (embeddings) devreye girer.
Embeddings, kelimelerin anlam ilişkilerini daha iyi temsil edebilmek için kullanılan sayısal vektörlerdir. Örneğin, bir kelimenin gömülü temsili şöyle bir vektör olabilir: [10, 3, 1]. Buradaki her sayı, kelimenin belirli bir anlam özelliğini ifade eder. Modelin eğitimi sırasında, kelimelerin hangi bağlamlarda birlikte kullanıldığı analiz edilerek bu vektörler belirlenir.
Vektörler ve Çok Boyutlu Uzay
Vektörler, çok boyutlu bir uzayda yön ve mesafe belirten çizgiler olarak düşünülebilir. Matematikle ilgilenen arkadaşlarınızı etkilemek isterseniz, bu kavramları genlik (amplitude) ve büyüklük (magnitude) olarak adlandırabilirsiniz.
Bir vektör, bir kelimenin anlamını temsil eden bir yol gibidir. Örneğin, üç elemanlı bir vektör, üç boyutlu bir uzayda bir noktadan diğerine olan hareketi gösterir:
- İleri/Geri (x ekseni)
- Sağa/Sola (y ekseni)
- Yukarı/Aşağı (z ekseni)
Her kelimenin gömülü temsili, bu uzayda bir yön ve mesafe ile ifade edilir. Anlam olarak birbirine yakın kelimeler, bu uzayda benzer yönlere sahip olur.
Kelimeler Arasındaki Anlam Benzerliği
Gömülü temsillerin en önemli avantajlarından biri, benzer kelimelerin benzer yönlere sahip vektörlerle temsil edilmesidir. Örneğin:
- “köpek” → [10, 3, 2]
- “kedi” → [10, 3, 1]
- “yavru köpek” → [5, 2, 1]
- “kaykay” → [-3, 3, 2]
Bu vektörleri üç boyutlu bir grafikte gösterdiğimizde, “köpek” ve “kedi” gibi anlamca yakın kelimeler benzer yönlere işaret ederken, “kaykay” gibi alakasız bir kelime bambaşka bir yönde olacaktır.

Kelime vektörleri arasındaki benzerliği ölçmek için kosinüs benzerliği adı verilen bir yöntem kullanılır. Bu yöntem, vektörlerin uzunluğunu değil, yönlerini karşılaştırarak iki kelimenin ne kadar benzer olduğunu belirler.
“Köpek” ve “yavru köpek” kelimelerinin vektörleri, neredeyse aynı yönde bir yolu tarif eder. Benzer şekilde, “kedi” kelimesinin vektörü de bu ikisine oldukça yakındır. Ancak, “kaykay” kelimesinin vektörü tamamen farklı bir yönü gösterir.
Bu durum, anlam olarak yakın kelimelerin çok boyutlu uzayda birbirine benzer yönlerde yer aldığını, alakasız kelimelerin ise farklı yönlere dağıldığını gösterir.
🚀 NOT: Yukarıdaki örnek, yalnızca üç boyutlu bir model üzerinden anlatılmıştır. Gerçek dil modelleri çok daha fazla boyuta sahiptir ve kelimeleri çok daha hassas bir şekilde temsil eder.
Bir kelime kümesi için uygun gömülü temsiller oluşturmanın birden fazla yolu vardır. Bunlardan bazıları:
- Word2Vec gibi dil modelleme algoritmaları
- Transformer modellerindeki encoder bloğu
Bu yöntemler, kelimeler arasındaki anlam ilişkilerini belirleyerek yapay zekânın daha doğal ve tutarlı metinler üretmesini sağlar.
Sonuç olarak, gömülü temsiller, yapay zekânın kelimeler arasındaki anlam ilişkilerini anlamasına ve mantıklı metinler üretmesine yardımcı olan güçlü bir tekniktir.
Dikkat Mekanizması (Attention) Nedir?
Bir transformer modelinde, encoder (kodlayıcı) ve decoder (çözücü) blokları, modeli oluşturan sinir ağı katmanlarından meydana gelir. Bu katmanların tamamını detaylıca incelememize gerek yok, ancak her iki blokta da kullanılan önemli bir katman türü vardır: dikkat (attention) katmanları.
Dikkat mekanizması, bir metindeki kelimeler (token’lar) arasındaki ilişkilerin gücünü ölçmeye çalışan bir tekniktir. Özellikle kendi kendine dikkat (self-attention) yöntemi, bir kelimenin çevresindeki diğer kelimelerden nasıl etkilendiğini analiz eder.
Encoder, her kelimeyi bağlam içinde değerlendirerek ona uygun bir gömülü temsil (embedding) oluşturur. Bu temsiller, kelimenin sıkça birlikte kullanıldığı diğer kelimelerle olan ilişkisine göre belirlenir.
Bu yöntem sayesinde, aynı kelime farklı bağlamlarda farklı anlamlar kazanabilir. Örneğin:
- “Ağacın kabuğu” (The bark of a tree)
- “Bir köpeğin havlamasını duydum” (I heard a dog bark)
Burada “bark” kelimesi farklı anlamlarda kullanıldığı için, model bunları farklı vektörler olarak temsil eder.
Decoder, bir cümlenin devamını tahmin etmek için dikkat mekanizmasını kullanır. Her yeni kelime üretilirken, model daha önce oluşturduğu kelimeleri dikkate alır ve hangi kelimelerin en önemli olduğunu belirler.
Örneğin, “Bir köpek duydum” (I heard a dog) dizisi verildiğinde, dikkat katmanı “duydum” (heard) ve “köpek” (dog) kelimelerine daha fazla ağırlık verebilir ve cümleyi tamamlamak için “havladı” (bark) kelimesini tahmin edebilir:
📌 I heard a dog {bark}
Burada dikkat katmanı aslında kelimelerin kendisiyle değil, onların sayısal vektör temsilleriyle çalışır.
Dikkat Mekanizmasının Çalışma Prensibi
Decoder, bir cümleyi tamamlamak için önceki kelimelerin vektör temsillerini işler ve bunlara bir konum bilgisi (positional encoding) ekler. Örneğin:
- [1, 5, 6, 2] → (I)
- [2, 9, 3, 1] → (heard)
- [3, 1, 1, 2] → (a)
- [4, 10, 3, 2] → (dog)
Eğitim sırasında model, bu kelimelerin vektörlerine dikkat skorları atayarak, bir sonraki kelimenin ne olabileceğini hesaplar.
Çoklu Dikkat (Multi-Head Attention) ve Sinir Ağları
Gerçek hayatta dikkat mekanizması, tek bir dikkat skoruna bağlı kalmaz. Çoklu dikkat (multi-head attention) yöntemi, farklı vektör bileşenleri üzerinden birden fazla dikkat skoru hesaplar. Sonrasında bir sinir ağı, tüm olası kelimeleri değerlendirerek en mantıklı olanı seçer.
Bu işlem, her yeni kelime tahmini için tekrar edilir ve model, cümleyi adım adım inşa eder.
Özetle, dikkat mekanizması sayesinde model, hangi kelimelerin birbirini nasıl etkilediğini analiz eder ve anlamlı, doğal görünen metinler üretir.