Belleğe genel bakış
Belleğin çalışma şekli.
Yerleşik motor
Varsayılan SQLite arka ucu.
QMD motoru
Önce yerel yaklaşımını kullanan yardımcı süreç.
Bellek araması
Arama işlem hattı ve ayarlama.
Active Memory
Etkileşimli oturumlar için bellek alt aracısı.
openclaw.json içindeki üst düzey memory altında bulunur. Arama varsayılanları memory.search; aracı başına arama geçersiz kılmaları ise agents.entries.*.memory.search kullanır.
Önerilen kişisel aracı iş akışı için
memory.search.rememberAcrossConversations kullanın. Gelişmiş Active Memory hedefleme,
model, istem ve gecikme denetimleri plugins.entries.active-memory altında bulunur.Her iki etkinleştirme yolu, transkript kalıcılığı ve güvenli kullanıma alma
rehberi için Active Memory bölümüne bakın.Konuşmalar arasında hatırlama
Yalnızca güvenilir bir kişisel aracının konuşmalar arası transkript
hatırlamasını kullanması gerektiğinde bunu aracı başına yapılandırın:
memory.search
devralmasını izler. Ayarlanmadığında, yalnızca genel
session.dmScope ayarlanmamışsa veya "main" ise ve hiçbir bağlamada session.dmScope
geçersiz kılması yoksa varsayılan olarak açılır. Yapılandırılmış herhangi bir DM yalıtımı, varsayılan olarak bunu kapatır. Açıkça belirtilen true veya
false her zaman önceliklidir. Etkinleştirilmesi, oturum transkripti dizinlemeyi gerektirir ve
aracının çözümlenmiş bellek kaynaklarına sessions ekler. QMD ile ayrıca
o aracının oturum dışa aktarımını etkinleştirir; bu mod için ayrı bir
memory.qmd.sessions.enabled ayarı gerekmez.
OpenClaw’ın yerleşik bellek sağlayıcısı, bu korumalı yolu hem yerleşik
hem de QMD arka uçlarıyla destekler. Alternatif bellek sağlayıcıları kendi
hatırlama kancalarını ve gelişmiş Active Memory araçlarını kullanmaya devam edebilir, ancak geçerli sağlayıcı
korumalı özel transkript hatırlamayı desteklemediği sürece bu ayar atlanır.
openclaw doctor, desteklenmeyen bir sağlayıcıyı veya memory_search öğesini içermeyen açık bir Active Memory
toolsAllow listesini bildirir.
Getirme sınırı, genel oturum aramasından daha dardır:
- yalnızca aynı aracının tanınan özel konuşmaları uygundur
- yanıtlanan konuşma hariç tutulur
- gruplar ve kanallar kaynak ve hedef olarak hariç tutulur
- bilinmeyen konuşma türleri güvenli biçimde reddedilir
- korumalı alandaki hatırlama, özel konuşmalar arası yetkilendirmeyi kullanamaz
tools.sessions.visibility, oturum anahtarları,
transkript depolama, teslim yönlendirme veya sessions_list,
sessions_history ve sessions_send izinlerini değiştirmez. Active Memory, sınırlı ve
salt okunur bir getirme geçişi gerçekleştirir; kullanılamayan veya zaman aşımına uğrayan getirme,
yanıtı engellemez.
Sağlayıcı seçimi
provider ayarlanmadığında OpenClaw, OpenAI gömmelerini kullanır. Bedrock, DeepInfra, Gemini, GitHub Copilot, Mistral, Ollama,
Voyage, yerel bir GGUF modeli veya OpenAI uyumlu bir /v1/embeddings uç noktası kullanmak için provider
değerini açıkça ayarlayın.
Hâlâ provider: "auto" belirten eski yapılandırmalar openai olarak çözümlenir.
provider ayarlanmamışsa, eski provider: "auto" mevcutsa veya
provider: "none" bilinçli olarak yalnızca FTS modunu seçiyorsa, gömmeler kullanılamadığında
bellekten hatırlama yine de sözcüksel FTS sıralamasını kullanabilir.
Açıkça belirtilen yerel olmayan sağlayıcılar güvenli biçimde reddedilir. memory.search.provider değerini
Bedrock, DeepInfra, Gemini, GitHub
Copilot, LM Studio, Mistral, Ollama, OpenAI, Voyage veya OpenAI uyumlu
özel sağlayıcı gibi uzak destekli somut bir sağlayıcıya ayarlarsanız ve bu sağlayıcı çalışma zamanında kullanılamazsa, memory_search
sessizce yalnızca FTS hatırlamayı kullanmak yerine kullanılamıyor sonucu
döndürür. Sağlayıcı/kimlik doğrulama yapılandırmasını düzeltin, erişilebilir bir sağlayıcıya geçin veya
bilinçli olarak yalnızca FTS hatırlama istiyorsanız provider: "none" değerini ayarlayın.
Özel sağlayıcı kimlikleri
memory.search.provider; ollama gibi belleğe özgü sağlayıcı bağdaştırıcıları veya openai-responses / openai-completions gibi OpenAI uyumlu model API’leri için özel bir models.providers.<id> girdisini gösterebilir. OpenClaw, uç nokta, kimlik doğrulama ve model öneki işlemleri için özel sağlayıcı kimliğini korurken gömme bağdaştırıcısına ait sağlayıcının api sahibini çözümler. Bu, çoklu GPU veya çoklu ana makine kurulumlarının bellek gömmelerini belirli bir yerel uç noktaya ayırmasına olanak tanır:
API anahtarı çözümleme
Uzak gömmeler bir API anahtarı gerektirir. Bedrock bunun yerine AWS SDK varsayılan kimlik bilgisi zincirini kullanır (örnek rolleri, SSO, erişim anahtarları veya Bedrock API anahtarı).Codex OAuth yalnızca sohbet/tamamlama işlemlerini kapsar ve gömme isteklerini karşılamaz.
Uzak uç nokta yapılandırması
Genel OpenAI sohbet kimlik bilgilerini devralmaması gereken genel, OpenAI uyumlu bir/v1/embeddings sunucusu için provider: "openai-compatible" kullanın.
string
Özel API temel URL’si.
string
API anahtarını geçersiz kılar.
object
Ek HTTP üstbilgileri (sağlayıcı varsayılanlarıyla birleştirilir).
Sağlayıcıya özgü yapılandırma
Gemini
Gemini
OpenAI uyumlu girdi türleri
OpenAI uyumlu girdi türleri
OpenAI uyumlu gömme uç noktaları, sağlayıcıya özgü Bu değerlerin değiştirilmesi, sağlayıcının toplu indekslemesi için gömme önbelleği kimliğini etkiler ve üst model etiketleri farklı şekilde ele alıyorsa ardından belleğin yeniden indekslenmesi gerekir.
input_type istek alanlarını etkinleştirebilir. Bu, sorgu ve belge gömmeleri için farklı etiketler gerektiren asimetrik gömme modellerinde kullanışlıdır.Bedrock
Bedrock
Bedrock gömme yapılandırması
Bedrock, AWS SDK varsayılan kimlik bilgisi zincirini ve OpenClaw tarafından denetlenen bir taşıyıcı belirteci kullanır; bu nedenle yapılandırmada API anahtarı saklanmaz. OpenClaw, Bedrock’ın etkinleştirildiği bir bulut sunucusu rolüne sahip EC2 üzerinde çalışıyorsa yalnızca sağlayıcıyı ve modeli ayarlayın:Desteklenen modeller (aile algılama ve varsayılan boyutlarla):
Aktarım hızı son ekli değişkenler (ör.
amazon.titan-embed-text-v1:2:8k) ve bölge ön ekli çıkarım profili kimlikleri (ör. us.amazon.titan-embed-text-v2:0), temel modelin yapılandırmasını devralır.Bölge: şu sırayla çözümlenir: memory.search.remote.baseUrl geçersiz kılması, models.providers.amazon-bedrock.baseUrl yapılandırması, AWS_REGION, AWS_DEFAULT_REGION ve ardından us-east-1 varsayılanı.Kimlik doğrulama: OpenClaw önce AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY veya AWS_BEARER_TOKEN_BEDROCK değerlerini denetler, ardından standart AWS SDK varsayılan kimlik bilgisi sağlayıcı zincirine geçer:- Ortam değişkenleri (
AWS_ACCESS_KEY_ID+AWS_SECRET_ACCESS_KEY),AWS_PROFILEda ayarlanmamışsa - SSO (yalnızca SSO alanları yapılandırıldığında)
- Paylaşılan kimlik bilgileri ve yapılandırma dosyaları (
fromIni,AWS_PROFILEdahil) - Kimlik bilgisi işlemi (AWS yapılandırma dosyasındaki
credential_process) - Web kimlik belirteci kimlik bilgileri
- ECS veya EC2 bulut sunucusu meta verisi kimlik bilgileri
InvokeModel kapsamını belirli modelle sınırlandırın:Yerel (GGUF + llama.cpp)
Yerel (GGUF + llama.cpp)
Önce resmî llama.cpp sağlayıcısını yükleyin:
openclaw plugins install @openclaw/llama-cpp-provider.
Varsayılan model: embeddinggemma-300m-qat-Q8_0.gguf (~0.6 GB, otomatik indirilir). Kaynak kod kopyaları yine de yerel derleme onayı gerektirir: pnpm approve-builds ve ardından pnpm rebuild node-llama-cpp.Gateway’in kullandığı sağlayıcı yolunu doğrulamak için bağımsız CLI’yi kullanın:local.contextSize değerleri, model ağırlıklarıyla istenen gömme bağlamının birlikte sığdırılması için node-llama-cpp’nin otomatik GPU katmanı yerleşimini de belirler. openclaw memory status --deep, çalışma zamanı yüklendikten sonra bilinen son llama.cpp arka ucunu, cihazı, aktarımı, istenen bağlamı ve zaman damgalı bellek bilgilerini bildirir; pasif durum denetimi bir model yüklemez.Yerel GGUF gömmeleri için provider: "local" değerini açıkça ayarlayın. hf: ve HTTP(S) model başvuruları, açık yerel yapılandırmalar için (node-llama-cpp’nin model çözümlemesi aracılığıyla) desteklenir ancak varsayılan sağlayıcıyı değiştirmez.İndeksleme davranışı
Bellek motorları eşitleme, toplu işleme, izleme ve Compaction sonrası indeksleme buluşsal yöntemlerini yönetir. OpenClaw, kurulum başına zamanlama anahtarları sunmak yerine bu davranışları bakımı yapılan varsayılanlarla etkin tutar.Karma arama yapılandırması
Tümümemory.search.query altında:
Karma getirme etkin kalır; MMR ve zamansal azalma, yerleşik motor politikası
tarafından devre dışı bırakılmış olarak kalır.
Tam örnek
Ek bellek yolları
.md dosyaları için özyinelemeli olarak taranır. Sembolik bağlantıların işlenmesi etkin arka uca bağlıdır: yerleşik motor sembolik bağlantıları atlarken QMD, temel QMD tarayıcısının davranışını izler.
Aracı kapsamındaki aracılar arası transkript araması için memory.qmd.paths yerine agents.entries.*.memory.search.qmd.extraCollections kullanın. Bu ek koleksiyonlar aynı { path, name, pattern? } biçimini izler ancak aracı başına birleştirilir ve yol geçerli çalışma alanının dışını gösterdiğinde açık paylaşılan adları koruyabilir. Aynı çözümlenmiş yol hem memory.qmd.paths hem de memory.search.qmd.extraCollections içinde görünürse QMD ilk girdiyi tutar ve yineleneni atlar.
Çok modlu bellek (Gemini)
Gemini Embedding 2 kullanarak Markdown’ın yanı sıra görüntüleri ve sesleri de indeksleyin:Yalnızca
extraPaths içindeki dosyalara uygulanır. Varsayılan bellek kökleri yalnızca Markdown olarak kalır. gemini-embedding-2-preview gerektirir. fallback, "none" olmalıdır..jpg, .jpeg, .png, .webp, .gif, .heic, .heif (görüntüler); .mp3, .wav, .ogg, .opus, .m4a, .aac, .flac (ses).
Gömme önbelleği
Yeniden indeksleme veya transkript güncellemeleri sırasında değişmemiş metnin yeniden gömülmesini önler.
Toplu indeksleme
gemini, openai ve voyage için kullanılabilir. OpenAI toplu işleme, büyük geriye dönük doldurma işlemleri için genellikle en hızlı ve en ucuz seçenektir.
Eşzamanlılık, yoklama ve zaman aşımı davranışı sağlayıcı tarafından yönetilir.
Oturum belleği araması
Oturum transkriptlerini indeksleyin vememory_search aracılığıyla kullanıma sunun:
Model tarafından çağrılan sıradan oturum transkripti araması
tools.sessions.visibility ayarına uyar. Varsayılan
tree görünürlüğü geçerli oturumu, onun başlattığı oturumları ve
ortam grup farkındalığı aracılığıyla izlenen aynı ajana ait grup oturumlarını açığa çıkarır. İlgisiz diğer
oturumlar agent görünürlüğünü gerektirir (veya yalnızca ajanlar arası
hatırlama da gerektiğinde ve ajanlar arası politika buna izin verdiğinde all).
rememberAcrossConversations bu ayarın kapsamını genişletmez. Sınırlı Active Memory
geçişi sırasında aynı ajana ait özel transkriptlerle sınırlı, yalnızca çalışma zamanında
geçerli ayrı bir yetkilendirme sağlar.
Aşağıdaki örneklerde bu ayarlar üst düzey memory.search altında yer alır. Yalnızca bir
ajanın oturum transkriptlerini indekslemesi ve araması gerekiyorsa eşdeğer ayarları ajan başına
memory.search geçersiz kılmasında da uygulayabilirsiniz.
Aynı ajan için gateway’den DM’e hatırlama:
- Yerleşik arka uç
- QMD arka ucu
sources: ["sessions"] tek başına transkriptleri QMD’ye dışa aktarmaz.
memory.qmd.sessions.enabled: true ayarını da yapın. Üst düzey
rememberAcrossConversations: true ayarı istisnadır: ilgili ajan için
gerekli QMD oturum dışa aktarımını dolaylı olarak etkinleştirir. Dolaylı dışa aktarımlar özel kalır:
her zaman varsayılan dahili dışa aktarma konumunu kullanırlar (yapılandırılmış
sessions.exportDir yalnızca açık dışa aktarımlar için geçerlidir), yalnızca
ilgili ajanın konuşmalar arası hatırlaması sırasında aranırlar ve sıradan memory_get
bunları okuyamaz. Açık
memory.qmd.sessions.enabled: true mevcut davranışını korur ve
dışa aktarılan transkriptleri sıradan bellek bütüncesinin parçası hâline getirir.
SQLite vektör hızlandırması (sqlite-vec)
sqlite-vec kullanılamadığında OpenClaw otomatik olarak işlem içi kosinüs benzerliğine geri döner.
İndeks depolama
Yerleşik bellek indeksleri her ajanın OpenClaw SQLite veritabanındaagents/<agentId>/agent/openclaw-agent.sqlite konumunda bulunur.
QMD arka uç yapılandırması
Etkinleştirmek içinmemory.backend = "qmd" ayarını yapın. Tüm QMD ayarları memory.qmd altında bulunur:
searchMode: "search" yalnızca sözcüksel/BM25’tir. OpenClaw, memory status --deep sırasında da dâhil olmak üzere bu mod için anlamsal vektör hazır olma yoklamaları veya QMD gömme bakımı çalıştırmaz; vsearch ve query QMD vektör hazırlığını ve gömmeleri gerektirmeye devam eder.
rerank: false yalnızca QMD query modunu değiştirir ve QMD 2.1 veya daha yenisini gerektirir. Doğrudan CLI modunda OpenClaw --no-rerank değerini; mcporter destekli MCP modunda ise QMD’nin birleşik sorgu aracına rerank: false değerini iletir. QMD’nin varsayılan sorgu yeniden sıralama davranışını kullanmak için ayarlamadan bırakın.
OpenClaw güncel QMD koleksiyon ve MCP sorgu biçimlerini tercih eder ancak gerektiğinde uyumlu koleksiyon kalıbı bayraklarını ve eski MCP araç adlarını deneyerek eski QMD sürümlerinin çalışmasını sağlar. QMD birden fazla koleksiyon filtresini desteklediğini bildirdiğinde aynı kaynağa ait koleksiyonlar tek bir QMD işlemiyle aranır; eski QMD derlemeleri koleksiyon başına uyumluluk yolunu korur. Aynı kaynak, kalıcı bellek koleksiyonlarının (varsayılan bellek dosyaları ve özel yollar) birlikte gruplandırılması anlamına gelir; oturum transkripti koleksiyonları ise kaynak çeşitlendirmesinin her iki girdiyi de koruması için ayrı bir grup olarak kalır.
QMD model geçersiz kılmaları OpenClaw yapılandırmasında değil, QMD tarafında kalır. QMD modellerini genel olarak geçersiz kılmanız gerekiyorsa gateway çalışma zamanı ortamında
QMD_EMBED_MODEL, QMD_RERANK_MODEL ve QMD_GENERATE_MODEL gibi ortam değişkenlerini ayarlayın.Sınırlar
Sınırlar
Kapsam
Kapsam
Hangi oturumların QMD arama sonuçlarını alabileceğini denetler. Sunulan varsayılan yalnızca DM/doğrudan oturumlara izin verir; grupları ve diğer kanal türlerini reddeder.
session.sendPolicy ile aynı şema:match.keyPrefix normalleştirilmiş oturum anahtarıyla; match.rawKeyPrefix ise agent:<id>: dâhil ham anahtarla eşleşir.Atıflar
Atıflar
memory.citations tüm arka uçlar için geçerlidir:Tam QMD örneği
Dreaming
Dreaming,memory.search altında değil, plugins.entries.memory-core.config.dreaming altında yapılandırılır.
Dreaming, zamanlanmış tek bir tarama olarak çalışır ve dahili hafif/derin/REM aşamalarını uygulama ayrıntısı olarak kullanır.
Kavramsal davranış ve eğik çizgi komutları için Dreaming sayfasına bakın.
Kullanıcı ayarları
Örnek
- Dreaming, makine durumunu
memory/.dreams/konumuna yazar. - Dreaming, insan tarafından okunabilen anlatı çıktısını
DREAMS.md(veya mevcutdreams.md) konumuna yazar. dreaming.modelmevcut Plugin alt ajan güvenlik kapısını kullanır; etkinleştirmeden önceplugins.entries.memory-core.subagent.allowModelOverride: trueayarını yapın.- Yapılandırılan model kullanılamadığında Dream Diary, oturumun varsayılan modeliyle bir kez daha dener. Güven veya izin listesi hataları günlüğe kaydedilir ve sessizce yeniden denenmez.
- Hafif/derin/REM aşama politikası ve eşikleri, kullanıcıya yönelik yapılandırma değil, dahili davranıştır.