Zum Hauptinhalt springen

Documentation Index

Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt

Use this file to discover all available pages before exploring further.

memory_search findet relevante Notizen aus Ihren Speicherdateien, auch wenn die Formulierung vom Originaltext abweicht. Es funktioniert, indem Speicher in kleine Abschnitte indexiert und diese mithilfe von Embeddings, Schlüsselwörtern oder beidem durchsucht werden.

Schnellstart

Wenn Sie ein GitHub Copilot-Abonnement, OpenAI, Gemini, Voyage oder einen Mistral-API-Schlüssel konfiguriert haben, funktioniert die Speichersuche automatisch. So legen Sie einen Provider explizit fest:
{
  agents: {
    defaults: {
      memorySearch: {
        provider: "openai", // or "gemini", "local", "ollama", etc.
      },
    },
  },
}
Für Setups mit mehreren Endpunkten kann provider auch ein benutzerdefinierter models.providers.<id>-Eintrag sein, z. B. ollama-5080, wenn dieser Provider api: "ollama" oder einen anderen Eigentümer eines Embedding-Adapters festlegt. Für lokale Embeddings ohne API-Schlüssel setzen Sie provider: "local". Source-Checkouts können weiterhin eine Freigabe für native Builds erfordern: pnpm approve-builds und dann pnpm rebuild node-llama-cpp. Einige OpenAI-kompatible Embedding-Endpunkte erfordern asymmetrische Labels wie input_type: "query" für Suchen und input_type: "document" oder "passage" für indexierte Abschnitte. Konfigurieren Sie diese mit memorySearch.queryInputType und memorySearch.documentInputType; siehe die Referenz zur Speicherkonfiguration.

Unterstützte Provider

ProviderIDAPI-Schlüssel erforderlichHinweise
BedrockbedrockNeinAutomatisch erkannt, wenn die AWS-Anmeldekette aufgelöst wird
GeminigeminiJaUnterstützt Bild-/Audioindexierung
GitHub Copilotgithub-copilotNeinAutomatisch erkannt, verwendet das Copilot-Abonnement
LocallocalNeinGGUF-Modell, Download mit ~0,6 GB
MistralmistralJaAutomatisch erkannt
OllamaollamaNeinLokal, muss explizit festgelegt werden
OpenAIopenaiJaAutomatisch erkannt, schnell
VoyagevoyageJaAutomatisch erkannt

Funktionsweise der Suche

OpenClaw führt zwei Abrufpfade parallel aus und führt die Ergebnisse zusammen:
  • Vektorsuche findet Notizen mit ähnlicher Bedeutung (“gateway host” passt zu “the machine running OpenClaw”).
  • BM25-Schlüsselwortsuche findet exakte Übereinstimmungen (IDs, Fehlerstrings, Konfigurationsschlüssel).
Wenn nur ein Pfad verfügbar ist (keine Embeddings oder kein FTS), wird der andere allein ausgeführt. Wenn Embeddings nicht verfügbar sind, verwendet OpenClaw weiterhin lexikalisches Ranking über FTS-Ergebnisse, anstatt nur auf rohe Reihenfolge nach exakter Übereinstimmung zurückzufallen. Dieser eingeschränkte Modus wertet Abschnitte mit stärkerer Abdeckung der Suchbegriffe und relevanten Dateipfaden höher, wodurch der Abruf auch ohne sqlite-vec oder einen Embedding-Provider nützlich bleibt.

Suchqualität verbessern

Zwei optionale Funktionen helfen, wenn Sie einen großen Notizverlauf haben:

Zeitlicher Verfall

Alte Notizen verlieren nach und nach Ranking-Gewicht, damit aktuelle Informationen zuerst erscheinen. Mit der standardmäßigen Halbwertszeit von 30 Tagen erzielt eine Notiz vom letzten Monat 50 % ihres ursprünglichen Gewichts. Dauerhaft relevante Dateien wie MEMORY.md verfallen nie.
Aktivieren Sie zeitlichen Verfall, wenn Ihr Agent monatelange tägliche Notizen hat und veraltete Informationen aktuellen Kontext weiterhin überranken.

MMR (Diversität)

Reduziert redundante Ergebnisse. Wenn fünf Notizen alle dieselbe Router-Konfiguration erwähnen, stellt MMR sicher, dass die Top-Ergebnisse verschiedene Themen abdecken, anstatt Wiederholungen zu liefern.
Aktivieren Sie MMR, wenn memory_search immer wieder nahezu doppelte Ausschnitte aus verschiedenen täglichen Notizen zurückgibt.

Beides aktivieren

{
  agents: {
    defaults: {
      memorySearch: {
        query: {
          hybrid: {
            mmr: { enabled: true },
            temporalDecay: { enabled: true },
          },
        },
      },
    },
  },
}

Multimodaler Speicher

Mit Gemini Embedding 2 können Sie Bilder und Audiodateien zusammen mit Markdown indexieren. Suchanfragen bleiben textbasiert, stimmen aber mit visuellen und Audioinhalten überein. Informationen zur Einrichtung finden Sie in der Referenz zur Speicherkonfiguration.

Speichersuche für Sitzungen

Sie können optional Sitzungstranskripte indexieren, damit memory_search sich an frühere Unterhaltungen erinnern kann. Dies ist per Opt-in über memorySearch.experimental.sessionMemory möglich. Details finden Sie in der Konfigurationsreferenz.

Fehlerbehebung

Keine Ergebnisse? Führen Sie openclaw memory status aus, um den Index zu prüfen. Wenn er leer ist, führen Sie openclaw memory index --force aus. Nur Schlüsselworttreffer? Ihr Embedding-Provider ist möglicherweise nicht konfiguriert. Prüfen Sie openclaw memory status --deep. Lokale Embeddings laufen in ein Timeout? ollama, lmstudio und local verwenden standardmäßig ein längeres Inline-Batch-Timeout. Wenn der Host einfach langsam ist, setzen Sie agents.defaults.memorySearch.sync.embeddingBatchTimeoutSeconds und führen Sie openclaw memory index --force erneut aus. CJK-Text nicht gefunden? Erstellen Sie den FTS-Index mit openclaw memory index --force neu.

Weiterführende Informationen

Verwandt