Bağlam Mühendisliği Nedir?
Bağlam mühendisliği, bir yapay zekâ modelinin yanıt üretmeden önce hangi bilgileri göreceğine karar veren sistemleri tasarlama uygulamasıdır.
Terim yeni olsa da, bağlam mühendisliğinin arkasındaki ilkeler epey zamandır var. Bu yeni soyutlama, yapay zekâ sistemlerine girip çıkan bilgi akışını tasarlamanın en temel ve sürekli sorununu düşünmemize olanak tanır.
Tek tek istekler için kusursuz istemler yazmak yerine, birden çok kaynaktan ilgili ayrıntıları toplayıp modelin bağlam penceresinde düzenleyen sistemler oluşturursunuz. Bu, sisteminizin sohbet geçmişini, kullanıcı verilerini, harici belgeleri ve mevcut araçları bir araya getirip modeli bunlarla çalışabilecek şekilde biçimlendirmesi anlamına gelir.

Kaynak: 12-factor-agents
Bu yaklaşım, tam bağlamı oluşturan birkaç farklı bilgi türünü yönetmeyi gerektirir:
- Davranışı ve kuralları belirleyen sistem talimatları
- Sohbet geçmişi ve kullanıcı tercihleri
- Belgelerden veya veritabanlarından getirilen bilgiler
- Mevcut araçlar ve tanımları
- Yapılandırılmış çıktı formatları ve şemalar
- Gerçek zamanlı veriler ve harici API yanıtları
Temel zorluk, bağlam penceresinin sınırlamaları içinde çalışırken zaman içinde tutarlı sohbetleri sürdürmektir. Sisteminizin her istek için en ilgili olanı seçmesi gerekir; bu da genellikle ihtiyaç duyduğunuz anda doğru ayrıntıları bulacak getirme sistemleri kurmak anlamına gelir.
Bu, hem kısa vadeli sohbet akışını hem de uzun vadeli kullanıcı tercihlerini izleyen bellek sistemleri oluşturmayı ve güncel ihtiyaçlara yer açmak için eski bilgileri kaldırmayı içerir.
Asıl fayda, farklı bağlam türleri birlikte çalışarak daha akıllı ve farkında görünen yapay zekâ sistemleri oluşturduğunda ortaya çıkar. Yapay zekâ asistanınız önceki konuşmalara atıfta bulunabildiğinde, takviminize erişebildiğinde ve iletişim tarzınızı aynı anda anlayabildiğinde, etkileşimler tekrarlı olmaktan çıkar ve sizi hatırlayan biriyle çalışıyormuşsunuz gibi hissettirmeye başlar.
Bağlam Mühendisliği ve İstem Mühendisliği
ChatGPT'ye “profesyonel bir e-posta yaz” derseniz, bu istem mühendisliğidir — tek bir görev için talimat yazarsınız. Ancak önceki destek taleplerini hatırlaması, kullanıcı hesap ayrıntılarına erişmesi ve birden çok etkileşim boyunca sohbet geçmişini koruması gereken bir müşteri hizmetleri botu oluşturuyorsanız, bu bağlam mühendisliğidir.
Andrej Karpathy bunu iyi açıklar:
İnsanlar istemleri, günlük kullanımınızda bir BBA'ya vereceğiniz kısa görev tanımlarıyla ilişkilendirir. Oysa endüstri ölçüsünde her BBA uygulamasında, bağlam mühendisliği bir sonraki adım için bağlam penceresini tam da doğru bilgilerle doldurma işinin hassas bir sanat ve bilimidir.
Çoğu yapay zekâ uygulaması hem istem mühendisliğini hem de bağlam mühendisliğini kullanır. Bağlam mühendisliği sisteminizin içinde yine de iyi yazılmış istemlere ihtiyaç vardır. Fark şu ki bu istemler artık her seferinde sıfırdan başlamaktansa dikkatle yönetilen arka plan bilgileriyle birlikte çalışır.
|
Yaklaşım |
En İyi Kullanım Alanı |
|
İstem Mühendisliği |
Tek seferlik görevler, içerik üretimi, format-özgü çıktılar |
|
Bağlam Mühendisliği |
Sohbet tabanlı yapay zekâ, belge analiz araçları, kodlama asistanları |
|
Her İkisi Birlikte |
Tutarlı ve güvenilir performans gerektiren üretim yapay zekâ uygulamaları |
Uygulamada Bağlam Mühendisliği
Bağlam mühendisliği, yapay zekâ uygulamaları geliştirmeye başladığınızda ve bu uygulamaların karmaşık, birbirine bağlı bilgilerle çalışması gerektiğinde teoriden gerçeğe dönüşür. Önceki destek biletlerine erişmesi, hesap durumunu kontrol etmesi ve ürün belgelerine atıfta bulunması gereken, aynı zamanda yardımcı bir sohbet tonu koruyan bir müşteri hizmetleri botunu düşünün. İşte geleneksel istemlemenin tıkandığı, bağlam mühendisliğinin ise gerekli hâle geldiği yer burasıdır.
RAG sistemleri
Bağlam mühendisliği, muhtemelen getirim artırımlı üretim (RAG) sistemleriyle başladı. RAG, BBA'lara özgün eğitim verilerinin parçası olmayan bilgileri tanıtmanıza imkân veren ilk tekniklerden biriydi.
RAG sistemleri, bilgileri daha etkili biçimde düzenlemek ve sunmak için gelişmiş bağlam mühendisliği teknikleri kullanır. Belgeleri anlamlı parçalara böler, bilgileri ilgililik düzeyine göre sıralar ve en faydalı ayrıntıları belirteç sınırları içine sığdırır.
RAG'den önce, yapay zekânın şirketinizin dahili belgeleri hakkında soruları yanıtlamasını istiyorsanız tüm modeli yeniden eğitmeniz veya ince ayar yapmanız gerekirdi. RAG, belgelerinizde arama yapabilen, ilgili parçaları bulabilen ve bunları sorunuzun yanında bağlam penceresine ekleyebilen sistemler kurarak bunu değiştirdi.
Bu sayede BBA'lar, normalde bir insanın yüzlerce sayfayı okumasını gerektiren karmaşık soruları yanıtlamak için birden fazla belgeyi ve kaynağı aniden analiz edebilir hâle geldi.
Yapay zekâ ajanları
RAG sistemleri dış bilgilerin kapısını araladı; yapay zekâ ajanları ise bağlamı dinamik ve tepkisel hâle getirerek bunu bir adım öteye taşıdı. Ajanlar, yalnızca statik belgeleri getirmek yerine, sohbet sırasında harici araçlar kullanır.
Yapay zekâ, mevcut sorunu en iyi hangi aracın çözeceğine karar verir. Bir ajan bir sohbet başlatabilir, güncel hisse verilerine ihtiyaç duyduğunu fark edebilir, bir finansal API çağırabilir ve ardından bu taze bilgiyi kullanarak sohbete devam edebilir.
BBA belirteç maliyetlerinin düşmesi çoklu ajan sistemlerini de mümkün kıldı. Her şeyi tek bir modelin bağlam penceresine sığdırmak yerine, bir sorunun farklı yönlerini ele alan uzmanlaşmış ajanlara sahip olabilir ve aralarında A2A veya MCP gibi protokollerle bilgi paylaşabilirsiniz.
Yapay zekâ ajanları hakkında daha fazla bilgi için şu yapay zekâ ajanları kılavuz özetini inceleyin.
Yapay zekâ kodlama asistanları
Cursor veya Windsurf gibi yapay zekâ kodlama asistanları, hem RAG hem de ajan ilkelerini yüksek derecede yapılandırılmış ve birbirine bağlı bilgilerle çalışırken birleştirdikleri için bağlam mühendisliğinin en ileri uygulamalarından birini temsil eder.
Bu sistemlerin yalnızca tek tek dosyaları değil, tüm proje mimarilerini, modüller arasındaki bağımlılıkları ve kod tabanınızdaki kodlama kalıplarını da anlaması gerekir.
Bir kodlama asistanından bir fonksiyonu yeniden düzenlemesini istediğinizde, o fonksiyonun nerede kullanıldığı, hangi veri tiplerini beklediği ve değişikliklerin projenizin diğer bölümlerini nasıl etkileyebileceği hakkında bağlama ihtiyaç duyar.
Bağlam mühendisliği burada kritik hâle gelir; çünkü kod ilişkileri birden çok dosyaya ve hatta birden çok depoya yayılır. İyi bir kodlama asistanı, proje yapınız, yakın zamanda yaptığınız değişiklikler, kodlama tarzınız ve kullandığınız çerçeveler hakkında bağlamı korur.
Bu nedenle Cursor gibi araçlar, onları bir projede ne kadar uzun süre kullanırsanız o kadar iyi çalışır. Spesifik kod tabanınız hakkında bağlam oluştururlar ve kalıplarınıza ve tercihlerinize dayalı daha ilgili öneriler sunabilirler.
Bağlam Hataları ve Bunları Azaltma Teknikleri
Makaleyi okurken bağlam mühendisliğinin gereksiz olduğunu ya da yakın gelecekte gereksiz olacağını düşünebilirsiniz; zira öncü modellerin bağlam pencereleri büyümeye devam ediyor. Bu doğal bir varsayımdır; çünkü bağlam yeterince büyükse, her şeyi (araçlar, belgeler, talimatlar ve daha fazlası) bir isteme atıp gerisini modele bırakabilirsiniz.
Ancak, Drew Breunig'in yazdığı bu harika makale, söz konusu model 1 milyon belirteçlik bağlam pencerelerini desteklese bile bağlamın nasıl kontrolden çıkabileceğine dair şaşırtıcı dört yolu gösteriyor. Bu bölümde, Drew Breunig'in ele aldığı sorunları ve bunları çözen bağlam mühendisliği kalıplarını kısaca anlatacağım — daha fazla ayrıntı için Breunig'in makalesini okumanızı önemle tavsiye ederim.
Bağlam zehirlenmesi
Bağlam zehirlenmesi, bir halüsinasyon veya hatanın yapay zekâ sisteminizin bağlamına girip, gelecekteki yanıtlarda tekrar tekrar referans verilmesiyle meydana gelir. DeepMind ekibi bunu Gemini 2.5 teknik raporunda bir Pokémon oynayan ajan geliştirirken tespit etti. Ajan zaman zaman oyun durumu hakkında halüsinasyon gördüğünde, bu yanlış bilgi bağlamının “hedefler” bölümünü zehirleyerek ajanın saçma stratejiler geliştirmesine ve uzun süre boyunca imkânsız hedeflerin peşinden gitmesine neden oldu.
Bu sorun, bilginin biriktiği ajan iş akışlarında gerçekten ciddi hâle gelir. Bir kez zehirli bir bağlam yerleştiğinde, modeli yanlış bilgiyi doğruymuş gibi referanslamaya devam ettiğinden düzeltmek sonsuza dek sürebilir.
Bağlam doğrulama ve karantina en iyi çözümdür. Farklı bağlam türlerini ayrı iş parçacıklarında izole edebilir ve uzun vadeli belleğe eklenmeden önce bilgileri doğrulayabilirsiniz. Bağlam karantinası, potansiyel zehirlenme tespit edildiğinde yeni iş parçacıkları başlatmak anlamına gelir; bu da kötü bilgilerin gelecekteki etkileşimlere yayılmasını önler.
Bağlam dikkat dağılması
Bağlam dikkat dağılması, bağlamınız o kadar büyüdüğünde olur ki model, eğitim sırasında öğrendiklerini kullanmak yerine birikmiş geçmişe aşırı odaklanmaya başlar. Pokémon oynayan Gemini ajanı bunu gösterdi — bağlam 100.000 belirteci aştığında, ajan yeni stratejiler geliştirmek yerine geniş geçmişindeki eylemleri tekrar etmeye başladı.
Bir Databricks çalışması (çok ilginç; mutlaka okunmalı), Llama 3.1 405b için model doğruluğunun yaklaşık 32.000 belirteç civarında düşmeye başladığını, daha küçük modellerin ise sınırlarına çok daha erken ulaştığını buldu. Bu, modellerin bağlam pencereleri tam dolmadan çok önce hata yapmaya başladığı anlamına gelir; bu da karmaşık akıl yürütme görevleri için çok büyük bağlam pencerelerinin gerçek değerini sorgulatır.

