Ir al contenido

Ingeniería5 de julio de 20266 min de lectura

96,58% de recall en LoCoMo: cómo construimos un engine de retrieval en CPU

La arquitectura detrás de nuestro pipeline de retrieval: BM25 + dense vectors + Personalized PageRank. Sin LLM en el camino de ranking.

Gustavo Franson

Nuestro run canónico de la tabla completa midió 96,58% de recall@10 en LoCoMo. Esta es la arquitectura de retrieval detrás del resultado y por qué el ranking no necesita LLM.

El benchmark

LoCoMo (Long Context Memory) es un benchmark público y peer-reviewed para memoria conversacional. Nuestra tabla completa tiene 1986 preguntas en 10 conversaciones. El líder open-source publicado (pmb) marcó 94,5%. ValorBrain midió 96,58%, un margen de +2,1 puntos porcentuales.

El pipeline

Nuestro retrieval tiene cuatro etapas, fundidas en un único scan de índice:

  1. BM25 (búsqueda por palabra clave) captura las queries de match exacto.
  2. Dense vectors (LFM2.5-Embedding-350M) tratan la similitud semántica. El cambio de Jina v5-small a LFM2.5 llevó el dense-only de 32,7% a 63,5% en la ablación original.
  3. RRF (Reciprocal Rank Fusion) fusiona los resultados BM25 y dense.
  4. Personalized PageRank reordena los resultados por centralidad en el grafo. En aquella ablación, esta etapa sumó 2,4 puntos.

Sin LLM en el ranking

El pipeline de ranking corre en CPU, en menos de un segundo, con costo de token cero. Personalized PageRank es álgebra lineal; no necesita inferencia de modelo.

Eso separa el costo de búsqueda de los tokens de OpenAI o Anthropic. La generación de la respuesta sigue siendo otra etapa y puede usar un modelo de lenguaje.

Lo que aprendimos

  • El modelo de embedding respondió por la mayor parte de la ganancia. El cambio de Jina a LFM2.5 sumó 30,8 puntos en la ablación original.
  • La búsqueda híbrida cubre fallas diferentes. Dense-only pierde matches exactos; BM25-only pierde matches semánticos.
  • Personalized PageRank es barato. Una operación de matriz por query entregó la ganancia final basada en el grafo.

La capa end-to-end

LoCoMo mide retrieval. En BEAM-100K, el pipeline end-to-end acertó 323/400 preguntas (80,8% de exactitud binaria) en 20 conversaciones. El run de 2026-08-23 usó GLM-5.3 Flash (Ox Alpha), effort=max y juez GLM-5.2. El effort máximo sumó cerca de 44% de latencia sobre el estándar; es una configuración de benchmark, no el estándar de chat. Consulta la metodología y el informe completo del run.

Próximo paso

Menos volver a empezar. Más continuidad

Trae un proyecto real. En una conversación mapeamos dónde se pierde el contexto entre las personas y los agentes de tu equipo, y por dónde empezar.