Mert Özen Her Satırda Daha İleri

Blog

Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.

Seriler
20 yazı bulundu
LLM API'lerinin Evrimi: Completions'tan Tool Calling, Structured Outputs ve MCP'ye
Yapay Zeka SERİ 20

LLM API'lerinin Evrimi: Completions'tan Tool Calling, Structured Outputs ve MCP'ye

Metni sürdüren ilk API'den chat biçimine, function calling'den JSON mode ve structured outputs'a, reasoning parametrelerinden Model Context Protocol'e ve agent'lara kadar LLM API'lerinin doğrulanmış tarihlerle evrimi. Her adımın serideki hangi örneğe karşılık geldiğini görüyor ve serinin sonunda sıradaki yapay zeka serilerine köprü kuruyoruz.

6 Kas 2026 7 dk 17
2023'ten Bugüne LLM'ler: Open-Weight Modeller, Uzun Context ve Reasoning
Yapay Zeka SERİ 19

2023'ten Bugüne LLM'ler: Open-Weight Modeller, Uzun Context ve Reasoning

GPT-4'ten bugüne LLM dünyasının doğrulanmış tarihlerle özeti: Llama, Mistral, Qwen ve Gemma ile open-weight modellerin yükselişi, context window'un 2.048 token'dan milyon token'a büyümesi, görüntü okuyan modeller ve o1, DeepSeek-R1 ile gelen reasoning modelleri. Open-weight ile açık kaynak farkını ve neden bir model sıralaması vermediğimizi de konuşuyoruz.

6 Kas 2026 6 dk 17
Transformer'dan ChatGPT'ye: LLM'lerin Doğuşu (2017–2022)
Yapay Zeka SERİ 18

Transformer'dan ChatGPT'ye: LLM'lerin Doğuşu (2017–2022)

2017'deki "Attention Is All You Need" makalesinden ChatGPT'nin çıkışına kadar bugünkü LLM'leri mümkün kılan adımlar: Transformer, GPT-1 ve BERT ile pre-training, GPT-2'nin aşamalı yayını, ölçeklenme yasaları ve GPT-3, InstructGPT ve RLHF. Her adımın serideki hangi kavramın kökü olduğunu ve geliştirici için ne değiştirdiğini görüyoruz.

6 Kas 2026 7 dk 14
Sağlayıcıdan Bağımsız LLM Kodu: IChatClient, OpenAI Uyumlu /v1 ve DI
Yapay Zeka SERİ 17

Sağlayıcıdan Bağımsız LLM Kodu: IChatClient, OpenAI Uyumlu /v1 ve DI

IChatClient abstraction'ıyla aynı kodu Ollama'nın kendi API'si ve OpenAI uyumlu /v1 endpoint'i üzerinden çalıştırıyor, sağlayıcıyı configuration'dan ve ortam değişkeniyle değiştiriyoruz. ASP.NET Core minimal API'ye DI ile bağlıyor, API anahtarlarını user secrets ve ortam değişkenleriyle saklıyor, TypeScript'te openai paketiyle aynı fikri kuruyor ve abstraction'ın sınırlarına bakıyoruz.

6 Kas 2026 10 dk 19
LLM Maliyeti, Latency ve Model Seçimi: Token'dan Faturaya
Yapay Zeka SERİ 16

LLM Maliyeti, Latency ve Model Seçimi: Token'dan Faturaya

Token sayısından istek başına ve aylık maliyeti hesaplıyor, latency'yi yükleme, girdi işleme ve çıktı üretimi olarak üçe ayırıyoruz. gemma3:4b ile 12b'yi gerçek tokens/s ölçümüyle karşılaştırıyor, Q4_K_M'nin ne demek olduğunu tensor tiplerine bakarak görüyor, Microsoft.Extensions.AI ile cevapları cache'liyor ve yerel ile bulut arasındaki kararı tartışıyoruz.

6 Kas 2026 12 dk 16
LLM Halüsinasyonu ve Güvenilirlik: Kaynak Göster, Doğrula, Ölç
Yapay Zeka SERİ 15

LLM Halüsinasyonu ve Güvenilirlik: Kaynak Göster, Doğrula, Ölç

