BU DERSİN SONUNDA
- Bellek katmanlarını yaşam süresi ve sahiplik üzerinden ayırmak
- Her tur için gereken minimum bağlamı derleyen bir kural yazmak
- Sıkıştırma yöntemleri arasında kayıp ve bütçe ödünleşimine göre seçim yapmak
- Kalıcı belleğe yazma kararını kapsam ve silme koşuluyla tanımlamak
- 1
Teori
Kavramın çalışma mantığı
- 2
Örnek
Gerçek bir senaryo üzerinde gösterim
- 3
Lab
Uygulamalı alıştırma
- 4
Test
Kısa ölçüm
- 5
Proje
Rotadaki projeye katkı
Kısa cevap
Ajan belleği tek bir şey değil, en az üç katman: yürüyen turun bağlamı, oturum içinde taşınan karar ve özet kaydı, oturumlar arası kalıcı kayıt. Tasarım sorusu "her şeyi nasıl hatırlarız" değil, "bu turda hangi minimum durum gerekiyor".
Teori: bağlam bir kaynaktır#
Her tur, o turda modele verilen metnin tamamı üzerinde çalışır. Ajan döngüsü ilerledikçe gözlemler birikir ve bir noktada iki şey olur: metin bağlam penceresine sığmaz, ya da sığsa bile ilgili bilgi birikmiş gürültünün içinde kalır. Bu yüzden bellek bir arşivleme işi değil, her tur yeniden yapılan bir bağlam derleme işidir.
Katmanları ayıran iki şey var: yaşam süresi ve yazma kararının kimde olduğu. Çalışma belleği turun kendisiyle yaşar ve kod tarafından derlenir. Oturum belleği konuşma boyunca yaşar; genellikle özetlenerek sıkıştırılır. Kalıcı bellek oturumdan bağımsızdır ve ona yazmak açık bir karar olmalıdır: ne yazıldığı, hangi kapsamda geçerli olduğu ve ne zaman silineceği belli.
Kalıcı belleği geri getirmeyle karıştırmamak gerekir. Geri getirme, dış bir kaynaktan ilgili parçaları bulup bağlama koymaktır; kaynağın ajanın kendi deneyimi olması gerekmez. Ajan belleği bunun özel bir hâlidir: getirilecek şey ajanın kendi geçmiş durumudur. Mekanizma aynı olduğu için riskler de aynıdır — ilgisiz parça getirmek, eski bilgiyi güncel sanmak, yetki filtresini atlamak.
Uygulamada: katman karşılıkları#
| Katman | Yaşam süresi | Tipik içerik | Ana risk |
|---|---|---|---|
| Çalışma belleği | Tek tur | Sistem talimatı, araç şemaları, plan durumu, son gözlemler | Bütçe aşımı ve ilgisiz gözlem gürültüsü |
| Oturum belleği | Oturum boyunca | Verilen kararlar, kullanıcı düzeltmeleri, ara özetler | Özetleme kaybı; atılan ayrıntının sonradan gerekmesi |
| Kalıcı bellek | Oturumlar arası | Tercihler, sonuçlanmış işler, değişmeyen olgular | Eskiyen bilgi ve yanlış kapsama taşınan kayıt |
| Dış bilgi | Sistem ömrü | Kurum belgeleri, kayıtlar, dizinler | İlgisiz parça getirme ve yetki sızıntısı |
Bağlamı küçültmenin dört yolu#
- Pencereleme: yalnızca son N turu tutmak. Ucuz ve belirlenimci; eski ama kritik bir kararı sessizce düşürür.
- Özetleme: eski turları modele özetletip yerine koymak. Yer kazandırır, ayrıntıyı kaybeder ve özetin kendisi hata taşıyabilir.
- Dışa alma: uzun gözlemi bir kimlikle kaydedip bağlama yalnızca kimliği ve tek satır özeti yazmak, gerektiğinde araçla geri okumak. Kayıp yok, ek tur var.
- Seçici geri getirme: geçmiş turları aranabilir hâle getirip yalnızca o tura ilgili olanları çağırmak. Geri getirmenin bütün riskleri buraya da geçer.
Kalıcı belleğe ne yazılır?#
- 1Bu bilgi sonraki oturumda davranışı değiştirir mi?
Değiştirmiyorsa yazmayın. Kalıcı belleğe yazılan her şey sonraki turlarda okunacak bir yüktür ve seçim yapılacak kümeyi büyütür.
- 2Bilginin sahibi başka bir sistem mi?
Kayıt sisteminde duran bir adres ajan belleğine kopyalanmaz, kaynağından okunur. Kopya eskir ve iki farklı doğru üretir.
- 3Bilgi kişisel veri mi?
Öyleyse yazma kararı açık olmalı: amaç, saklama süresi ve silme yolu tanımlı; kullanıcı ne tutulduğunu görebiliyor ve silebiliyor.
- 4Kayıt hangi kapsamda geçerli?
Kullanıcı, ekip veya kurum kapsamını kaydın kendisine yazın. Kapsamsız bir bellek kaydı, eninde sonunda yanlış kişinin bağlamına girer.
Sık yapılan hata#
En sık görülen hata bütün izi bağlamda taşımak ve pencere dolduğunda baştan başlamak. İki semptom birlikte gelir: ajan oturumun ortasında verdiği kararı unutur ve maliyet tur sayısıyla üst üste binerek büyür, çünkü her tur birikmiş izin tamamını yeniden okur. Çözüm, plan durumunu ve kararları ayrı ve küçük tutmak, uzun gözlemleri dışa almak.
LAB · UYGULAMALI ALIŞTIRMA
Turun bağlam dökümünü çıkarın
- 1Ajanınızın uzun bir koşumunu alın; koşum kaydınız yoksa aynı görevi birkaç tur elle yürütüp modele giden metni dosyaya yazın. Son turda modele giden metni parçalara ayırın: sistem talimatı, araç şemaları, plan durumu, gözlemler, kullanıcı mesajları.
- 2Her parçanın karakter uzunluğunu ölçüp toplam içindeki payını yazın; en büyük iki parçayı işaretleyin.
- 3İşaretli parçalarda o tur için gereksiz içeriği eleyin: tekrar eden gözlem, kullanılmayan alanlar, bitmiş adımların ayrıntısı.
- 4Elediğiniz uzun gözlemleri bir kimlikle kaydedip yerine tek satır özet koyun ve geri okuma aracını tanımlayın.
- 5Aynı görevi sadeleştirilmiş bağlamla yeniden koşturun; çıktının hâlâ doğru olup olmadığını ve tur uzunluğunu önce/sonra karşılaştırın.
Beklenen çıktı
Bir turun parça bazlı bağlam dökümü, en büyük iki parçanın sadeleştirilmiş hâli ve aynı görevin önce/sonra karşılaştırması.
Sık sorulan sorular
Bağlam pencereleri büyüyor; bellek tasarımı gereksizleşmiyor mu?
Sığdırmak ile kullanmak aynı şey değil. Bağlam büyüdükçe ilgisiz metin de büyür ve ilgili bilginin fark edilmesi zorlaşır; ayrıca her tur bağlamın tamamını yeniden işler. Sınır tamamen kalksa bile "bu turda ne gerekiyor" sorusu yerinde durur.
Özetleme ile dışa alma arasında hangisini seçmeli?
Ayrıntının sonradan gerekme olasılığına bakın. Gözlem ayrıntısı sonradan gerekebiliyorsa dışa alma daha güvenlidir, çünkü kayıp yoktur; bedeli bir geri okuma turudur. Karar ve gerekçe gibi kısa metinlerde özetleme yeterlidir.
Ajan kendi belleğini kendi mi yönetmeli?
Modele bellek yazma aracı vermek kullanışlıdır, ama karar ölçütü kodda kalmalı: ne yazılabileceği şemayla kısıtlı, kapsam oturum kimliğinden gelen, yazma işlemi denetim kaydına düşen bir yol olmalı.
LEARN
AI Agent Developer rotasına devam et
Dersler tek başına da okunabilir, ama sıralı ilerlemek önkoşul boşluklarını kapatır.
