Búsqueda vectorial no es suficiente: Por qué añadí BM25 (Búsqueda híbrida) a mi Servidor de Memoria de IA
La semana pasada lancé MemVault, una capa de memoria open source para agentes de inteligencia artificial construida sobre PostgreSQL y pgvector. La acogida fue excelente y la comunidad ofreció estrellas y forks, pero al probarlo a mayor escala surgió un problema arquitectónico importante.
El problema principal es que los vectores son difusos. En mi diseño inicial confié al 100 por ciento en la similitud por coseno. Conceptualmente funciona muy bien: palabras como Apple y Fruit quedan cerca en el espacio semántico. En la práctica falla en detalles críticos. Si un agente debe recordar Error Code 503, una búsqueda vectorial puede devolver Error Code 404 porque ambos son errores de servidor y son semánticamente similares, aunque lo que se necesitaba era una coincidencia exacta. Para un sistema de memoria listo para producción la coincidencia difusa no es suficiente: hace falta precisión para identificadores, nombres propios y términos técnicos.
La solución fue diseñar una Búsqueda Híbrida 2.0. Tras revisar la arquitectura dediqué tiempo a refactorizar el motor de recuperación y pasé de un enfoque puramente vectorial a un modelo híbrido que se ejecuta íntegramente dentro de PostgreSQL. Ahora calcula una puntuación ponderada basada en tres factores: semántica mediante pgvector, coincidencia exacta mediante tsvector y BM25, y recencia mediante una función de decaimiento temporal que prioriza recuerdos recientes.
La fórmula de puntuación se calcula en la consulta SQL al vuelo y combina los tres componentes para obtener un resultado balanceado. Un ejemplo de la fórmula es FinalScore = (VectorScore * 0.5) + (KeywordScore * 0.3) + (RecencyScore * 0.2). Con esto si se busca un ID de usuario específico la puntuación de palabras clave sube y prevalece sobre coincidencias semánticas similares pero incorrectas.
Otro requisito frecuente fue eliminar la dependencia de proveedores externos de embeddings. Implementé un patrón proveedor que permite cambiar el generador de embeddings con una sola variable de entorno. Ahora es posible sustituir OpenAI por una instancia local de Ollama que corre nomic-embed-text, lo que permite desplegar toda la pila de forma completamente local y air gapped: base de datos, API e inferencia en la misma infraestructura.
Para verificar la eficacia de la nueva lógica de puntuación mejoré el Visualizer Dashboard. El panel muestra en tiempo real cómo la puntuación híbrida conecta la consulta con nodos de memoria concretos, facilitando la depuración y la comprensión del proceso de recuperación, algo que resulta difícil cuando solo se analizan logs JSON de similitud vectorial.
El proyecto incluye un archivo docker compose que levanta la API, Postgres con extensiones de vector y texto, y el frontend con un solo comando, lo que simplifica mucho el despliegue para pruebas y entornos productivos. MemVault es útil para desarrollar agentes IA con memoria a largo plazo sin configurar servicios externos como Pinecone o Weaviate y sin repetir el mismo boilerplate de embeddings en cada proyecto.
En Q2BSTUDIO somos expertos en desarrollo de software a medida y aplicaciones a medida, y acompañamos a las empresas en la integración de soluciones como esta en entornos reales. Ofrecemos servicios de integración para agentes IA y arquitecturas que combinan motores semánticos y buscadores por palabras clave, siempre pensando en seguridad y escalabilidad. Si buscas potenciar tus soluciones con inteligencia artificial contamos con un equipo especializado en proyectos de inteligencia artificial para empresas y en la creación de APIs y microservicios a medida.
Además, integramos despliegues en la nube y ofrecemos soporte para servicios cloud aws y azure, lo que facilita pasar de una prueba local a un entorno gestionado y seguro. Si tu proyecto requiere un desarrollo personalizado podemos diseñar la arquitectura completa y automatizar despliegues con buenas prácticas de seguridad y continuidad operativa. Conocemos también las necesidades de ciberseguridad y hacemos pruebas de pentesting para asegurar que las integraciones son robustas y cumplen normativa.
MemVault y su búsqueda híbrida son un buen ejemplo de cómo combinar técnicas para ofrecer memorias precisas y escalables a agentes IA. Si te interesa una implementación a medida podemos ayudarte a integrarla en tus procesos de negocio, conectar con soluciones de inteligencia de negocio y Power BI para análisis avanzado, o desplegarla como parte de una plataforma segura y gestionada. Para proyectos que requieren software a medida y aplicaciones a medida visita nuestra página de servicios y descubre cómo adaptamos la tecnología a tus objetivos.
Si quieres probar la implementación o discutir un proyecto, en Q2BSTUDIO podemos asesorar en diseño, desarrollo, despliegue y mantenimiento de sistemas que combinan embeddings locales, búsqueda híbrida y control de acceso seguro. También apoyamos en servicios de inteligencia de negocio, automatización de procesos y todo el ciclo de vida del software pensado para empresas que quieren sacar partido real de la IA y los agentes IA.
Palabras clave integradas para posicionamiento: aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA, power bi.
Comentarios