Sobre el proyecto

Hindsight es un sistema de memoria para agentes de código abierto diseñado para ayudar a los agentes de IA a aprender y mejorar con el tiempo, yendo más allá del simple recuerdo de conversaciones. Se posiciona como una alternativa a los enfoques de RAG y grafos de conocimiento para tareas de memoria a largo plazo. ## Qué hace Hindsight organiza los recuerdos mediante estructuras de datos biomiméticas inspiradas en cómo funciona la memoria humana. Los recuerdos se clasifican en: - **Hechos del mundo**: Hechos generales sobre el mundo - **Experiencias**: Las experiencias directas del propio agente - **Observaciones**: Creencias consolidadas y respaldadas por evidencia, formadas a partir de muchos recuerdos a lo largo del tiempo - **Modelos mentales**: Comprensión aprendida del mundo del agente, sintetizada a partir de observaciones y hechos El sistema ofrece tres operaciones principales: 1. **Retain (Retener)** — Almacena nueva información. Utiliza un LLM para extraer entidades, relaciones y datos temporales, y luego los normaliza en representaciones canónicas para su posterior recuperación. 2. **Recall (Recordar)** — Recupera recuerdos mediante cuatro estrategias paralelas: similitud vectorial semántica, coincidencia de palabras clave BM25, enlaces basados en grafos de entidades/temporales/causales, y filtrado temporal por rango de tiempo. Los resultados se fusionan mediante fusión de rangos recíprocos y se reordenan. 3. **Reflect (Reflexionar)** — Realiza un análisis más profundo de los recuerdos existentes para formar nuevas conexiones, responder preguntas complejas o construir una comprensión exhaustiva. Las observaciones se consolidan automáticamente en segundo plano a partir de hechos retenidos relacionados, manteniendo la evidencia de respaldo con citas exactas. Los modelos mentales son respuestas permanentes a preguntas definidas que Hindsight reescribe a medida que el banco aprende más. ## Cómo usarlo ### Opciones de despliegue - **Docker** (recomendado): Ejecuta un único contenedor con `docker run`, exponiendo la API en el puerto 8888 y la interfaz de usuario en el puerto 9999. - **Bare metal**: Instala mediante `pip install hindsight-api` y ejecútalo directamente. - **Kubernetes**: Chart de Helm disponible en `oci://ghcr.io/vectorize-io/charts/hindsight`. - **Embebido (Python)**: `pip install hindsight-all` para un servidor en proceso sin necesidad de un despliegue separado. - **Hindsight Cloud**: Opción gestionada alojada con escalado automático y un SLA de disponibilidad del 99,9 %. El servidor funciona con más de 25 proveedores de LLM, incluidos OpenAI, Anthropic, Gemini, Groq, Bedrock, Ollama y cualquier endpoint compatible con OpenAI. Las suscripciones existentes de ChatGPT Plus, Claude Pro, Cursor y GitHub Copilot funcionan sin necesidad de una clave de API. ### Bibliotecas cliente Python (`hindsight-client`), Node.js/TypeScript (`@vectorize-io/hindsight-client`), Go y una CLI están disponibles. Un ejemplo sencillo: ```python from hindsight_client import Hindsight client = Hindsight(base_url="http://localhost:8888") client.retain(bank_id="my-bank", content="Alice works at Google") results = client.recall(bank_id="my-bank", query="What does Alice do?") ``` ### Integración rápida El wrapper de LiteLLM (`hindsight-litellm`) te permite envolver un cliente LLM existente en dos líneas de código, recordando automáticamente los recuerdos relevantes antes de cada llamada y reteniendo las conversaciones después. Esto cubre más de 100 modelos a través de LiteLLM. ### Integraciones Hindsight incluye más de 60 integraciones que no requieren cambios de código, entre ellas: - **Agentes de programación**: Claude Code, Codex, Cursor, GitHub Copilot, Aider, Cline y otros — con un paquete dedicado para memoria de proyecto por repositorio construida a partir del historial de git. - **Frameworks de agentes**: LangGraph/LangChain, LlamaIndex, CrewAI, Pydantic AI, OpenAI Agents SDK, Google ADK, AutoGen y más. - **No-code/low-code**: n8n, Zapier, Dify, Flowise. - **Aplicaciones**: ChatGPT, Perplexity, Obsidian, Vapi, Pipecat. Cada servidor también expone un endpoint MCP integrado en `/mcp/{bank_id}/`, lo que permite a cualquier cliente MCP usar retain, recall y reflect como herramientas. ## Características clave - **Multilingüe por defecto**: El idioma de entrada se detecta y se preserva; las entidades mantienen su escritura nativa (p. ej., 张伟 permanece como 张伟). - **Memory Defense**: Una política opcional por banco que escanea cada retención en busca de secretos y PII contra 45 patrones, redactando o bloqueando las coincidencias antes del almacenamiento. - **Bancos de memoria**: Almacenes de memoria aislados por usuario, agente o proyecto con estricta ausencia de fugas entre bancos. Los bancos pueden tener rasgos de disposición (escepticismo, literalidad, empatía) que moldean cómo razona reflect. - **Preparado para producción**: PostgreSQL con pgvector u Oracle AI Database para almacenamiento, monitoreo con Prometheus, CLI de administración para operaciones, webhooks para eventos del ciclo de vida, y puntos de extensión de tenant/auth/almacenamiento. - **Páginas de conocimiento**: Documentos vivos que un banco escribe sobre sí mismo, organizados como una wiki y proyectables como archivos markdown. ## Afirmaciones de rendimiento Según el README, Hindsight alcanzó un rendimiento de vanguardia en el benchmark LongMemEval a enero de 2026. Los datos del benchmark fueron reproducidos de forma independiente por investigadores del Sanghani Center de Virginia Tech y The Washington Post; otras puntuaciones son autoinformadas por los proveedores. Los resultados en vivo se publican en benchmarks.hindsight.vectorize.io.