Kaynak: Databricks
Bağlam özetleme en iyi yaklaşımdır. Bağlamın sonsuza dek büyümesine izin vermek yerine, biriken bilgileri önemli ayrıntıları koruyup gereksiz geçmişi çıkaran daha kısa özetlere sıkıştırabilirsiniz. Bu, dikkat dağınıklığı sınırına ulaştığınızda yardımcı olur — şimdiye kadarki sohbeti özetleyip tutarlılığı korurken taze bir başlangıç yapabilirsiniz.
Bağlam karmaşası
Bağlam karmaşası, bağlamınıza mevcut görevle ilgisi olmayan fazladan bilgiler eklediğinizde ve modelin bu bilgileri kötü yanıtlar üretmek için kullandığında ortaya çıkar. Berkeley Function-Calling Leaderboard bunu gösteriyor — her modele birden fazla araç verildiğinde performans düşüyor ve modeller bazen görevle ilgisi olmayan araçları çağırıyor.
Sorun, daha küçük modeller ve daha fazla araçla daha da kötüleşir. Yakın tarihli bir çalışma, tüm 46 aracın verildiği durumda kuantize edilmiş Llama 3.1 8b'nin, bağlam 16k pencere sınırları içinde olmasına rağmen GeoEngine karşılaştırmasında başarısız olduğunu buldu. Ancak araştırmacılar aynı modele yalnızca 19 araç verdiğinde gayet iyi çalıştı.
RAG teknikleri kullanarak araç yükünü yönetmek çözümdür. Tiantian Gan ve Qiyao Sun'un araştırması, RAG'i araç açıklamalarına uygulamanın performansı gerçekten iyileştirdiğini gösterdi. Araç açıklamalarını bir vektör veritabanında depolayarak her görev için yalnızca en ilgili araçları seçebilirsiniz. Çalışmaları, araç seçimlerini 30'un altında tutmanın araç seçimi doğruluğunu üç kat artırdığını ve istemleri çok daha kısalttığını buldu.
Bağlam çakışması
Bağlam çakışması, bağlamınıza halihazırda bulunan diğer bilgilerle doğrudan çelişen bilgileri ve araçları topladığınızda ortaya çıkar. Microsoft ve Salesforce tarafından yapılan bir çalışma, karşılaştırma istemlerini alıp tüm bilgileri bir kerede vermek yerine birden çok sohbet turuna “parçalayarak” bunu gösterdi. Sonuçlar çarpıcıydı — ortalama %39'luk performans düşüşü; OpenAI'nin o3 modeli 98,1'den 64,1'e düştü.

