Skip to content
forked from mem0ai/mem0

The memory layer for Personalized AI

Notifications You must be signed in to change notification settings

vamshi-rvk/mem0

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mem0 Logo

Slack Discord Twitter

Mem0: The Memory Layer for Personalized AI

Mem0 provides a smart, self-improving memory layer for Large Language Models, enabling personalized AI experiences across applications.

Note: The Mem0 repository now also includes the Embedchain project. We continue to maintain and support Embedchain ❤️. You can find the Embedchain codebase in the embedchain directory.

🚀 Quick Start

Installation

pip install mem0ai

Basic Usage

import os
from mem0 import Memory

os.environ["OPENAI_API_KEY"] = "xxx"

# Initialize Mem0
m = Memory()

# Store a memory from any unstructured text
result = m.add("I am working on improving my tennis skills. Suggest some online courses.", user_id="alice", metadata={"category": "hobbies"})
print(result)
# Created memory: Improving her tennis skills. Looking for online suggestions.

# Retrieve memories
all_memories = m.get_all()
print(all_memories)

# Search memories
related_memories = m.search(query="What are Alice's hobbies?", user_id="alice")
print(related_memories)

# Update a memory
result = m.update(memory_id="m1", data="Likes to play tennis on weekends")
print(result)

# Get memory history
history = m.history(memory_id="m1")
print(history)

🔑 Core Features

  • Multi-Level Memory: User, Session, and AI Agent memory retention
  • Adaptive Personalization: Continuous improvement based on interactions
  • Developer-Friendly API: Simple integration into various applications
  • Cross-Platform Consistency: Uniform behavior across devices
  • Managed Service: Hassle-free hosted solution

📖 Documentation

For detailed usage instructions and API reference, visit our documentation at docs.mem0.ai.

🔧 Advanced Usage

For production environments, you can use Qdrant as a vector store:

from mem0 import Memory

config = {
    "vector_store": {
        "provider": "qdrant",
        "config": {
            "host": "localhost",
            "port": 6333,
        }
    },
}

m = Memory.from_config(config)

🗺️ Roadmap

  • Integration with various LLM providers
  • Support for LLM frameworks
  • Integration with AI Agents frameworks
  • Customizable memory creation/update rules
  • Hosted platform support

🙋‍♂️ Support

Join our Slack or Discord community for support and discussions. If you have any questions, feel free to reach out to us using one of the following methods:

About

The memory layer for Personalized AI

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 69.7%
  • MDX 20.8%
  • Jupyter Notebook 6.7%
  • JavaScript 2.3%
  • Dockerfile 0.2%
  • Makefile 0.2%
  • Other 0.1%