La búsqueda en memoria de OpenClaw
Embeddings más palabras clave, la fórmula de clasificación, el decaimiento por antigüedad, la recuperación por disparadores y qué pasa cuando falta el proveedor
La herramienta de búsqueda en memoria encuentra notas relevantes en los archivos de memoria de un agente incluso cuando la redacción difiere del texto original: divide la memoria en fragmentos pequeños y los busca con embeddings, con palabras clave o con ambos. Los embeddings de OpenAI son la opción predeterminada y se admite una docena de proveedores, entre ellos uno local gestionado que no necesita clave de API. Así funciona una búsqueda, la clasificación que detalla la documentación, la recuperación por disparadores que se ejecuta antes de una respuesta, las reglas de respaldo, la memoria de sesiones y la lista de solución de problemas.
Los proveedores y las dos vías
- La clave de proveedor designa uno de estos: OpenAI, Gemini, Voyage, Mistral, Bedrock, DeepInfra, GitHub Copilot, Ollama, LM Studio, un endpoint genérico compatible con OpenAI o local, que instala un servidor llama.cpp verificado y un modelo de embeddings pequeño de alrededor de un tercio de gigabyte; también funciona una entrada de proveedor personalizada cuando usa un tipo de API compatible.
- Dos vías de recuperación se ejecutan en paralelo y se combinan: la búsqueda vectorial encuentra significados parecidos, así que una consulta sobre el host del Gateway encuentra una nota sobre la máquina que ejecuta OpenClaw, y la búsqueda por palabras clave BM25 encuentra términos exactos como ids, cadenas de error y claves de configuración. Si solo está disponible una vía, esa vía se ejecuta sola.
- La búsqueda por nombre de archivo indexa las rutas por separado del contenido, así que una ruta exacta, un nombre base o un nombre sin extensión se clasifica por delante de las coincidencias parciales, mientras que los fragmentos siguen saliendo del contenido de las notas.
- Algunos endpoints compatibles con OpenAI necesitan tipos de entrada asimétricos para consultas y documentos, que se definen con dos claves de configuración.
Las notas antiguas pierden peso en la clasificación de forma gradual para que la información reciente aparezca primero.
La clasificación
El motor integrado aplica una fórmula determinista: relevancia híbrida multiplicada por el decaimiento por antigüedad y por un multiplicador de importancia. La importancia se puntúa una sola vez, cuando escribe la entrada un flujo de memoria que ya tiene un modelo en el bucle, y una puntuación ausente es neutra. Las notas diarias con fecha decaen con una vida media de treinta días, de modo que la nota del mes pasado puntúa con la mitad de su peso original, mientras que los archivos curados de memoria y de usuario y los archivos sin fecha se mantienen siempre vigentes. La documentación atribuye el resultado de relevancia, actualidad e importancia al artículo Generative Agents, sin añadir una llamada al modelo en el momento de la consulta. Después, una pasada de diversidad reordena los candidatos puntuados para reducir los fragmentos casi idénticos, con un ajuste fijo sesgado hacia la relevancia y un conjunto de candidatos acotado, sin cambiar las puntuaciones ni llamar a un proveedor. Las coincidencias por palabras clave se conservan cuando todos los resultados clasificados quedan por debajo de la puntuación mínima configurada, y la búsqueda híbrida rellena los huecos restantes con resultados que solo coinciden por palabras clave.
La recuperación por disparadores y las reglas de respaldo
- En los turnos interactivos que cumplen los requisitos, el motor compara el mensaje entrante con frases disparadoras cortas almacenadas en las entradas indexadas y puede añadir hasta tres entradas compactas al contexto oculto antes de la respuesta; solo se tienen en cuenta las entradas promovidas y de confianza de los archivos raíz de memoria y de usuario, y las notas diarias y las transcripciones importadas y de sesión nunca se inyectan automáticamente.
- Establecer el proveedor en none desactiva a propósito los embeddings para una búsqueda solo por palabras clave; dejarlo sin definir o en auto recurre a la clasificación solo por palabras clave cuando falla la configuración de los embeddings o una solicitud, igual que el proveedor local, y la indexación sigue registrando el texto para la búsqueda por palabras clave antes de la primera búsqueda.
- Si nombras explícitamente cualquier otro proveedor y falla en el momento de la solicitud, la herramienta indica que la memoria no está disponible en lugar de degradarse en silencio, lo que mantiene visible una configuración rota; la solución es corregir la configuración del proveedor o de la autenticación, o usar none para una recuperación deliberada solo por palabras clave.
La memoria de OpenClaw, explicada explica los archivos en los que se busca, y el dreaming de OpenClaw, el barrido nocturno que decide qué se promueve a ellos y, por tanto, qué puede inyectar la recuperación por disparadores.
La memoria de sesiones y la solución de problemas
La recuperación exacta de texto completo a partir de las transcripciones corresponde a la herramienta de búsqueda de sesiones; indexar las transcripciones en la búsqueda en memoria es opcional y se activa con un indicador experimental y una lista de fuentes, con una opción de corpus para buscar solo en las notas, ajustes de visibilidad cuyo valor predeterminado es todo y un acceso entre agentes que se rige por el ajuste de agente a agente. Las imágenes y el audio pueden indexarse junto al Markdown con un modelo de embeddings de Gemini, pero solo en rutas adicionales, no en las raíces de memoria predeterminadas. Cuando no hay resultados, comprueba el estado del índice y reconstrúyelo; cuando solo vuelven coincidencias por palabras clave, probablemente el proveedor de embeddings no esté configurado, algo que muestra el estado detallado; cuando los embeddings locales agotan el tiempo de espera, inspecciona los endpoints del servidor gestionado antes de reconstruir; y el texto CJK que no se encuentra necesita una reconstrucción forzada del índice. Los modelos locales de OpenClaw trata los modelos locales junto a los que se sitúan los proveedores locales, y las sesiones de OpenClaw, las transcripciones que indexa esa opción.
En Diali
En Diali, la búsqueda en memoria funciona con el proveedor de embeddings que le proporcione tu clave de modelo y, si no hay ninguno, recurre a la vía de palabras clave que describe la documentación; en ambos casos, las notas viven en el espacio de trabajo persistente del asistente. OpenClaw alojado en Diali es el asistente.
- Vectorial para el significado, BM25 para los términos exactos, y ambos combinados.
- Relevancia por actualidad por importancia; las notas diarias pierden la mitad de su peso cada treinta días.
- Un proveedor explícito que falla se notifica, nunca se oculta.
Deja de leer sobre ello y crea el tuyo
Configura un agente, elige un canal y ponlo a trabajar dentro de la aplicación que ya tienes abierta.