Kaynak: Laban vd., 2025
Sorun, bilgiler aşamalar hâlinde geldiğinde meydana gelir; derlenen bağlam, modelin tüm bilgilere sahip olmadan önce soruları yanıtlama yönündeki erken denemelerini içerir. Bu hatalı erken yanıtlar bağlamda kalır ve modelin nihai yanıtları üretmesini etkiler.
Bağlam budama ve aktarım en iyi çözümlerdir. Bağlam budama, yeni ayrıntılar geldikçe eski veya çelişkili bilgileri kaldırmak anlamına gelir. Anthropic'in “think” aracı gibi bağlam aktarımı ise modellere, ana bağlamı karmaşaya boğmadan bilgileri işleyecek ayrı bir çalışma alanı verir. Bu karalama defteri yaklaşımı, iç çelişkilerin akıl yürütmeyi bozmasını engelleyerek özel ajan kıyaslarında %54'e varan iyileşme sağlayabilir.
Sonuç
Bağlam mühendisliği, odağın kusursuz istemler oluşturmaktan zaman içinde bilgi akışını yöneten sistemler kurmaya kaydığı yapay zekâ geliştirmesinin bir sonraki aşamasını temsil eder. Birden çok etkileşim boyunca ilgili bağlamı sürdürebilme becerisi, yapay zekânızın akıllı hissettirmesini mi yoksa yalnızca tek seferlik iyi yanıtlar vermesini mi belirler.
Bu eğitimde ele alınan teknikler — RAG sistemlerinden bağlam doğrulama ve araç yönetimine kadar — hâlihazırda milyonlarca kullanıcıyı yöneten üretim sistemlerinde kullanılmaktadır.
Basit bir içerik üreticisinden daha karmaşık bir şey inşa ediyorsanız, büyük olasılıkla bağlam mühendisliği tekniklerine ihtiyaç duyacaksınız. İyi haber şu ki temel RAG uygulamalarıyla küçük başlayabilir ve ihtiyaçlarınız arttıkça giderek daha gelişmiş bellek ve araç yönetimi ekleyebilirsiniz.
Daha fazla bilgi için şu kaynakları öneririm:
- Cursor AI Kod Editörü eğitimi — Yapay zekâ kodlama asistanlarıyla bağlam mühendisliğinin pratikte nasıl çalıştığını öğrenin
- Cursor ve Windsurf karşılaştırması — Cursor ile Windsurf arasındaki farkları öğrenin
- En İyi Yapay Zekâ Kodlama Asistanları — Farklı araçları ve bağlam yönetimi yaklaşımlarını karşılaştırın
- LangChain ile Getirim Artırımlı Üretim (RAG) kursu — RAG sistemleri oluşturmaya yönelik uygulamalı kurs
- Getirim Artırımlı Üretim (RAG) nedir? — Bağlam mühendisliğinin temel kavramları
- Ajanik RAG Eğitimi — Dinamik bağlam yönetimi için ileri teknikler
- İstem Mühendisliği nedir? — İstem ve bağlam mühendisliği arasındaki farkı anlamak
- LangGraph ile Çoklu Ajan Sistemleri kursu — LangGraph ile çoklu ajan sistemlerinin nasıl kurulacağını öğrenin
- Yapay Zekâ Ajanlarına Giriş kursu — Zaman içinde araç kullanan ve bağlamı sürdüren sistemler kurma
SSS
Sadece istemler yerine ne zaman bağlam mühendisliğini kullanmaya başlamalıyım?
Yapay zekânızın konuşmalar arasında şeyleri hatırlaması, birden fazla bilgi kaynağıyla çalışması veya uzun süreli görevleri sürdürmesi gerektiğinde bağlam mühendisliğini kullanmaya başlayın. Basit bir içerik üreticisinden daha karmaşık bir şey inşa ediyorsanız, büyük olasılıkla bu tekniklere ihtiyaç duyacaksınız.
Bağlam mühendisliği ile istem mühendisliği arasındaki temel fark nedir?
İstem mühendisliği tekil görevler için talimat yazmaya odaklanırken, bağlam mühendisliği birden çok etkileşim boyunca bilgi akışını yöneten sistemleri tasarlar. Bağlam mühendisliği bellek ve getirme sistemleri kurarken, istem mühendisliği bireysel talepleri kurgular.
Daha büyük bağlam pencerelerini bağlam mühendisliği yerine kullanabilir miyim?
Daha büyük bağlam pencereleri temel sorunları çözmez. Araştırmalar, bağlam dikkat dağılması ve karmaşası nedeniyle, milyon belirteçlik pencereler olsa bile performansın yaklaşık 32.000 belirteç civarında düştüğünü gösteriyor. Özetleme, budama ve akıllı bilgi seçimi gibi tekniklere bağlam boyutundan bağımsız olarak yine ihtiyaç vardır.
Neden yapay zekâ modellerine daha fazla araç veya bilgi verdiğimde performansları düşüyor?
Buna bağlam karmaşası denir — modeller ilgisiz bilgilerle dikkatleri dağılır ve göreve uymayan araçları kullanabilir. Çözüm araç yükünü yönetmektir: Her bir görev için yalnızca en ilgili araçları seçmek üzere RAG tekniklerini kullanın ve seçimleri 30 aracın altında tutun.

