Files
english/.opencode/skills/context-engineering/references/memory-systems.md
2026-04-12 01:06:31 +07:00

2.5 KiB

Memory Systems

Architectures for persistent context beyond the window.

Memory Layer Architecture

Layer Scope Persistence Use Case
L1: Working Current window None Active reasoning
L2: Short-Term Session Session Task continuity
L3: Long-Term Cross-session Persistent User preferences
L4: Entity Per-entity Persistent Consistency
L5: Temporal Graph Time-aware Persistent Evolving facts

Benchmark Performance (DMR Accuracy)

System Accuracy Approach
Zep 94.8% Temporal knowledge graphs
MemGPT 93.4% Hierarchical memory
GraphRAG 75-85% Knowledge graphs
Vector RAG 60-70% Embedding similarity

Vector Store with Metadata

class MetadataVectorStore:
    def add(self, text, embedding, metadata):
        doc = {
            "text": text, "embedding": embedding,
            "entities": metadata.get("entities", []),
            "timestamp": metadata.get("timestamp")
        }
        self.index_by_entity(doc)

    def search_by_entity(self, entity, k=5):
        return self.entity_index.get(entity, [])[:k]

Temporal Knowledge Graph

class TemporalKnowledgeGraph:
    def add_fact(self, subject, predicate, obj, valid_from, valid_to=None):
        self.facts.append({
            "triple": (subject, predicate, obj),
            "valid_from": valid_from,
            "valid_to": valid_to or "current"
        })

    def query_at_time(self, subject, predicate, timestamp):
        for fact in self.facts:
            if (fact["triple"][0] == subject and
                fact["valid_from"] <= timestamp <= fact["valid_to"]):
                return fact["triple"][2]

Memory Retrieval Patterns

Pattern Query Use Case
Semantic "Similar to X" General recall
Entity-based "About user John" Consistency
Temporal "Valid on date" Evolving facts
Hybrid Combine above Production

File-System-as-Memory

memory/
├── sessions/{id}/summary.md
├── entities/{id}.json
└── facts/{timestamp}_{id}.json

Guidelines

  1. Start with file-system-as-memory (simplest)
  2. Add vector search for scale
  3. Use entity indexing for consistency
  4. Add temporal awareness for evolving facts
  5. Implement consolidation for health
  6. Measure retrieval accuracy