memind  by openmemind

Java-native cognitive memory and context engine for AI agents

Created 3 weeks ago

New!

328 stars

Top 83.4% on SourcePulse

GitHubView on GitHub
Project Summary

Memind is a Java-native cognitive memory and context engine designed to address the limitations of flat, unstructured memory storage in AI agents. It empowers 24/7 proactive agents by providing a system that not only retains information but also evolves it into structured understanding, leading to state-of-the-art performance on key agent memory benchmarks. The project targets developers building sophisticated AI agents within the Java ecosystem who require robust long-term memory capabilities.

How It Works

Memind's core innovation is the "Insight Tree," a hierarchical knowledge structure that organizes memory into three tiers: Leaves (individual insights), Branches (cross-group patterns), and Roots (cross-dimensional understanding). This approach moves beyond simple fact storage, enabling agents to build deeper, evolving comprehension. It also employs a "Two-Scope Memory" system, maintaining separate USER and AGENT scopes for comprehensive cognition. Retrieval is handled via dual strategies: a low-latency "Simple" strategy combining vector search and BM25 with RRF, and a "Deep" strategy leveraging LLM-assisted query expansion and reranking for complex queries.

Quick Start & Requirements

  • Primary install/run command: Clone the repository, set OPENAI_API_KEY, and run the quickstart example using Maven:
    git clone https://github.com/openmemind/memind.git
    cd memind
    OPENAI_API_KEY=your-key \
    mvn -pl memind-examples/memind-example-java -am -DskipTests exec:java \
      -Dexec.mainClass=com.openmemind.ai.memory.example.java.quickstart.QuickStartExample
    
  • Prerequisites: Java 21, Maven, OpenAI API Key.
  • Dependencies: OpenAI API for LLM and embeddings; JDBC-compatible database (SQLite, MySQL, PostgreSQL) for storage.
  • Links: Repository, Java Examples

Highlighted Details

  • Achieves state-of-the-art results on LoCoMo (86.88%), LongMemEval (84.20%), and PersonaMem (67.91%) benchmarks.
  • Java-native implementation, integrating seamlessly into the Java ecosystem.
  • Insight Tree enables hierarchical knowledge distillation and evolution.
  • Offers dual retrieval strategies (Simple and Deep) for varied query complexity.

Maintenance & Community

Contributions are welcomed via issues and pull requests. Specific community channels or active maintainer information are not detailed in the README.

Licensing & Compatibility

Memind is licensed under the Apache License 2.0. This permissive license allows for commercial use and integration into closed-source projects without copyleft restrictions.

Limitations & Caveats

Operation requires an OpenAI API key, incurring associated costs. Reproducing benchmark results necessitates downloading external datasets and configuring specific environment variables for API access and model selection. The README does not specify any alpha status or known bugs.

Health Check
Last Commit

20 hours ago

Responsiveness

Inactive

Pull Requests (30d)
14
Issues (30d)
8
Star History
331 stars in the last 23 days

Explore Similar Projects

Feedback? Help us improve.