2 yılı aşkın deneyime sahip bir veri bilimi içerik üreticisiyim ve Medium’da en büyük takipçi kitlelerinden birine sahibim. Yapay zekâ ve makine öğrenimi üzerine, biraz da alaycı bir üslupla yazılmış, ayrıntılı makaleler kaleme almayı seviyorum; çünkü onları biraz daha az sıkıcı hale getirmek için bir şeyler yapmak gerekiyor. 130’un üzerinde makale ve bir de DataCamp kursu ürettim; bir diğeri de hazırlık aşamasında. İçeriklerim 5 milyondan fazla kişi tarafından görüldü; bunların 20 bini Medium ve LinkedIn’de takipçim oldu.

Usta bir istem mühendisi olabilirsiniz; ancak sohbet ilerledikçe sohbet robotunuz talimatlarınızın en erken ve en önemli kısımlarını sık sık unutur, kod asistanınız proje mimarisinin izini kaybeder ve RAG aracınız karmaşık belgeler ve alanlar arasında bilgiyi bağdaştıramaz.
Yapay zekâ kullanım senaryoları karmaşıklaştıkça, akıllıca bir istem yazmak çok daha büyük bir sorunun yalnızca küçük bir parçası hâline gelir: bağlam mühendisliği.
Bu eğitimde bağlam mühendisliğinin ne olduğunu, nasıl çalıştığını, ne zaman klasik istem mühendisliği yerine kullanılacağını ve yapay zekâ sistemlerini daha akıllı ve bağlamdan haberdar kılan pratik teknikleri açıklayacağım.
Bir videoyla takip etmeyi tercih ediyorsanız, şu dersi inceleyin: