![Yapay Zeka Ajan Belleği: Türler, Mimari ve Kod Örnekleri [2026]](/_next/image?url=https%3A%2F%2Fmedia.techsy.io%2Ftechsy-io%2Fhero-253-1200x630.webp&w=3840&q=75)
Her LLM çağrısı sıfırdan başlar. Ajanınızın kullanıcının beş dakika önce ne söylediğinden, dün ne öğrendiğinden ya da geçen hafta hangi yaklaşımın başarısız olduğundan haberi yoktur. Yapay zeka ajan belleği tam da bu boşluğu kapatır — ve bir chatbot demosu ile üretim kalitesindeki bir ajan arasındaki en büyük farktır.
Her bellek türünün ne yaptığı, ne zaman ihtiyaç duyduğunuz ve nasıl uygulayacağınız işte burada.
Hızlı Özet: Yapay Zeka Ajan Belleği Bir Bakışta
Ayrıntılara girmeden önce, işte genel tablo. Beş bellek türü farklı amaçlara hizmet eder ve ajanınız muhtemelen bunlardan en az ikisine ihtiyaç duyar.
| Bellek Türü | Ne Depolar | Kalıcılık | Depolama Arka Ucu | En İyi Olduğu Durum |
|---|---|---|---|---|
| Kısa Süreli / Çalışma | Güncel konuşma sıraları | Yalnızca oturum | Bellek içi tampon | Sohbet bağlamı sürekliliği |
| Episodik | Zaman damgalı geçmiş etkileşimler | Uzun süreli | Vektör VT | "Geçen sefer X hakkında sordunuz" |
| Semantik | Gerçekler, tercihler, bilgi | Uzun süreli | Vektör VT / Anahtar-değer | Kullanıcı kişiselleştirme |
| Prosedürel | Öğrenilen davranışlar, iş akışları | Uzun süreli | Kod / Yapılandırma deposu | Araç kullanımı optimizasyonu |
| Graf | Varlık ilişkileri, bağlantılar | Uzun süreli | Graf VT (Neo4j) | Organizasyon şemaları, nedensel zincirler |
Kısa versiyon: Ajanınız yalnızca tek turlu istekleri işliyorsa, yalnızca kısa süreli bellekle idare edebilirsiniz. Oturumlar arası öğrenme veya kişiselleştirmeye ihtiyaç duyduğunuzda, en az semantik + episodik belleğe bakıyorsunuz demektir. Varlık ilişkileri içeren karmaşık alanlar için graf belleği ekleyin.
Bu rehberin geri kalanı kod örnekleriyle her türü ayrıntılı açıklar, altı framework'ü doğrudan karşılaştırır ve çoğu eğitimin tamamen atladığı üretim kalıplarını ele alır.
Yapay Zeka Ajan Belleği Nedir?
Yapay zeka ajan belleği, bir ajanın etkileşimler boyunca bilgi depolamasına, almasına ve kullanmasına olanak tanıyan sistemdir — tek bir LLM bağlam penceresine sığanın ötesinde. Bunu, hafıza kaybı yaşayan bir meslektaşla projenizin geçmişini gerçekten hatırlayan bir meslektaş arasındaki fark olarak düşünün.
Bu neden önemli? Büyük dil modelleri doğası gereği durumsuz tasarlanmıştır. GPT-4, Claude veya Gemini'ye yapılan her API çağrısı boş bir sayfadan başlar. ChatGPT'de deneyimlediğiniz "bellek"? Bu, önceki mesajlarınızı her seferinde prompt'a geri gönderen uygulama katmanıdır. Konuşma bağlam penceresini aştığında — ya da yeni bir oturum başlattığınızda — her şey gider.
Ajan belleği ile bağlam penceresi arasındaki fark kritik bir ayrımdır. Bağlam penceresi (GPT-4 için 128K token, Claude için 200K) kısa süreli çalışma belleğinize daha çok benzer — şu anda aklınızda tutabilecekleriniz. Ajan bellek sistemleri uzun süreli belleğin eşdeğerini ekler: episodik hatırlama ("X yaklaşımını Salı günü denedik"), semantik bilgi ("bu kullanıcı TypeScript yerine Python'u tercih eder") ve prosedürel öğrenme ("A aracı bu görev için B aracından daha iyi çalışır").
İnsan analojisi mükemmel uyuyor. Çalışma belleğiniz güncel konuşmayı tutar. Episodik belleğiniz geçmiş deneyimleri depolar. Semantik belleğiniz dünya hakkındaki gerçekleri içerir. Kas belleğiniz tekrarlanan eylemleri otomatikleştirir. Yapay zeka ajan bellek mimarileri tam olarak aynı yapıyı yansıtır — bu bir tesadüf değil. Princeton'ın CoALA framework'ü ajan belleğini açıkça bilişsel bilim ilkeleri üzerine modeller.
Bu, ajanları neden dönüştürür? Çünkü bellek olmadan her etkileşim yalnızdır. Bir müşteri destek ajanı hesap numaranızı yeniden sorar. Bir kodlama asistanı projenizin teknoloji yığınını unutur. Bir araştırma ajanı daha önce analiz ettiği makaleleri yeniden okur. Bellek, bu sinir bozucu araçları gerçekten yararlı iş arkadaşlarına dönüştürür.
Yapay Zeka Ajanları Neden Belleğe İhtiyaç Duyar?
Her biri için gerçek örneklerle beş pratik neden.
Oturumlar arası kişiselleştirme. React'ta sınıf bileşenlerinden fonksiyonel bileşenleri tercih ettiğinizi ya da ekibinizin tab'larla Prettier kullandığını hatırlayan bir kodlama asistanı. Semantik bellek olmadan her oturumda tercihlerinizi yeniden açıklarsınız.
Çok turlu konuşmalarda bağlam sürekliliği. "Daha önceki fonksiyonu güncelleyebilir misiniz?" yalnızca ajan hangi fonksiyonu kastettiğinizi bilirse işe yarar. Kısa süreli bellek bunu bir oturum içinde halleder, episodik bellek ise bunu oturumlar arasına genişletir.
Deneyimden öğrenme. Bir veritabanı sorgusunu optimize etmek için üç yaklaşım deneyen ve hangisinin gerçekten işe yaradığını hatırlayan bir ajan zamanla daha iyi hale gelir. Prosedürel bellek bu öğrenilen davranışları yakalar. Bu, iş akışlarında kullanılan yapay zeka ajanlarını basit istem-yanıt sistemlerinden ayıran şeydir.
Maliyet verimliliği. Kullanıcının her takip sorusunda aynı 50 belgeyi yeniden gömmek hesaplama gücü israfıdır. Bellek sistemleri önbelleğe alır ve birleştirir; token kullanımını ve API maliyetlerini önemli ölçüde azaltır. Mem0, naif RAG yaklaşımlarına kıyasla %91 daha hızlı bağlam alımı rapor eder.
Çoklu ajan koordinasyonu. Birden fazla ajan iş birliği yaptığında — bir araştırmacı, bir kodlayıcı ve bir inceleyici — çalışmayı tekrarlamaktan ve çelişmekten kaçınmak için paylaşılan belleğe ihtiyaç duyarlar.
Yapay Zeka Ajan Belleğinin 5 Türü Nedir?
Aşağıdaki sınıflandırma, ajan belleğini yerleşik bilişsel bilim kategorilerine eşleyen CoALA bilişsel mimari framework'ünden alınmıştır. Her tür farklı bir amaca hizmet eder.
Kısa Süreli (Çalışma) Belleği
Nedir: Ajanın aktif bağlamı — mevcut konuşma ve prompt'ta oturan son alınan bilgiler. Bu, bağlam pencerenizdir.
İnsan analojisi: Çevirebilecek kadar uzun süre bir telefon numarasını aklınızda tutmak.
Depolama: Bellek içi tampon, kayan pencere veya konuşma tamponu. Harici veritabanı gerekmez.
Ne zaman kullanılır: Her ajan bunu varsayılan olarak sahiptir. Soru, nasıl yönettiğinizdir — naif birleştirme (her şeyi içine at), kayan pencere (en eski mesajları at) veya özet tabanlı (eski turları özetlere sıkıştır).
Episodik Bellek
Nedir: Belirli geçmiş etkileşimlerin zaman damgalı kayıtları. Yalnızca ne söylendiği değil, ne zaman, hangi bağlamda ve sonucun ne olduğu.
İnsan analojisi: "Geçen Salı bir CORS sorununu ayıkladık ve çözüm doğru başlıkları eklemekti" diye hatırlamak.
Depolama: Zamansal meta veri içeren vektör veritabanı. Alım, semantik benzerliği güncellik ağırlıklandırmasıyla birleştirir.
Ne zaman kullanılır: Konuşma geçmişine ihtiyaç duyan destek ajanları. Hangi kaynakları daha önce incelediğini izleyen araştırma ajanları. "Bunu zaten konuştuk" ifadesinin önemli olduğu her ajan.
Semantik Bellek
Nedir: Etkileşimlerden çıkarılan olgusal bilgi ve kullanıcı tercihleri. Bağlamsızlaştırılmış — ne olduğu, ne zaman olduğu değil.
İnsan analojisi: Paris'in Fransa'nın başkenti olduğunu ya da meslektaşınızın karanlık modu tercih ettiğini bilmek.
Depolama: Vektör veritabanı veya anahtar-değer deposu. Alım için genellikle gömmeler kullanır, ancak yapılandırılmış da olabilir (JSON kullanıcı profilleri).
Ne zaman kullanılır: Kullanıcı kişiselleştirme (dil tercihleri, uzmanlık düzeyi, proje bağlamı). Alan bilgisi birikimi. Her şeyi kalıcı olarak "bilmesi" gereken her ajan.
Prosedürel Bellek
Nedir: Öğrenilen davranışlar, araç kullanım kalıpları ve optimize edilmiş iş akışları. Ajanın "kas belleği."
İnsan analojisi: Bisiklet sürmeyi bilmek — her adımı düşünmezsiniz, sadece yaparsınız.
Depolama: Genellikle kod, yapılandırma veya ince ayarlı model ağırlıkları olarak depolanır. Ne yerine nasıl ile ilgili olduğundan vektör veritabanlarında daha az yaygındır.
Ne zaman kullanılır: Projenizin kurallarını öğrenen kodlama ajanları. Çok adımlı süreçleri optimize eden iş akışı ajanları. Aynı görev türünün tekrarlandığı ve yaklaşımın gelişmesi gereken her ajan.
Graf Belleği
Nedir: Varlıklar arasındaki ilişkiler — organizasyonel hiyerarşiler, nedensel zincirler, bağımlılık haritaları. Neo4j'nin "vektör benzerlik aramasının kaçırdığı" bağlantılar olarak tanımladığı şey.
İnsan analojisi: Alice'in Bob'a rapor verdiğini, Bob'un arka uç ekibini yönettiğini ve arka uç ekibinin ödeme hizmetine sahip olduğunu bilmek.
Depolama: Neo4j gibi graf veritabanları veya mevcut bellek framework'lerinin üzerinde graf katmanları. Mem0 ve Zep, vektör depolamanın yanı sıra graf tabanlı belleği de destekler.
Ne zaman kullanılır: Organizasyonel yapıları izleyen kurumsal ajanlar. Kavram ilişkilerini haritalayan araştırma ajanları. Şeylerin nasıl bağlandığının, şeylerin ne olduğu kadar önemli olduğu her alan.
Rakiplerin çoğu graf belleğinden neredeyse hiç bahsetmez — ancak kurumsal ve araştırma kullanım senaryoları için bu genellikle bir ajanı gerçekten yararlı kılan eksik parçadır.
<!-- IMAGE: 5 yapay zeka ajan bellek türünü simgelerle gösteren diyagram - kısa süreli, episodik, semantik, prosedürel ve graf belleği birbirine bağlı -->Yapay Zeka Ajan Belleği Nasıl Çalışır?
Arka planda her bellek sistemi aynı yaşam döngüsünü izler: Kodla, Depola, Al, Entegre Et. Her aşamada neler olduğu burada.
Kodlama, ham bilgiyi depolanabilir bir formata dönüştürür. Metin için bu genellikle OpenAI'nin text-embedding-3-small gibi bir modeli veya yerel bir modeli kullanarak gömmeler (yoğun vektör temsilleri) oluşturmak anlamına gelir. Meta veriler de çıkarılır — zaman damgaları, kullanıcı kimlikleri, konu etiketleri, önem puanları.
Depolama, kodlanmış belleği kalıcı kılar. Pinecone gibi vektör veritabanları, milyonlarca vektörde 100ms altında alım için HNSW indeksleme ile semantik belleği yönetir. Graf veritabanları ilişki belleğini yönetir. Anahtar-değer depoları basit gerçekleri yönetir.
Alım, ajan bunlara ihtiyaç duyduğunda ilgili bellekleri bulur. Bu sadece "en benzer vektörü bul" değildir. İyi alım, semantik benzerliği, zamansal güncelliği (son bellekler genellikle daha önemlidir) ve önem puanlamasını (bazı bellekler diğerlerinden daha kritiktir) birleştirir.
Entegrasyon, alınan bellekleri ajanın prompt'una enjekte eder. Bağlam mühendisliğinin devreye girdiği yer burası — hangi belleklerin dahil edileceğine, hangi sırayla ve LLM'nin bunları etkili biçimde kullanabilmesi için nasıl biçimlendirileceğine karar vermek.
Leonie Monigatti'nin framework'ünün açıkladığı gibi, gerçek bellek işlemleri dört eyleme indirgenir: ADD (yeni bellek depola), UPDATE (mevcut olanı değiştir), DELETE (güncel olmayanı kaldır) ve NOOP (değişiklik gerekmez). Zor kısım? Hangi işlemi tetikleyeceğine karar vermek. Açık güncellemeler kolaydır — kullanıcı "Python'u tercih ettiğimi hatırla" der. Örtük güncellemeler daha zordur — ajanın konuşma bağlamından neyin depolamaya değer olduğunu çıkarması gerekir.
Python'da kodla-depola-al döngüsü:
from openai import OpenAI
import numpy as np
client = OpenAI()
# KODLA: Metni gömmeye dönüştür
def encode_memory(text: str) -> list[float]:
response = client.embeddings.create(
model="text-embedding-3-small",
input=text
)
return response.data[0].embedding
# DEPOLA: Meta veri ile kaydet
def store_memory(memory_store: dict, text: str, metadata: dict):
embedding = encode_memory(text)
memory_id = str(len(memory_store))
memory_store[memory_id] = {
"text": text,
"embedding": embedding,
"metadata": {**metadata, "timestamp": "2026-03-17"},
}
return memory_id
# AL: Kosinüs benzerliği ile ilgili bellekleri bul
def retrieve_memories(memory_store: dict, query: str, top_k: int = 3):
query_embedding = encode_memory(query)
scored = []
for mid, mem in memory_store.items():
similarity = np.dot(query_embedding, mem["embedding"])
scored.append((similarity, mem["text"]))
scored.sort(reverse=True)
return [text for _, text in scored[:top_k]]Bu basitleştirilmiş bir örnektir — üretim sistemleri dict yerine gerçek bir vektör veritabanı, toplu işlemler ve önem tabanlı filtreleme kullanır. Ama kalıp her yerde aynıdır.
Yapay Zeka Ajan Belleği Nasıl Uygulanır? Framework Karşılaştırması
Belleği sıfırdan inşa etmenize gerek yok. 2026'da altı framework alana hâkim olup her birinin farklı güçlü yönleri var. İşte karşılaştırma tablosu.
| Framework | GitHub Yıldızları | Bellek Türleri | Depolama Arka Uçları | En İyi Olduğu Durum | Fiyat |
|---|---|---|---|---|---|
| Mem0 | 50K+ | Tüm 5 tür | Vektör, Graf, Anahtar-değer | Üretim uygulamaları, çoklu arka uç | Ücretsiz OSS / Ücretli Cloud |
| Zep | 3K+ | Episodik, Semantik | Dahili (Postgres) | Sohbet ağırlıklı uygulamalar | Ücretsiz OSS / Ücretli Cloud |
| LangMem | 2K+ | Uzun süreli | LangGraph kontrol noktaları | LangChain ekosistemi | Ücretsiz OSS |
| Letta (MemGPT) | 15K+ | Tüm türler | Dahili | Araştırma ajanları, derin akıl yürütme | Ücretsiz OSS / Ücretli Cloud |
| LangChain Memory | LangChain'in parçası | Kısa süreli | Bellek içi / yapılandırılabilir | Basit chatbot'lar | Ücretsiz OSS |
| MemoClaw | 1K+ | Hibrit | Graf + Vektör | Graf yoğun kullanım senaryoları | Ücretsiz OSS |
2026'da çoğu üretim kullanım senaryosu için Mem0 varsayılan seçimdir. En büyük topluluğa, en geniş depolama desteğine ve en olgun API'ye sahiptir. Ancak "en iyi" seçenek teknoloji yığınınıza bağlıdır.
Aynı işlem — bir kullanıcı tercihini depolama ve alma — Mem0 ve LangChain'de:
# Mem0: Kullanıcı tercihini depola ve al
from mem0 import Memory
m = Memory()
# Kullanıcı bağlamıyla bir bellek ekle
m.add("Yeni projeler için JavaScript yerine TypeScript'i tercih ediyorum", user_id="dev_42")
# Bir sorgu için ilgili bellekleri al
results = m.search("Hangi dili kullanmalıyım?", user_id="dev_42")
# Döndürür: [{"memory": "Yeni projeler için JavaScript yerine TypeScript tercih eder", ...}]# LangChain: Konuşma tamponu belleği (yalnızca kısa süreli)
from langchain.memory import ConversationBufferMemory
from langchain.chains import ConversationChain
from langchain_openai import ChatOpenAI
memory = ConversationBufferMemory()
chain = ConversationChain(llm=ChatOpenAI(), memory=memory)
# Bellek oturum içinde otomatiktir
chain.predict(input="JavaScript yerine TypeScript'i tercih ediyorum")
chain.predict(input="Bu proje için hangi dili kullanmalıyım?")
# İkinci çağrı bağlama ilk mesajı dahil eder — ancak yalnızca bu oturum içindeFark açıktır: Mem0 size hazır olarak kalıcı, oturumlar arası bellek ve kullanıcı kapsamı sağlar. LangChain'in bellek modülü oturum içi bağlamı iyi yönetir, ancak uzun süreli kalıcılık için LangMem veya özel bir çözüm gerektirir.
Letta (eski adıyla MemGPT) temelden farklı bir yaklaşım benimser — ajana kendi bellek yönetimi üzerinde kontrol verir. Ajan, sanal belleği yöneten bir işletim sistemi gibi bağlama neyin alınıp çıkarılacağına karar verir. Araştırma yoğun ajanlar için güçlüdür, ancak kurulumu daha karmaşıktır.
OpenClaw gibi açık kaynaklı ajan platformları üzerine inşa ediyorsanız, bellek entegrasyonu genellikle bu framework'lerden birini bellek arka ucu olarak eklemeyi içerir.
Üretim Bellek Mimarisi Nasıl Görünür?
Eğitim kodu tek bir bellek deposu kullanır. Üretim sistemleri katmanlar kullanır — ve mimariyi doğru kurmak gecikme ve maliyette 10 kat fark yaratır.
İki Katmanlı Mimari
Büyük ölçekte işe yarayan kalıp: sık erişilen, hızlı bellekler için sıcak yol ve tam bellek deposu için soğuk yol.
| Katman | Teknoloji | Gecikme | Ne Depolar |
|---|---|---|---|
| Sıcak (önbellek) | Redis ile vektör arama | <10ms | Son bellekler, kullanıcı profili, aktif oturum |
| Soğuk (kalıcı) | Pinecone / Qdrant / Neo4j | 50-200ms | Tam geçmiş, episodik arşiv, bilgi grafı |
Sıcak yol bellek alımlarının %80'ini yönetir — güncel oturum bağlamı, son erişilen kullanıcı tercihleri ve aktif çalışma durumu. Soğuk yol, daha eski episodik belleklerin alınması, derin bilgi aramaları ve graf sorguları içindir.
# İki katmanlı bellek yönlendirme (sözde kod)
class ProductionMemory:
def __init__(self):
self.hot = RedisMemory(ttl_hours=24) # Hızlı önbellek katmanı
self.cold = PineconeMemory() # Kalıcı depo
def retrieve(self, query: str, user_id: str) -> list[str]:
# Önce sıcak yolu dene
results = self.hot.search(query, user_id, top_k=5)
if len(results) >= 3 and results[0].score > 0.85:
return results # Önbellek isabeti — 10ms altı yanıt
# Soğuk yola geç
cold_results = self.cold.search(query, user_id, top_k=10)
# Erişilen bellekleri sıcak önbelleğe yükselt
self.hot.cache(cold_results[:5], user_id)
return cold_results
def consolidate(self, user_id: str):
"""Eski bellekleri özetlere sıkıştır — gece çalıştır"""
old_memories = self.cold.get_older_than(days=30, user_id=user_id)
summary = self.llm.summarize(old_memories)
self.cold.replace_with_summary(old_memories, summary)Bellek Konsolidasyonu
Ham bellekler hızla birikir. Günde 100 konuşma yöneten bir müşteri destek ajanı ayda binlerce bellek girişi oluşturur. Konsolidasyon olmadan, sinyal-gürültü oranı düştükçe alım kalitesi düşer.
Konsolidasyon stratejileri:
- Özetleme: Bir haftalık episodik bellekleri bir özete sıkıştırın
- Tekilleştirme: Aynı şeyi söyleyen semantik bellekleri birleştirin
- Bozunma: N gün boyunca alınmayan belleklerin önem puanını düşürün
- Arşivleme: Nadiren erişilen bellekleri daha ucuz soğuk depolamaya taşıyın
Çoklu Ajan Bellek İzolasyonu
Birden fazla ajan bir sistemi paylaştığında sınırlara ihtiyaç duyarsınız. Bir araştırma ajanı, bir müşteri destek ajanının konuşmalarından bellekleri kazayla getirmemelidir.
Kalıp: Seçici paylaşımlı ad alanı tabanlı izolasyon. Her ajan kendi bellek ad alanını alır; ajan genelinde bilgi (şirket politikaları, ürün özellikleri vb.) için paylaşılan bir ad alanıyla birlikte. Mem0 bunu user_id'nin yanı sıra agent_id parametresi aracılığıyla yerel olarak destekler.
Yaygın Bellek Anti-Kalıpları Nelerdir?
Ajanlara bellek entegre etmek basittir. Bunu iyi yapmak, ekiplerin tökezlediği yerdir. İşte sürekli gördüğümüz yedi kalıp — ve nasıl düzeltileceği.
1. Alaka filtresi olmadan her şeyi depolamak
- Sorun: Ajan "tamam", "teşekkürler" ve "bunu düşüneyim" dahil her mesajı depolar. Bellek gürültüyle dolar.
- Neden zarar verir: Alım kalitesi düşer. Ajan alakasız bellekler getirir ve işe yaramaz bağlam için token harcar.
- Düzeltme: Depolamadan önce alaka filtresi ekleyin. Bir mesajın depolanabilir bilgi içerip içermediğini puanlamak için bir LLM çağrısı veya buluşsal yöntem kullanın. Mem0 bunu çıkarma pipeline'ıyla otomatik olarak yapar.
2. TTL veya unutma mekanizması olmamak
- Sorun: Bellekler sonsuza kadar birikir. İki yıl önceki bir kullanıcı tercihi eskimiş olmasına rağmen hâlâ çıkar.
- Neden zarar verir: Bellek şişmesi alım gecikmesini artırır ve eski bilgileri döndürür.
- Düzeltme: Bozunma puanlaması uygulayın. Bellekler sık alınmadıkça zamanla önem kaybeder. Geçici bellekler (oturum özetleri, geçici tercihler) için TTL belirleyin.
3. Bellek çatışmalarını yok saymak
- Sorun: Kullanıcı Ocak'ta "Python'u tercih ediyorum" ve Mart'ta "Aslında Rust'a geçtim" diyor. Her iki bellek de çatışma çözümü olmadan var olur.
- Neden zarar verir: Ajan hangi belleğin önce alındığına bağlı olarak çelişkili yanıtlar verir.
- Düzeltme: UPDATE işlemlerini uygulayın. Yeni bilgiler mevcut belleklerle çeliştiğinde yalnızca ekleme yapmak yerine güncelleyin veya değiştirin. Mem0 bunu çatışma çözümleme mantığıyla yönetir.
4. Hassas veriler üzerinde gizlilik kontrolü olmamak
- Sorun: Ajan herhangi bir filtreleme olmaksızın kredi kartı numaralarını, sağlık bilgilerini veya kişisel ayrıntıları bellekte depolar.
- Neden zarar verir: Düzenleyici risk (GDPR, HIPAA) ve olası veri ihlalleri.
- Düzeltme: Her bellek yazımından önce PII tespiti ve maskeleme. Hassas verileri tespit eden ve maskeleme yapan ya da şifreli, erişim kontrollü depolamaya yönlendiren bir sınıflandırma adımı çalıştırın.
5. Yalnızca vektör benzerliğine aşırı güvenmek
- Sorun: Alım, güncelliği ve önemi yoksayarak yalnızca gömmeler üzerindeki kosinüs benzerliğini kullanır.
- Neden zarar verir: Bir yıl önceki son derece alakalı bir bellek, kullanıcının ihtiyacı olan dünkü orta derecede alakalı birini geçer.
- Düzeltme: Benzerlik puanını zamansal bozunma ve önem ağırlıklandırmasıyla birleştirin. Basit bir formül:
final_score = 0.6 * similarity + 0.25 * recency + 0.15 * importance.
6. Tüm bellek türlerini aynı şekilde ele almak
- Sorun: Episodik, semantik ve prosedürel bellekler, aynı alım mantığıyla tek bir vektör deposuna gider.
- Neden zarar verir: Farklı bellek türleri farklı alım stratejileri gerektirir. Prosedürel bellek semantik benzerlik değil görev türüne göre tetiklenmelidir. Graf belleği en yakın komşu araması değil geçişe ihtiyaç duyar.
- Düzeltme: Bellek türü başına ayrı depolama ve alım. Doğru aracı kullanın: semantik/episodik için vektör VT, ilişkiler için graf VT, prosedürel için yapılandırma deposu.
7. Bellek doğrulaması veya kalite kontrolleri olmamak
- Sorun: Ajan halüsinasyon görmüş bilgileri bellek olarak depolar. LLM tarafından oluşturulan bir "gerçek", gelecekteki etkileşimleri bozan kalıcı bir bellek haline gelir.
- Neden zarar verir: Bellek zehirlenmesi — kötü bilgiler zamanla birikerek katlanır.
- Düzeltme: Doğrulama adımı ekleyin. Çıkarılan bellekleri kaynak konuşmayla çapraz referanslayın. Kritik gerçekler için depolamadan önce onay isteyin.
Bellek Gizliliği ve Yönetimi Nasıl Ele Alınır?
Bellek, ajanları kullanışlı kılar — ama aynı zamanda kullanıcı verilerini depoladığınız anlamına gelir. AB'de faaliyet gösteriyorsanız veya herhangi bir yerde hassas bilgilerle ilgileniyorsanız, gizlilik isteğe bağlı değildir.
GDPR Silinme Hakkı
GDPR'nin 17. Maddesi, kullanıcılara kişisel verilerinin silinmesini talep etme hakkı verir. Ajan belleği için bu, belirli bir kullanıcıyla ilişkili tüm bellekleri her depolama arka ucunda — vektör VT, graf, önbellek, özetler, hepsi — güvenilir bir şekilde bulup kaldırmanız gerektiği anlamına gelir.
Uygulama kontrol listesi:
- Bellek girişleri
user_idile etiketlenmiş olmalıdır (silme sorguları için pazarlık dışı) - DELETE işlemleri tüm depolama katmanlarına yayılmalıdır (sıcak önbellek + soğuk depo + graf)
- Kullanıcıya özgü veriler içeren konsolide özetler de yeniden oluşturulmalı veya silinmelidir
- Denetim izi: Uyum için silme isteklerini ve onayları günlüğe kaydedin
PII Tespiti ve Maskeleme
Her bellek yazımından önce bir PII sınıflandırıcısı çalıştırın. Microsoft Presidio gibi kütüphaneler veya özel regex kalıpları yaygın PII'yi (e-postalar, telefon numaraları, kimlik numaraları) yakalar. Seçenekler:
- Depolamadan önce maskele: PII'yi tokenlarla değiştirin (
[EMAIL],[TELEFON]) — hassas veriler olmadan bellek yine de kullanışlıdır - Şifreli depolama: PII içeren bellekleri şifreli, erişim kontrollü bir bölümde depolayın
- Hiç depolama yapma: Son derece hassas veriler için bellek depolamayı tamamen atlayın ve yetkili sistemlerden gerçek zamanlı alıma güvenin
Veri Saklama Politikaları
Tüm bellekler sonsuza kadar yaşamamalıdır. Saklama katmanlarını tanımlayın:
| Bellek Kategorisi | Saklama Süresi | Gerekçe |
|---|---|---|
| Oturum bağlamı | 24 saat | Geçici, uzun vadeli değer yok |
| Kullanıcı tercihleri | Silme talebi gelene kadar | Temel kişiselleştirme |
| Etkileşim geçmişi | 90 gün | Fayda ve gizlilik dengesi |
| Hassas veriler | Depolama yapma | Düzenleyici uyum |
Çok Kiracılı İzolasyon
Ajanınız birden fazla kuruluşa hizmet ediyorsa, bellek kiracı düzeyinde kesinlikle izole edilmelidir. Org X'teki A kullanıcısına yönelik bir sorgu, Org Y'den bellekleri asla döndürmemelidir. Bunu ad alanı önekleriyle depolama katmanında uygulayın ve zorunlu kiracı filtrelemesiyle alım API'nızda uygulayın. İstisna yok, "isteğe bağlı" kiracı parametreleri yok.
Hangi Bellek Yaklaşımını Seçmelisiniz?
Beş bellek türü ve altı framework ile karar bunaltıcı görünebilir. Bu framework bunu netleştirir.
| İhtiyacınız Varsa... | Bellek Türü | Framework | Depolama |
|---|---|---|---|
| Bir oturum içinde basit sohbet bağlamı | Kısa süreli | LangChain Memory | Bellek içi |
| Oturumlar arası kullanıcı tercihi öğrenme | Semantik | Mem0 | Vektör VT |
| Geçmiş konuşma geri çağırma | Episodik | Zep veya Mem0 | Vektör VT + zaman damgaları |
| Karmaşık ilişki izleme | Graf | Mem0 (graf modu) veya özel | Neo4j |
| Araştırma / derin çok adımlı akıl yürütme | Tüm türler | Letta | Dahili |
| Çoklu ajan iş birliği | Hibrit | Mem0 + ad alanı izolasyonu | Çoklu arka uç |
| LangGraph'a özgü uzun süreli bellek | Semantik + Episodik | LangMem | LangGraph kontrol noktaları |
Karar Akış Şeması
Bu soru zinciriyle başlayın:
Ajanınız yalnızca tek oturumluk mu? Evet ise, LangChain'in ConversationBufferMemory veya ConversationSummaryMemory'si ihtiyacınız olan her şeydir. Aşırı mühendislik yapmayın.
Ajanınızın oturumlar arasında hatırlaması gerekiyor mu? Evet ise, kalıcı bir bellek katmanına ihtiyacınız var. Sonraki soru: neyi hatırlaması gerekiyor?
- Gerçekler ve tercihler (semantik): Mem0 standarttır. Çıkarma, çatışma çözümü ve çoklu arka uç depolamayı yönetir.
- Konuşma geçmişi (episodik): Zep bunun için tasarlanmıştır. Mem0 da bunu iyi yönetir.
- Varlık ilişkileri (graf): Bu birincil ihtiyacınızsa, doğrudan Neo4j veya Mem0'ın graf bellek moduyla gidin.
- Her şey: Letta en kapsamlı bellek yönetimini sunar, ancak daha dik bir öğrenme eğrisine sahiptir. Çoklu arka uçlu Mem0 pragmatik alternatiftir.
Zaten LangChain/LangGraph ekosisteminde misiniz? LangMem, LangGraph'ın kontrol noktası sistemiyle yerel olarak entegre olur. Bu yığına yoğun yatırım yaptıysanız, başka bir bağımlılık eklemekten kaçınırsınız.
Kullanım durumunuz ağırlıklı olarak araştırma veya keşif mi? Letta'nın sanal bellek yaklaşımı — ajanın kendi bağlamını bir işletim sistemi gibi yönettiği — büyük bilgi tabanları üzerinde akıl yürütmesi gereken ajanlar için parlar. Kurulumu daha karmaşıktır, ancak ajana bellek yönetimi üzerinde daha fazla özerklik verir.
Techsy'nin Yapay Zeka Ajan Belleğine Yaklaşımı
Müşteri desteği, araştırma ve geliştirme iş akışlarında ajanlar için bellek sistemleri oluşturduk. Her yeni ajan projesi için izlediğimiz değerlendirme süreci burada:
- Bellek gereksinimlerini haritalayın. Neyin kalıcı olması gerekiyor? Ne kadar süreyle? Hangi bellek türleri zorunlu ve hangileri nice-to-have?
- Depolama mimarisini seçin. Basit durumlar için tek arka uç (Qdrant ile Mem0). Yüksek verimli üretim için iki katmanlı (Redis sıcak yolu + vektör VT soğuk yolu).
- Gizlilik kontrollerini ilk günden uygulayın. PII tespiti, kullanıcı silme akışları, kiracı izolasyonu. Bunları sonradan eklemek zahmetlidir.
- Bellek konsolidasyonunu kurun. Eski bellekleri özetleyen, tekilleştiren ve bozan gece işleri. Bu olmadan, alım kalitesi haftalar içinde düşer.
- Gerçek konuşma akışlarıyla test edin. Yapay testler uç durumları kaçırır. Başlatmadan önce bellek alım kalitesini doğrulamak için üretime benzer konuşma dizileri kullanıyoruz.
Üretim kalitesinde bellek içeren yapay zeka ajanları mı inşa ediyorsunuz? Ücretsiz mimari danışmanlık alın — kullanım durumunuz için doğru bellek türlerini, framework'ü ve depolama arka ucunu seçmenize yardımcı olacağız.
SSS: Yapay Zeka Ajan Belleği Soruları Yanıtlandı
Yapay zeka ajan belleği ile LLM bağlam penceresi arasındaki fark nedir?
Bağlam penceresi, modelin tek bir istekte gördüğü metindir — geçicidir ve boyutla sınırlıdır (128K-200K token). Ajan belleği, istekler ve oturumlar genelinde bilgiyi kalıcı kılan harici bir sistemdir. Bağlam penceresini RAM olarak, ajan belleğini ise sabit diskiniz olarak düşünün.
Yapay zeka ajanları bilgileri unutabilir mi?
Evet, ve unutmalıdır. Bellek bozunması (zaman içinde önem puanlarını düşürme), TTL sona ermesi ve açık silme, belleği ilgili ve yönetilebilir tutmak için hepsi gereklidir. Unutma mekanizması olmayan ajanlar bellek şişmesinden ve alım kalitesi düşüşünden muzdarip olur.
Yapay zeka ajan belleği uygulamak ne kadara mal olur?
Maliyetler büyük farklılıklar gösterir. text-embedding-3-small ile gömme oluşturma, milyon token başına yaklaşık 0,02 dolar tutar. Vektör veritabanı barındırma ücretsiz başlar (Pinecone'un ücretsiz katmanı, kendi barındırdığınız Qdrant) ve üretim iş yükleri için 70-200 dolar/ay'a kadar ölçeklenir. En büyük maliyet sürücüsü genellikle depolama değil, bellek çıkarma ve konsolidasyon için LLM çağrılarıdır.
Yapay zeka ajan belleği GDPR uyumlu mu?
Olabilir — ancak yalnızca bilinçli tasarımla. Kullanıcı kapsamlı bellek etiketlemeye, tüm depolama arka uçlarına yayılan silme API'lerine, depolamadan önce PII tespitine ve denetim izlerine ihtiyacınız var. Framework'lerin hiçbiri kutudan çıktığı haliyle tam GDPR uyumunu yönetmez; üzerine uygulama gerektirir.
Ajan belleği için hangi vektör veritabanını kullanmalıyım?
Çoğu ekip için: yönetilen sadelik istiyorsanız Pinecone, güçlü filtreleme ile açık kaynak istiyorsanız Qdrant, yerleşik ML entegrasyonu istiyorsanız Weaviate. RediSearch ile Redis, sıcak önbellek bellek katmanı olarak iyi çalışır. Seçim insanların düşündüğü kadar nadiren önem taşır — birini seçin ve alım mantığınıza odaklanın.
Mem0, LangChain Memory ile nasıl karşılaştırılır?
LangChain Memory kısa süreli, oturum içi bağlamı yönetir (konuşma tamponu, özet, varlık belleği). Mem0, otomatik çıkarma, çatışma çözümü ve çoklu arka uç desteğiyle uzun süreli, oturumlar arası belleği yönetir. Tamamlayıcıdırlar — oturum yönetimi için LangChain, kalıcı bellek için Mem0 kullanın.
Birden fazla ajan aynı belleği paylaşabilir mi?
Evet, uygun izolasyonla. Kalıp ad alanı tabanlıdır: her ajanın kendi bellek alanı, artı ortak bilgi için paylaşılan bir ad alanı vardır. Mem0 bunu agent_id + user_id kapsamı aracılığıyla destekler. İzolasyon olmadan, ajanlar diğer ajanların etkileşimlerinden alakasız bellekler getirecektir.
Çelişen bellekler nasıl yönetilir?
Çatışma çözümü genellikle güncelliği (yenisi eskinin yerini alır) ve önemli değişiklikler için açık kullanıcı onayını birleştirir. Mem0 yerleşik çatışma tespitini içerir. Özel uygulamalar için yeni belleği aynı kategorideki mevcut girişlerle karşılaştırın ve bir çelişki tespit edilirse UPDATE işlemi tetikleyin.
CoALA framework'ü nedir?
CoALA (Dil Ajanları için Bilişsel Mimariler), ajan belleğini bilişsel bilim kategorilerine — çalışma belleği, episodik, semantik ve prosedürel — eşleyen bir Princeton araştırma framework'üdür. Açıkça alıntılamasalar da çoğu pratik bellek framework'ünün dayandığı akademik temeldir.
Bellek alımındaki gecikme nasıl azaltılır?
Üç strateji: (1) sık belleklerde 10ms altı alım için Redis sıcak önbellek ile iki katmanlı mimari, (2) kullanıcı profiline dayalı olarak konuşma başında muhtemelen ihtiyaç duyulan bellekleri önceden getirme ve (3) vektör benzerlik aramasını çalıştırmadan önce meta veri filtreleriyle (user_id, zaman aralığı, bellek türü) alım kapsamını sınırlama.
RAG ile ajan belleği arasındaki fark nedir?
RAG (Retrieval-Augmented Generation), statik bir bilgi tabanından alım yapar — kullanıcı etkileşimlerine göre değişmeyen belgeler. Ajan belleği, her konuşmayla büyüyen ve değişen dinamik bir depodan alım yapar. RAG "dokümantasyon ne diyor?" demektir. Ajan belleği "bu kullanıcının geçen sefer neye ihtiyacı vardı?" demektir.
Sonuç: Temel Çıkarımlar
Yapay zeka ajanlarına bellek entegre etmek artık isteğe bağlı değil — yararlı ajanları sinir bozucu olanlardan ayıran şey bu. Hatırlanması gerekenler:
- Problemle başlayın, framework'le değil. Araçları seçmeden önce ajanınızın hangi bellek türlerine gerçekten ihtiyaç duyduğunu haritalayın.
- Mem0, 2026'da üretim standardıdır kalıcı, oturumlar arası bellek için. LangChain Memory oturum içi bağlamı yönetir. Gerekirse ikisini birlikte kullanın.
- İki katmanlı mimari (Redis sıcak yolu + vektör VT soğuk yolu), ölçeklenen kalıptır. Tek depolu bir mimariyi üretime göndermeyin.
- Gizlilik ve unutma özellik değil, düşünce sonrası değil. Kullanıcı silme, PII filtreleme ve bellek bozunmasını ilk günden itibaren uygulayın.
- Anti-kalıplar alım kalitesini mahveder. Her şeyi depolamak, çatışmaları yok saymak ve konsolidasyonu atlamak, ajan performansını düşürmenin en hızlı yollarıdır.
Uygulamaya hazır mısınız? Uygulamaya yönelik araç önerileri ve kıyaslamalar için En İyi Yapay Zeka Ajan Bellek Araçları makalemize [yakında] bakın.
Kaynaklar
- CoALA: Dil Ajanları için Bilişsel Mimariler (Princeton)
- Mem0 — Yapay Zeka Ajanları için Bellek Katmanı
- Zep — Yapay Zeka Asistanları için Uzun Süreli Bellek
- Letta (MemGPT) — Durumlu LLM Ajanları
- LangChain Bellek Dokümantasyonu
- LangMem — LangGraph için Uzun Süreli Bellek
- Pinecone — Yapay Zeka Ajan Belleği Rehberi
- Neo4j — Yapay Zeka Ajanları için Bilgi Grafı Belleği
- Redis — Yapay Zeka Ajan Bellek Mimarisi
- Leonie Monigatti — Yapay Zeka Ajanlarında Belleği Anlamak
- GDPR 17. Madde — Silinme Hakkı