Bu yazı LLM Davranışsal Bozulma Modları pillar’ının savunma playbook bileşenidir. Modları tek tek değil, onları yakalamak için kurulacak katmanları anlatıyor. Yapı modlardan değil savunma katmanlarından başlar; her katman için “hangi modları yakalar, hangilerini kaçırır” sorusuna analitik bir harita olarak cevap veriyor.
”Tamamlandı” Bir Sinyal Değil
LLM bozulma modlarının ortak teması: model “doğru yapıyorum” veya “tamamlandı” dediğinde, iddia tek başına güvenilir değildir.
- Hallucination: “Bu kütüphane şunu yapar” der, kütüphane yoktur.
- Sycophancy: “Haklısınız” der, doğru olduğu için değil, size katıldığı için.
- Instruction attenuation: “Doğruladım” der, doğrulamamıştır.
- Task drift: “Bug’ı düzelttim” der, orijinal bug’a dokunmamıştır.
- Alignment faking: “Bu isteği reddediyorum” der, yalnızca gözlem altında olduğu için.
Savunmanın temel ilkesini şöyle okuyorum: doğrulama, iddiayı değil çıktıyı kontrol etmek olmalı. Model ne derse desin, sonucu bağımsız olarak doğrulamak gerekir.
Doğal dille yazılmış talimatlar probabilistik kurallardır: model bunlara uyma olasılığı context’e, session uzunluğuna ve konuya göre değişir. Hook, linter, CI check, schema validator gibi deterministik kontroller her seferinde aynı şekilde çalışır. Gözlemlediğim projelerde probabilistik kurallar zamanla ceremonialize olma eğilimi gösteriyor; deterministik kontroller bu sorunu daha az yaşıyor. Çok katmanlı savunmanın iskeleti bu iki kural sınıfının iç içe geçmesidir.
Beş Katman
Savunma katmanlarını, çıktı üretiminden ileri doğru sıralıyorum:
| Katman | Rol | Tipik Teknikler |
|---|---|---|
| 0 — Prompt | Modelin davranışını yönlendir | Constraint repetition, Forget-Me-Not, metacognitive prompting, few-shot |
| 1 — Output Validation | Çıktıyı doğrula | CoVe, schema validation, regex, self-consistency, cross-model check |
| 2 — Agent Guardrails | Eylemi sınırla | Tool schema, least privilege, max step, dry-run, confirmation loop |
| 3 — Observability | Sistemi izle | Eval suite, prompt versioning, canary, log, repeat detection, drift monitoring |
| 4 — Human-in-the-Loop | İnsan kararı | Review, reject path, destructive action confirmation |
Tasarım niyeti şu: her katman kendinden öncekinin kaçırdığını yakalasın. Bu ampirik bir genelleme değil, çerçevenin varsayımı.
Layer 0: Prompt
Prompt katmanı tipik kurulumlarda en ucuz, en hızlı olan; benim deneyimimde aynı zamanda en kırılgan katman. Talimat uzun session’larda attenuation’a uğrar; ceremonialization modeli “yapmış gibi” gösterir. Ama iyi bir prompt, alt katmanlara gelen hatayı düşürür.
Uygulama kalıpları.
- Constraint repetition: kritik kısıtları birden fazla yerde tekrarla.
- Forget-Me-Not: uzun session’larda stratejik noktalarda tek cümlelik re-injection.
- Metacognitive prompting: beş aşamalı yapı (anla, ön yargı, eleştirel değerlendirme, karar, güven).
- Few-shot örnekler: pozitif ve negatif örneklerin birlikte kullanımı.
- Pre-commitment: “önce sen düşün, sonra benim görüşümü dinle”.
Yakaladığı modlar (tasarım yorumum). Hallucination (RAG instruction ile), sycophancy (pre-commitment, metacognitive), context rot (context engineering), mode collapse (multi-path reasoning), positional bias (bağımsız puanlama talimatı).
Kaçırdıkları (literatürdeki örüntülere bakarak). Instruction attenuation (prompt zamanla zayıflar, kendisini düzeltemez), reward hacking, alignment faking, version drift.
Detaylar: LLM Temel Bozulma Modları.
Layer 1: Output Validation
Model çıktısı üretildikten sonra, bir sonraki iş birimine aktarılmadan önce doğrulama. Layer 0’dan sızan hatayı yakalar.
Uygulama kalıpları.
- Chain-of-Verification (CoVe): Modelden doğrulama soruları ürettirip bağımsız yanıtlatmak, sonra revize ettirmek.
- Schema validation: Yapılandırılmış çıktı (JSON, YAML) şemaya karşı doğrulanır; uymayan çıktı reddedilir.
- Regex / format kontrolü: Beklenen format kontrolü (örneğin UUID, email, semver).
- Self-consistency: Aynı soruyu N kez sor, çoğunluk oylaması yap.
- Çapraz model doğrulama: Farklı eğitim verisiyle yetişmiş farklı modellerin çıktılarını karşılaştır.
- Semantic entropy: Tutarsız cevaplar confabulation işareti.
Yakaladığı modlar (analitik yorum). Hallucination, confabulation, parametre halüsinasyonu (tool invocation), mode collapse (self-consistency), positional bias (ensemble / cross-model).
Kaçırdıkları. Task drift (tek çıktıya bakıldığı için fark edilmez), reward hacking (ölçüt zaten proxy ise validation muhtemelen proxy’yi ölçer), alignment faking (model gözlem altında olduğunu bilir), version drift (tek ölçümde genellikle görünmez).
Layer 2: Agent Guardrails
Agent sistemleri çıktıyı eyleme dönüştürür. Gözlemlediğim sistemlerde geri alınamaz sonuçların yoğunlaştığı nokta burası. Guardrail’lar eylem uzayına hard limit koyar.
Uygulama kalıpları.
- Tool schema validation: Her tool çağrısı schema’ya karşı doğrulanır, geçersiz çağrı reddedilir.
- Least privilege: Modelin erişebildiği tool seti göreve özgü kısıtlanır.
- Max step limits: Agent loop’una hard limit; N adımı aşınca durdur ve özet talep et.
- Confirmation loop: Geri alınamaz eylemler (silme, gönderme, ödeme) için explicit onay.
- Dry-run mode: Eylem gerçekleştirilmeden önce “ne yapacağım” özeti.
- Tooling constraint: Modelin kullanabileceği tool’ları görev sözleşmesiyle daralt.
- Deterministik hook: Edit-guard, git pre-commit, lint hook gibi kontroller. AI Agent’lar Dosya Düzenlerken Neden Hata Yapar? yazısındaki edit-guard örneği bu katmanın tipik uygulamasıdır.
Yakaladığı modlar. Incorrect tool invocation, task drift (max step + goal anchoring), instruction attenuation (deterministik hook probabilistik kurala gerek bırakmaz), reward hacking (bazı kestirme yollar pratik olarak kapanıyor; “fiziksel olarak imkânsız” iddiası setup’a bağlı).
Kaçırdıkları. Alignment faking (model guardrail’ı gözlem olarak algılarsa), version drift (guardrail kural setinin kendisi model davranışına göre tasarlandı ise).
Detaylar: LLM Agent Seviyesi Bozulma Modları.
Layer 3: Observability
Çoğu bozulma modunun gözlemlenebilir erken uyarı sinyali var; ama hepsi için ölçüm rejimi kurmak kolay değil. Observability tek bir çıktıya değil zaman serisine bakar.
Uygulama kalıpları.
- Eval suite: Kritik kullanım senaryoları için otomatik değerlendirme test seti. Her model/prompt değişiminde çalıştırılır, regresyon tespit eder.
- Prompt versioning: Prompt’lar versiyon kontrolünde; hangi prompt’un hangi model versiyonuyla çalıştığını kaydet.
- Canary testing: Üretim trafiğinin küçük bir yüzdesini yeni versiyona yönlendir, davranış farkını izle.
- Drift monitoring: Çıktı dağılımında istatistiksel değişimi izle (ortalama uzunluk, token dağılımı, success rate).
- Repeat detection: N-gram tekrar oranı eşiği, degeneration loop erken uyarısı.
- CoT/scratchpad logging: Modelin iç muhakemesini kaydet; alignment faking sinyalleri için.
- Cross-session consistency check: Aynı girdi farklı session’larda farklı çıktı veriyor mu?
Yakaladığı modlar (pratikte ana tespit mekanizması olarak eval suite’i kullanıyorum). Version drift, degeneration loops (repeat detection), alignment faking (CoT log + behavioral probing, literatürdeki sandbox deneyleri bu yönü destekliyor), reward hacking (eval suite + gold standard), mode collapse (cross-session tutarlılık).
Kaçırdıkları. Rare failure (düşük frekanslı ama yüksek etkili hatalar; insan review gerekir), kasıtlı adversarial davranış (model observability’yi de oyuna katar).
Layer 4: Human-in-the-Loop
Benim çerçevemde son savunma hattı; pahalı ve yavaş olduğunu kabul ederek. İki tipik konum:
- Asenkron review: Yüksek etkili ama acil olmayan çıktı (PR, içerik, karar önerisi) insan gözünden geçer.
- Senkron confirmation: Geri alınamaz eylem (silme, ödeme, dış iletişim) öncesi explicit onay.
Uygulama kalıpları.
- Destructive action confirmation: Silme, force push, ödeme, dış mesajlaşma gibi eylemler için custom modal (browser
confirm()kullanmayın). - Risk-based routing: Düşük riskli çıktı otomatik, yüksek riskli çıktı insan onayına.
- Spot check + sampling: Her N’inci çıktıyı insan gözden geçirsin; sistemin kalite seviyesi örnekleme ile izlenir.
- Reject path: İnsanın “hayır” demesi kolay ve maliyetsiz olmalı; onay-default anti-pattern.
Yakaladığı modlar. Teorik olarak çoğunu yakalayabilir; pratikte volüm ve dikkat sınırlıyor (bu bir varsayım, ampirik ölçümüm yok). Alignment faking, reward hacking ve rare failure için şu an mevcut araçlarla en güvenilir katman olarak görüyorum.
Kaçırdıkları. Ölçek. Her çıktıya insan koyamazsınız; seçim stratejisi kritik.
Mod-Katman Matrisi
Hangi katman hangi modu yakalar? “Yakalar” = tipik konfigürasyonda ilk savunma hattı olabilir. Aşağıdaki matris benim analitik haritam; hücre etiketleri ampirik benchmark değil, tasarım heuristic’i.
| Mod | L0 Prompt | L1 Output | L2 Agent | L3 Obs. | L4 Human |
|---|---|---|---|---|---|
| Hallucination | ○ | ● | — | ○ | ● |
| Sycophancy | ● | ○ | — | ○ | ● |
| Context Rot | ● | — | — | ○ | — |
| Instruction Attenuation | ○ | — | ● | ○ | — |
| Task Drift | ○ | — | ● | ○ | ● |
| Incorrect Tool Invocation | — | ○ | ● | ○ | ● |
| Reward Hacking | — | ○ | ○ | ● | ● |
| Positional Bias | ○ | ● | — | ○ | ○ |
| Mode Collapse | ○ | ● | — | ○ | — |
| Degeneration Loops | ○ | ● | — | ● | — |
| Alignment Faking | — | — | — | ● | ● |
| Version Drift | — | — | — | ● | ○ |
● = birincil savunma, ○ = yardımcı katkı, — = genellikle etkisiz.
Her bozulma için en az iki ”●” veya ”●+○” kombinasyonu hedefleyin. Defense-in-depth literatüründeki (NIST AI RMF, OWASP LLM Top 10) ortak çıkarımla uyumlu: tek katmanla yetinmek, o katman kırıldığında açık bırakır.
Pratik Minimal Kurulum
Solo bir geliştiriciyseniz ve yalnızca temel savunmayı kurmak istiyorsanız, benim kullandığım minimum set bu; ölçtüğüm formal bir kapsama oranı yok, ANALYTICAL bir öneri:
- L0: CLAUDE.md / system prompt’ta net kısıtlar + Forget-Me-Not re-injection noktaları.
- L1: JSON/YAML çıktıları için schema validation + en az bir kritik alanda self-consistency.
- L2: Edit-guard hook veya eşdeğer pre-commit kontrol + tool schema.
- L3: Kritik senaryolar için 10-20 örneklik eval suite + canary.
- L4: Geri alınamaz eylem listesi + her biri için custom confirmation modal.
Bu beş adımı pas geçen projeler tipik olarak modelin “tamamlandı” iddiasına şu ya da bu noktada güvenmek zorunda kalıyor (gözlemlediğim setup’larda). Bu güveni mühendislik disiplinine çevirmenin yolu, katmanları çoğaltmaktan geçiyor.
Sırada
Bu playbook cluster’ı savunma tarafından kapatır. Modlara farklı bir açıdan dönmek için:
| Nereye | Ne için |
|---|---|
| Pillar: LLM Davranışsal Bozulma Modları | 12-mod haritası ve temel/agent seviyeleri arasındaki yörünge (5 dk) |
| LLM Temel Bozulma Modları | Tek promptta görünen 4 mod; Layer 0 ve Layer 1 derin analiz (10 dk) |
İlgili pratik yazılar:
- Decision Gate: Vibe Coding’in Eksik Parçası
- AI Agent’lar Dosya Düzenlerken Neden Hata Yapar?
- AI Destekli Codebase Audit
- 01 Modelin 'tamamlandı' demesi tek başına bir sinyal değil; savunmanın temel ilkesini şöyle okuyorum: doğrulama iddiayı değil çıktıyı kontrol etmek olmalı
- 02 Gözlemlediğim kurulumlarda her katmanın yakaladığı ve kaçırdığı mod kümesi farklı; tek katmanın yetmediği örüntüsü tekrarlıyor
- 03 Probabilistik kurallar (prompt) zamanla ceremonialize olma eğiliminde; deterministik kontroller (hook, schema, CI) bu sorunu daha az yaşıyor
- 04 Benim setup'ımda version drift için en güvenilir erken uyarı eval suite gibi görünüyor
- 05 Human-in-the-loop pahalı ve yavaş; geri alınamaz eylemlerde pratik olarak son savunma hattı olarak görüyorum