gemma3:4b'ye var olmayan bir romanın yazarını sorunca kendinden emin bir ad ve yıl uydurdu. Halüsinasyonun neden olduğuna bakıyor, cevabı structured output ile kaynak göstermeye zorluyor, kaynakları kodla doğruluyor ve on soruluk bir golden set ile üç yaklaşımı sayılarla karşılaştırıyoruz.

6 Kas 2026 17 dk 18
LLM ve RAG: Modelin Bilmediği Veriyle Cevap Vermek
Yapay Zeka SERİ 14

LLM ve RAG: Modelin Bilmediği Veriyle Cevap Vermek

gemma3:4b'ye kitapçının iade süresini sorunca kendinden emin bir şekilde 30 gün dedi; doğrusu 21. Politikaları chunk'lara bölüyor, nomic-embed-text ile indeksliyor, en yakın chunk'ları prompt'a koyuyor ve modele context'te olmayanı bilmediğini söyletiyoruz. C#'ta bellekte minimal bir RAG ve sınırları.

6 Kas 2026 11 dk 14
LLM'lerde Embedding ve Benzerlik: Metni Anlamına Göre Aramak
Yapay Zeka SERİ 13

LLM'lerde Embedding ve Benzerlik: Metni Anlamına Göre Aramak

Embedding nedir, cosine similarity nasıl hesaplanır? nomic-embed-text ile 768 boyutlu vector'ler üretiyor, C# ve TypeScript'te elle cosine similarity yazıyor, bellekte küçük bir semantic search kurup keyword aramasıyla karşılaştırıyoruz. Olumsuz cümle tuzağı ve Türkçe sorgularla sınırlar gerçek puanlarla.

6 Kas 2026 13 dk 15
LLM Tool Calling (2): Microsoft.Extensions.AI ve Güvenli Tool'lar
Yapay Zeka SERİ 12

LLM Tool Calling (2): Microsoft.Extensions.AI ve Güvenli Tool'lar

Tool döngüsünü UseFunctionInvocation ve AIFunctionFactory'ye devrediyor, sonra asıl soruya geçiyoruz: modelin istediği her çağrı çalışmalı mı? Yetkiyi session'dan almak, veri değiştiren tool'lara onay, Zod ile argüman doğrulama ve modelin uydurduğu argümanlar gerçek qwen3:4b çıktılarıyla.

6 Kas 2026 13 dk 17
LLM Tool Calling (1): Model Fonksiyon Çağırmaz, Çağrı İster
Yapay Zeka SERİ 11

LLM Tool Calling (1): Model Fonksiyon Çağırmaz, Çağrı İster

Tool calling'de model hiçbir fonksiyonu çalıştırmaz; bir çağrı isteği üretir, çalıştırmak senin koduna kalır. Ollama'nın /api/chat endpoint'ine qwen3:4b ile ham tools isteği atıyor, sonucu tool rolüyle geri gönderiyor, döngüyü TypeScript'te ve paketsiz C#'ta kuruyoruz.

6 Kas 2026 12 dk 13
LLM ile Structured Output: JSON Mode, JSON Schema ve GetResponseAsync<T>
Yapay Zeka SERİ 10

LLM ile Structured Output: JSON Mode, JSON Schema ve GetResponseAsync<T>

Serbest metni regex ile parse etmenin neden kırıldığını, JSON mode'un neden yetmediğini ve JSON schema'nın biçimi nasıl sabitlediğini görüyoruz. TypeScript'te Zod, C#'ta GetResponseAsync<T> kullanıyor, schema'ya uyan ama yanlış bir cevabı yakalıyor ve iki katmanlı doğrulama kuruyoruz.

6 Kas 2026 11 dk 13
LLM için Prompt Yazmak (2): Adım Adım Düşündürmek ve Reasoning Modelleri
Yapay Zeka SERİ 09

LLM için Prompt Yazmak (2): Adım Adım Düşündürmek ve Reasoning Modelleri

Adım adım düşün demek doğru cevabı garanti eder mi? Tuzaklı bir sipariş hesabını gemma3:4b'ye üç biçimde soruyor, qwen3:4b'nin think parametresiyle düşünmeyi cevaptan ayırıyor, C#'ta ReasoningOptions kullanıyor ve düşünmenin token ile süre olarak bedelini ölçüyoruz.

6 Kas 2026 11 dk 16
Blog Haritası