Introduction
memU is an open-source memory framework designed to give AI agents the ability to remember information across conversations and sessions. It stores facts, preferences, and interaction history in a structured way that agents can query on demand, making AI assistants feel more personal and context-aware over time.
What memU Does
- Stores and retrieves long-term memories for AI agents per user or session
- Organizes memories using semantic embeddings for relevance-based retrieval
- Supports multiple memory scopes: user-level, session-level, and agent-level
- Provides conflict resolution when new information contradicts existing memories
- Integrates with popular agent frameworks via a simple Python API
Architecture Overview
memU uses a hybrid storage approach combining a vector database for semantic search with a structured metadata store for exact lookups. When an agent adds a memory, it is embedded, deduplicated against existing entries, and indexed for fast retrieval. A consolidation layer periodically merges related memories and resolves contradictions, keeping the memory store coherent as it grows.
Self-Hosting & Configuration
- Install via pip with optional extras for different vector backends
- Configure the storage backend: supports SQLite for local use or PostgreSQL for production
- Set embedding model preferences via environment variables or config file
- Deploy as a standalone service or embed directly in your agent application
- Supports Docker deployment with persistent volume mounting for data durability
Key Features
- Semantic search over memories using configurable embedding models
- Automatic deduplication and contradiction resolution across memory entries
- Multi-tenant architecture supporting isolated memory per user or agent
- Graph-based memory relationships connecting related facts and context
- Compatible with LangChain, CrewAI, and other popular agent frameworks
Comparison with Similar Tools
- Mem0 — Similar concept for agent memory, but memU emphasizes graph-based relationships between memories
- Zep — Focuses on session-based memory with summarization, while memU targets long-term persistent recall
- LangChain Memory — Built into the framework but limited to conversation history without cross-session persistence
- MemGPT (Letta) — Uses LLM-managed virtual context, while memU provides a database-backed memory store
FAQ
Q: How is memU different from a regular vector database? A: memU adds memory-specific logic on top of vector search: deduplication, contradiction resolution, temporal ordering, and agent-aware scoping that plain vector stores do not handle.
Q: Can multiple agents share memories? A: Yes, memU supports agent-level and user-level scoping, so memories can be private to one agent or shared across all agents serving a user.
Q: What embedding models are supported? A: Any sentence-transformers model or OpenAI embedding endpoint can be configured as the embedding backend.
Q: Does it work without an internet connection? A: Yes, when configured with a local embedding model and SQLite storage, memU runs entirely offline.