Recherche de mémoire
Recherche de mémoire
Section intitulée « Recherche de mémoire »memory_search trouve des notes pertinentes dans vos fichiers de mémoire, même lorsque
la formulation diffère du texte original. Il fonctionne en indexant la mémoire en petits
morceaux et en les recherchant à l’aide d’embeddings, de mots-clés ou des deux.
Quick start
Section intitulée « Quick start »Si vous avez une clé OpenAI, Gemini, Voyage ou Mistral API configurée, la recherche de mémoire fonctionne automatiquement. Pour définir un provider explicitement :
{ agents: { defaults: { memorySearch: { provider: "openai", // or "gemini", "local", "ollama", etc. }, }, },}Pour les embeddings locaux sans clé API, utilisez provider: "local" (nécessite
node-llama-cpp).
Providers pris en charge
Section intitulée « Providers pris en charge »| Provider | ID | Nécessite une clé API | Notes |
|---|---|---|---|
| OpenAI | openai | Oui | Détecté automatiquement, rapide |
| Gemini | gemini | Oui | Prend en charge l’indexation d’images/audio |
| Voyage | voyage | Oui | Détecté automatiquement |
| Mistral | mistral | Oui | Détecté automatiquement |
| Ollama | ollama | Non | Local, doit être défini explicitement |
| Local | local | Non | Modèle GGUF, téléchargement de ~0,6 Go |
Fonctionnement de la recherche
Section intitulée « Fonctionnement de la recherche »OpenClaw exécute deux chemins de récupération en parallèle et fusionne les résultats :
flowchart LR Q["Query"] --> E["Embedding"] Q --> T["Tokenize"] E --> VS["Vector Search"] T --> BM["BM25 Search"] VS --> M["Weighted Merge"] BM --> M M --> R["Top Results"]- La recherche vectorielle trouve des notes ayant une signification similaire (“hôte de passerelle” correspond à “la machine exécutant OpenClaw”).
- La recherche de mots-clés BM25 trouve des correspondances exactes (ID, chaînes d’erreur, clés de configuration).
Si un seul chemin est disponible (pas d’embeddings ou pas de FTS), l’autre fonctionne seul.
Amélioration de la qualité de la recherche
Section intitulée « Amélioration de la qualité de la recherche »Deux fonctionnalités optionnelles aident lorsque vous avez un long historique de notes :
Décroissance temporelle
Section intitulée « Décroissance temporelle »Les anciennes notes perdent progressivement du poids dans le classement afin que les informations récentes apparaissent en premier.
Avec la demi-vie par défaut de 30 jours, une note du mois dernier est notée à 50 % de
son poids initial. Les fichiers pérennes comme MEMORY.md ne sont jamais dépréciés.
MMR (diversité)
Section intitulée « MMR (diversité) »Réduit les résultats redondants. Si cinq notes mentionnent toutes la même configuration de routeur, MMR garantit que les premiers résultats couvrent différents sujets au lieu de se répéter.
Activer les deux
Section intitulée « Activer les deux »{ agents: { defaults: { memorySearch: { query: { hybrid: { mmr: { enabled: true }, temporalDecay: { enabled: true }, }, }, }, }, },}Mémoire multimodale
Section intitulée « Mémoire multimodale »Avec Gemini Embedding 2, vous pouvez indexer des images et des fichiers audio avec le Markdown. Les requêtes de recherche restent textuelles, mais elles correspondent au contenu visuel et audio. Voir la référence de configuration de la mémoire pour la configuration.
Recherche dans la mémoire de session
Section intitulée « Recherche dans la mémoire de session »Vous pouvez éventuellement indexer les transcriptions de session pour que memory_search puisse rappeler
les conversations précédentes. Cela est optionnel via
memorySearch.experimental.sessionMemory. Voir la
référence de configuration pour plus de détails.
Dépannage
Section intitulée « Dépannage »Aucun résultat ? Exécutez openclaw memory status pour vérifier l’index. S’il est vide, exécutez
openclaw memory index --force.
Uniquement des correspondances par mot-clé ? Votre fournisseur d’embeddings n’est peut-être pas configuré. Vérifiez
openclaw memory status --deep.
Texte CJK introuvable ? Reconstruisez l’index FTS avec
openclaw memory index --force.
Pour aller plus loin
Section intitulée « Pour aller plus loin »- Mémoire — disposition des fichiers, backends, outils
- Référence de configuration de la mémoire — tous les paramètres de configuration