Skip to content

Memora

Documentation

When we interact with people πŸ—£οΈπŸ‘‚, we naturally remember details from past interactions πŸ’­, feelings 😜😒, and shared experiences 🀝. That's what makes us human. We're bringing this same ability to AI, helping it recall just like us.

Give the github repo a starhug ⭐️—it’s feeling a lil’ lonely πŸ₯Ί

Features

  • Temporal Memory Recall: Enables AI to remember timestamped memories from past interactions, tracking updates to show how information evolves over time.

  • Multi-Tenancy: Designed to accommodate multiple organizations, agents, and users along their interactions and memories.

  • Flexible Name Handling: Uses placeholders for user and agent names in memories, allowing easy updates if names change later.

  • Scalability: Designed to scale to millions of users, interactions, memories etc. with strategic indexes and constraints for very fast search.

  • Developer-Friendly Design: Provides a modular architecture that allows you to adapt it to fit your specific needs with integration of new features etc.

Our Vision πŸ”­

Currently, Memora manages text-based memories, assisting AI in maintaining context and evolving over time. However, our dream is way bigger towards the full spectrum of human memory, enabling AI to interact as naturally as a close friend. This will need:

  • Emotion-Tagged Memories: Allowing AI to recall memories along with the emotions experienced at that time, such as joy πŸ˜„, sadness 😒, surprise 😲...

  • Multi-modal Memories: As we move into an era where AI is ever-present (24/7), it should be capable of recalling video πŸŽ₯ and audio πŸ”‰ segments from interactions, akin to how humans replay past events as a mental film in our heads.

Join Us!

We're building Memora in the open, and we'd love your 🫡 help. No contribution is too small, even fixing typos ✏️. Check out our CONTRIBUTING.md.

Let's give AI a human touch, together! 😁

Project Structure

memora/
β”œβ”€β”€ agent/          # The Orchestrator
β”œβ”€β”€ graph_db/       # Graph database implementation
β”œβ”€β”€ llm_backends/   # Backend LLM implementations for Memora
β”œβ”€β”€ prompts/        # Prompts for memory operations
β”œβ”€β”€ schema/         # Data models and schemas
└── vector_db/      # Vector database implementation

Next Steps