Ana içeriğe atla
Yerleşik motor varsayılan bellek arka ucudur. Bellek dizininizi ajan başına SQLite veritabanında saklar ve başlamak için ek bağımlılık gerektirmez.

Neler sağlar

  • FTS5 tam metin dizinleme (BM25 puanlama) ile anahtar sözcük araması.
  • Desteklenen herhangi bir sağlayıcıdan gelen gömmeler ile vektör araması.
  • En iyi sonuçlar için ikisini birleştiren hibrit arama.
  • Çince, Japonca ve Korece için trigram tokenizasyonuyla CJK desteği.
  • Veritabanı içi vektör sorguları için sqlite-vec hızlandırması (isteğe bağlı).

Başlarken

Varsayılan olarak yerleşik motor OpenAI gömmelerini kullanır. Zaten OPENAI_API_KEY veya models.providers.openai.apiKey yapılandırdıysanız, vektör araması ek bellek yapılandırması olmadan çalışır. Bir sağlayıcıyı açıkça ayarlamak için:
{
  agents: {
    defaults: {
      memorySearch: {
        provider: "openai",
      },
    },
  },
}
Bir gömme sağlayıcısı olmadan yalnızca anahtar sözcük araması kullanılabilir. Yerel GGUF gömmelerini zorunlu kılmak için resmi llama.cpp sağlayıcı Plugin’ini kurun, ardından local.modelPath değerini bir GGUF dosyasına yönlendirin:
openclaw plugins install @openclaw/llama-cpp-provider
{
  agents: {
    defaults: {
      memorySearch: {
        provider: "local",
        fallback: "none",
        local: {
          modelPath: "~/.node-llama-cpp/models/embeddinggemma-300m-qat-Q8_0.gguf",
        },
      },
    },
  },
}

Desteklenen gömme sağlayıcıları

SağlayıcıIDNotlar
BedrockbedrockAWS kimlik bilgisi zincirini kullanır
DeepInfradeepinfraVarsayılan: BAAI/bge-m3
GeminigeminiÇok modluyu destekler (görüntü + ses)
GitHub Copilotgithub-copilotCopilot aboneliğini kullanır
Yerellocal@openclaw/llama-cpp-provider
Mistralmistral
OllamaollamaYerel/kendi barındırmalı
OpenAIopenaiVarsayılan: text-embedding-3-small
OpenAI uyumluopenai-compatibleGenel /v1/embeddings uç noktası
Voyagevoyage
OpenAI’dan ayrılmak için memorySearch.provider değerini ayarlayın.

Dizinleme nasıl çalışır

OpenClaw, MEMORY.md ve memory/*.md dosyalarını parçalara (~400 token, 80 token örtüşme ile) dizinler ve ajan başına bir SQLite veritabanında saklar.
  • Dizin konumu: sahip olan ajan veritabanı: ~/.openclaw/agents/<agentId>/agent/openclaw-agent.sqlite
  • Depolama bakımı: SQLite WAL yan dosyaları periyodik ve kapanış checkpoint’leriyle sınırlandırılır.
  • Dosya izleme: bellek dosyalarındaki değişiklikler gecikmeli yeniden dizinlemeyi tetikler (1,5 sn).
  • Otomatik yeniden dizinleme: gömme sağlayıcısı, model veya parçalama yapılandırması değiştiğinde tüm dizin otomatik olarak yeniden oluşturulur.
  • İsteğe bağlı yeniden dizinleme: openclaw memory index --force
memorySearch.extraPaths ile çalışma alanı dışındaki Markdown dosyalarını da dizinleyebilirsiniz. Bkz. yapılandırma başvurusu.

Ne zaman kullanılmalı

Yerleşik motor çoğu kullanıcı için doğru seçimdir:
  • Ek bağımlılık olmadan kutudan çıktığı gibi çalışır.
  • Anahtar sözcük ve vektör aramasını iyi şekilde işler.
  • Tüm gömme sağlayıcılarını destekler.
  • Hibrit arama, iki getirme yaklaşımının en iyi yönlerini birleştirir.
Yeniden sıralama, sorgu genişletme gerekiyorsa veya çalışma alanı dışındaki dizinleri dizinlemek istiyorsanız QMD seçeneğine geçmeyi düşünün. Otomatik kullanıcı modelleme ile oturumlar arası bellek istiyorsanız Honcho seçeneğini düşünün.

Sorun giderme

Bellek araması devre dışı mı? openclaw memory status komutunu kontrol edin. Hiçbir sağlayıcı algılanmazsa, birini açıkça ayarlayın veya bir API anahtarı ekleyin. Yerel sağlayıcı algılanmıyor mu? Yerel yolun var olduğunu doğrulayın ve şunu çalıştırın:
openclaw memory status --deep --agent main
openclaw memory index --force --agent main
Hem bağımsız CLI komutları hem de Gateway aynı local sağlayıcı kimliğini kullanır. Yerel gömmeler istediğinizde memorySearch.provider: "local" ayarlayın. Sonuçlar bayat mı? Yeniden oluşturmak için openclaw memory index --force çalıştırın. İzleyici nadir uç durumlarda değişiklikleri kaçırabilir. sqlite-vec yüklenmiyor mu? OpenClaw otomatik olarak süreç içi kosinüs benzerliğine geri döner. openclaw memory status --deep, yerel vektör deposunu gömme sağlayıcısından ayrı bildirir; bu nedenle Vector store: unavailable sqlite-vec yüklemesine, Embeddings: unavailable ise sağlayıcı/kimlik doğrulama veya model hazır olma durumuna işaret eder. Belirli yükleme hatası için günlükleri kontrol edin.

Yapılandırma

Gömme sağlayıcısı kurulumu, hibrit arama ayarı (ağırlıklar, MMR, zamansal azalma), toplu dizinleme, çok modlu bellek, sqlite-vec, ek yollar ve diğer tüm yapılandırma düğmeleri için Bellek yapılandırması başvurusu bölümüne bakın.

İlgili