Core Concepts
Understand the fundamental building blocks of MemoAir.
Tripartite Architecture
MemoAir organizes knowledge into three distinct graph layers, allowing for flexible and context-aware retrieval.
Stores personal information, preferences, and history specific to an individual user (e.g., `user:john`).
Stores shared knowledge, documents, and facts accessible to an entire organization or team (e.g., `org:acme`).
Defines the structure, concepts, and relationships for a specific domain (e.g., `domain:software_engineering`).
Memories
Memories are the raw input from conversations. When you add a memory (a list of messages), MemoAir asynchronously processes it to extract structured facts and update the knowledge graph.
client.memories.add(
group_id="user:john",
messages=[...]
)Facts
Facts are the atomic units of knowledge stored in the graph. They are represented as semantic triplets (Source → Edge → Target). You can let MemoAir extract them automatically or add them explicitly.
client.facts.add_triplet(
group_id="user:john",
source_name="John",
edge_name="works_at",
target_name="Acme Corp",
fact="John works at Acme Corp"
)Temporal Reasoning
MemoAir tracks when facts are valid. If a fact changes (e.g., "John works at Google" → "John works at MemoAir"), the old fact is invalidated but kept in history, allowing the system to understand the progression of events over time.
HippoRAG
HippoRAG is an advanced retrieval mechanism inspired by the human hippocampus. It enables associative memory retrieval, allowing the system to connect seemingly unrelated facts through multi-hop reasoning in the knowledge graph.