Skip to content

Open Source Features Fresh

Production-ready capabilities for self-hosted Mem0 deployments.

Feature Overview

FeatureDescription
Graph MemoryStore and recall entity relationships across multiple hops
Metadata FilteringQuery using logical operators with nested conditions
Search with RerankingEnhanced relevance through specialized ranking models
Async OperationsNon-blocking calls for high-volume applications
Multimodal SupportHandle images, audio, and video as memory inputs
Custom Fact ExtractionModify how text becomes structured facts
Custom Memory UpdatesApply personalized refinement instructions
REST APIHTTP-based integration for any language
OpenAI CompatibilityDrop-in replacement for OpenAI chat endpoints

Graph Memory

Pairs vector embeddings with graph structures to preserve entity relationships.

Setup

bash
pip install "mem0ai[graph]"

Configuration

python
from mem0 import Memory

config = {
    "graph_store": {
        "provider": "neo4j",
        "config": {
            "url": "bolt://localhost:7687",
            "username": "neo4j",
            "password": "password"
        }
    },
    "vector_store": {
        "provider": "qdrant",
        "config": {
            "collection_name": "memories",
            "host": "localhost",
            "port": 6333
        }
    }
}

memory = Memory.from_config(config)

Supported Graph Backends

  • Neo4j / Neo4j Aura (managed)
  • Memgraph (Docker)
  • AWS Neptune Analytics / Neptune DB
  • Kuzu (embedded)
  • Apache AGE (PostgreSQL extension)

Features

  • Custom extraction prompts for entity/relationship extraction
  • Confidence thresholds to filter low-confidence edges
  • Per-request toggles for vector-only fallback
  • Multi-agent organization using user_id, agent_id, run_id

Metadata Filtering

python
results = memory.search(
    "preferences",
    user_id="alice",
    filters={"category": {"in": ["food", "travel"]}}
)

Async Operations

python
from mem0 import AsyncMemory

memory = AsyncMemory.from_config(config)
await memory.add(messages, user_id="alice")
results = await memory.search("preferences", user_id="alice")

Multimodal Support

Pass images, audio, or video alongside text for memory extraction.

Custom Fact Extraction

python
config["custom_fact_extraction_prompt"] = """
Extract: goals, preferences, constraints
Exclude: greetings, filler, casual chat
Return JSON with key "facts" as list of strings.
"""
memory = Memory.from_config(config)

REST API

Run Mem0 as an HTTP server for any language integration.

OpenAI Compatibility

Use Mem0 as a drop-in replacement for OpenAI's chat completions endpoint, with automatic memory management.

SOP Documentation Site for Mem0