Repository navigation
Memory Retrieval Overview
Spector features a unified 4-layer hybrid retrieval stack that acts as the candidate generation and reranking stages of the Recall Pathway. Rather than relying on simple semantic vector matches, Spector combines lexical precision, learned sparse expansions, deep late-interaction reranking, and multi-layer graph traversal in a single cohesive pass.
Spector coordinates query execution by retrieving candidates in parallel from the first three layers, merging them, reranking them, and finally traversing the cognitive graph to discover associated memories:
flowchart TD
Query["👤 Input Query"] --> Dense["🧠 Layer 1: Dense Similarity<br/>(HNSW Vector Index)"]
Query --> Lexical["📝 Layer 2: Lexical Matching<br/>(BM25 Index)"]
Query --> Sparse["📈 Layer 3: Learned Sparse<br/>(SPLADE Expansion Index)"]
Dense --> RRF["🧬 Reciprocal Rank Fusion (RRF)<br/>(First-Stage Merge)"]
Lexical --> RRF
Sparse --> RRF
RRF --> Rerank["🚀 Layer 4: ColBERT Reranker<br/>(Token-Level MaxSim Rerank)"]
Rerank --> Graph["🔗 Cognitive Graph Traversal<br/>(Hebbian, Entity, Temporal, Episode)"]
Graph --> Final["✨ Final Recalled Memories"]
| Layer | Primary Purpose | Best For |
|---|---|---|
| Layer 1: Dense Similarity | Semantic similarity retrieval | Conceptual matching, synonyms |
| Layer 2: Lexical BM25 | Exact term and keyword matching | Code snippets, IDs, specific terms |
| Layer 3: Sparse (SPLADE) | Learned sparse / neural term expansion | Capturing keyword intent without exact matches |
| Layer 4: ColBERT v2 | High-precision candidate reranking | Complex reasoning queries, grounding context |
You can control which layers of the retrieval stack are active during memory recall by configuring the retrieval mode:
| Mode | Active Layers | Description |
|---|---|---|
HYBRID (Default)
|
BM25 + Dense Vector | Combines lexical exact-matches with semantic vector recall, merged via RRF. |
KEYWORD_ONLY |
BM25 only | Bypasses dense vector computations. Best for specific error codes or names. |
VECTOR_ONLY |
Dense Vector only | Pure semantic similarity search. |
SPLADE |
SPLADE only | Uses learned sparse representations with term expansions only. |
SPLADE_HYBRID |
SPLADE + Dense Vector | Combines semantic recall with neural term expansion, bypassing BM25. |
LI_LSR |
Li-LSR only | Fast, inference-free learned sparse retrieval utilizing precomputed tables. |
COLBERT_RERANK |
BM25 + Vector + ColBERT Reranker | Runs first-stage hybrid search, then reranks candidates using ColBERT v2. |
FULL_STACK |
All Layers (Vector + BM25 + SPLADE + Colbert) | Maximum retrieval quality. Merges all first-stage signals and reranks with ColBERT. |
When multiple first-stage layers are active (e.g., in HYBRID or FULL_STACK), Spector merges their ranked lists using Reciprocal Rank Fusion (RRF).
The RRF score for a candidate document
[RRF(d) = \sum_{m \in M} \frac{1}{k + r_m(d)}]
Where:
-
$M$ is the set of active retrieval modes (e.g., Vector, BM25, SPLADE). -
$r_m(d)$ is the rank of document$d$ in retrieval mode$m$ (1-indexed). If the document is not retrieved by mode$m$ ,$r_m(d) = \infty$ . -
$k$ is a constant smoothing parameter (defaults to$60$ ).
RRF ensures that documents ranked highly across multiple retrieval strategies are elevated to the top of the final candidate list, regardless of the scale differences in their raw scores.
Once the retrieval stack generates and reranks the top candidate memories, Spector passes them to the Cognitive Graph Traversal stage. This phase discovers hidden connections and adds related context that first-stage similarity cannot find:
- Hebbian Co-activation: Traverses strong co-activation edges to pull in memories frequently recalled together (spreading activation).
- Entity-Relationship Graph: BFS traversal of extracted entities (e.g., people, projects, concepts) and their relationships to recall related structured facts.
- Temporal Causal Chains: Follows chronological links forward and backward to reconstruct the event context of a conversation or activity.
- Event-Episode (Hyperedge) Graph: Links groups of entities and actions belonging to a single temporal episode.
For a deep dive into graph parameters, thresholds, and spreading activation decay formulas, see the 4-Layer Cognitive Graph documentation.
- Home
-
Getting Started
- Quick Start
- Installation
- Developer Guide
- JDK API Status
- MCP Server
- Java SDK
- Java API Reference
- Python SDK
- TypeScript SDK
- Spring AI Integration
- CLI Reference
- REST API
- API Playground
- Error Codes
- Configuration
- Deployment
-
Cognitive Memory
- Overview
- Getting Started
- Use Cases
- API Reference
- Concepts
- Pathways
- Scoring features
- Profiles
- Experimental
- Internals
- Design ancestry
-
Memory Kernel
- Overview
- Bundle Architecture
- Memory Shapes
- Binary Layouts & Tags
- WAL & Durability
-
Region Reference
- Overview & Index
- Partition Regions
-
Runtime Regions
- Working Memory
- Co-Activation Matrix
- Index MIDX
- Index IDPL
- Hebbian Graph
- Temporal Chains
- Temporal Facts
- Entity Directory
- Entity Names Pool
- HyperEntity Graph
- Entity Types Registry
- Relation Types Registry
- BM25 Lexical Index
- Checkpoint
- Insula (Somatic Self-Model)
- Continuity
- Provenance
- SPLADE Sparse Index
- Entity Reverse Index
- Identity Regions
- Synapse & Cortex
-
Architecture
- System Overview
- Core Concepts
- Ingestion Pipeline
- MCP Integration
- Distributed Mode
- Event Notifications
- Namespace Sharding
- Single-Namespace Scale & Capacity Limits
- Scale Benchmark Empirical Results
- Writer Quiesce Pause Empirical Results
- Kill-Owner Failover Empirical Results
- Salience & Importance Architecture
- GPU Acceleration
- Performance Tuning
- Test Framework & LLM Judge
- Chat & Visual Test Infrastructure
- Security & Data
-
Architecture Decision Records (ADRs)
- Overview
- Template
- Master Catalog (0001-0085)
-
Memory Kernel & Storage Formats
- ADR-0001: Graph Compression Strategy for Entity Graph
- ADR-0002: Multi-Partition Recall Fan-Out & Frozen Reten...
- ADR-0003: Completing Hypergraph Entity-Graph Graduation
- ADR-0004: Mmap Bundle Architecture & File Descriptor Sc...
- ADR-0005: spector-memory Technical Debt Hardening
- ADR-0042: Graph Recall Architecture and Cognitive Trave...
- ADR-0043: Single-VMA Bundle Layout Specification
- ADR-0044: Memory Kernel Isolation, Composition, and Layout
- ADR-0045: Spector Memory Import & Export Pipeline
- ADR-0046: Single Engram, Four Stores Storage Architecture
- ADR-0047: Episodic Memory and Engram Model Hierarchy
- ADR-0057: Remediation of Hardcoded Memory Offsets and Alignment Constants
- ADR-0062: Spector Memory Organization — Three-Plane Architecture
- ADR-0082: Index Plane Lifecycle, Derived Views, and Reconciliation
-
Active Inference Self-Model Engine (AISME)
- ADR-0006: Episodic Conversation Architecture
- ADR-0007: ReflectPathway — Biological Sleep Consolidation
- ADR-0008: Cognitive Substrate Evolution (TANGLE, GPM, M...
- ADR-0009: AISME Phase 1 — Homeostatic Affective Core
- ADR-0010: AISME Phase 2 — Free-Energy Guided Recall
- ADR-0011: AISME Phase 3 — Modern Hopfield Associative M...
- ADR-0012: AISME Phase 4 — Neural Manifold Distance (NMD)
- ADR-0013: AISME Phase 5 — Predictive Coding Narrative Self
- ADR-0014: AISME Phase 6 — Consciousness Continuity Metr...
- ADR-0015: AISME Phase 7 — Synaptic Relay Wiring & Pathw...
- ADR-0016: AISME Phase 8 — Closed-Loop Epistemic Learning
- ADR-0017: AISME Phase 9 — Generative Counterfactuals & ...
- ADR-0018: AISME Phase 10 — WanderPathway & Kernel Conti...
- ADR-0019: AISME Phase 11 — Expected Free Energy Policy ...
- ADR-0020: AISME Phase 12 — Continuous Self-Dynamics
- ADR-0023: AISME Complete Loop Closure & CognitiveVector...
- ADR-0024: Polymorphic SoulContext Hierarchy in AISME
- ADR-0027: Soul-Conditioned & Salience-Modulated Persona...
- ADR-0048: Cross-Capture Graph & CoActivation Kernel
- ADR-0049: Identity Trajectory Lyapunov Stability
- ADR-0050: Event Density Gating and Dynamic Epistemic Co...
- ADR-0051: Bayesian Online Change-Point Episode Segmenta...
- ADR-0052: Differential Privacy and Edge Anonymization
- ADR-0053: Multimodal Composite Importance Scoring
- ADR-0054: Lifespan-Adaptive Forgetting & Retention Kernel
- ADR-0055: LSR & RFF Dense Associative Memory Engineerin...
- ADR-0056: Log-Sum-ReLU (LSR) & Random Fourier Features ...
- ADR-0058: Linguistic & Vocal Prosody Expression Engine
- ADR-0063: Spacetime Vector Search and Synaptic Relay Architecture
- ADR-0064: Spacetime Simulation on Wander, Dream, and Express Pathways
- ADR-0071: Remember Cognitive Pathway Architecture
- ADR-0072: Six-Phase Fused Cognitive Scoring Pipeline
- ADR-0073: Recall Cognitive Pathway and Multi-Phase Retrieval Architecture
- ADR-0074: Reflect Cognitive Pathway and Sleep Consolidation Architecture
- ADR-0078: Salience Network and Thalamic Cognitive Profiles Architecture
-
Platform, Synapse & Clustering
- ADR-0021: Nucleus Symmetric Hardware Abstraction Layer ...
- ADR-0022: Embodied Kinesics & Phenomenological MCP Engine
- ADR-0025: Declarative MCP Tool Definitions via JSON Sch...
- ADR-0026: Dual-Plane Concurrency & Async Queue Backpres...
- ADR-0028: Dual-Plane Memory Audit Architecture (Separat...
- ADR-0029: Episodic→Semantic Lineage Provenance Region
- ADR-0030: Unified Engram Encoding Header Architecture
- ADR-0031: Unified Configuration Architecture & Bypass E...
- ADR-0032: Persona Enactment — Soul as Policy over Memory
- ADR-0033: Decoupling Cognitive & Mathematical Kernels t...
- ADR-0034: Cell Topology, Namespace Ownership, and HA Cl...
- ADR-0035: Cognitive Pathway Framework Rearchitecture
- ADR-0036: Pathway Error Handling, Isolation, and Circui...
- ADR-0037: Ingestion Boundary and Sensory Relocation
- ADR-0038: SIMD-Accelerated BM25 Lexical Scoring Optimiz...
- ADR-0039: Robust Unified Rate Limiting Architecture
- ADR-0040: Universal Apache Camel Messaging Channels
- ADR-0041: Unified Connector Architecture for Ingestion
- ADR-0059: Java 27 Upgrade Strategy and Value Class Migration
- ADR-0060: Cognitive Continuity Layer and Decoded Mind Streams
- ADR-0061: In-Memory Multi-Tenant Quartz Scheduler
- ADR-0065: Client SDK Architecture, OpenAPI, and MCP Integration
- ADR-0066: Engine & CLI Stabilization — Issue #727 Hardening
- ADR-0067: Cell-Based High Availability and Namespace-Sticky Sharding
- ADR-0068: Phileas PII Redaction Engine for Spector Synapse
- ADR-0069: Synapse-Owned Tool Access Policy
- ADR-0070: Unified Error Taxonomy and Exception Handling Architecture
- ADR-0075: Extensible LLM and Multimodal Embedding Provider SPI
- ADR-0076: Zero-Dependency Pluggable Cache Abstraction
- ADR-0077: Model B Asynchronous Task Queue and Concurrency
- ADR-0079: Asynchronous Memory Event and Telemetry Notification Bus
- ADR-0080: Observed Memory and Pathway Metrics Telemetry Architecture
- ADR-0081: Dedicated Reactive Ingress and In-Process Path Router
- ADR-0083: Namespace-Isolated Memory Analytics & Telemetry
- ADR-0084: Dual-Plane Conversation Persistence
- ADR-0085: Dynamic Synapse Configuration Overrides and Runtime Propagation
-
Modules Registry
- Overview
- Foundation Layer (/nucleus)
- Cognitive Layer (/memory)
- Gateway Layer (/synapse)
- Benchmarks & UI
- Deep Dives
-
Community
- Governance
- Contributing
- FAQ
- Glossary
- Roadmap
- 🔬 Labs
- Third-Party Legal