docs/mintlify/integrations/frameworks/mem0.mdx
Mem0 is an AI memory layer that transforms stateless AI agents into stateful systems with persistent, intelligent memory across interactions. It enables AI applications to remember, learn, and evolve by providing different types of memory including working memory, factual memory, episodic memory, and semantic memory.
pip install mem0ai chromadb
Mem0 can be configured to use Chroma as its vector database backend. Here are the available configuration options:
| Parameter | Description | Default Value |
|---|---|---|
collection_name | Name of the Chroma collection | mem0 |
client | Custom Chroma client | None |
path | Path for the Chroma database | db |
host | Chroma server host | None |
port | Chroma server port | None |
import os
from mem0 import Memory
# Set your OpenAI API key
os.environ["OPENAI_API_KEY"] = "sk-your-openai-key"
# Configure Mem0 with Chroma
config = {
"vector_store": {
"provider": "chroma",
"config": {
"collection_name": "my_memories",
"path": "chroma_db",
}
}
}
# Initialize memory
memory = Memory.from_config(config)
# Add memories from conversation
messages = [
{"role": "user", "content": "I'm planning to watch a movie tonight. Any recommendations?"},
{"role": "assistant", "content": "How about thriller movies? They can be quite engaging."},
{"role": "user", "content": "I'm not a big fan of thriller movies but I love sci-fi movies."},
{"role": "assistant", "content": "Got it! I'll avoid thriller recommendations and suggest sci-fi movies in the future."}
]
memory.add(messages, user_id="alice", metadata={"category": "movies"})
# Search memories
relevant_memories = memory.search("movie preferences", user_id="alice")
print(relevant_memories)