File size: 2,077 Bytes
dbb04e4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# MnemoCore Architecture (Beta)

## Beta Context

This document describes the current implementation direction in beta.
It is not a guarantee of final architecture, performance, or feature completeness.

## Core Components

- `src/core/engine.py`: Main orchestration for memory storage, encoding, query, and synaptic augmentation.
- `src/core/binary_hdv.py`: Binary hyperdimensional vector operations.
- `src/core/tier_manager.py`: HOT/WARM/COLD placement and movement logic.
- `src/core/config.py`: Typed config loading from YAML + env overrides.
- `src/core/async_storage.py`: Async Redis metadata operations.
- `src/api/main.py`: FastAPI interface.

## Memory Model

MnemoCore represents memory as high-dimensional vectors and metadata-rich nodes:

1. Encode input text into vector representation.
2. Store node in HOT tier initially.
3. Apply reinforcement/decay dynamics (LTP-related logic).
4. Move between tiers based on thresholds and access patterns.

## Tiering Model

- **HOT**: In-memory dictionary for fastest access.
- **WARM**: Qdrant-backed where available; filesystem fallback when unavailable.
- **COLD**: Filesystem archival path for long-lived storage.

## Query Flow (Current Beta)

Current query behavior prioritizes HOT tier recall and synaptic score augmentation.
Cross-tier retrieval is still evolving and should be treated as beta behavior.

## Async + External Services

- Redis is used for async metadata and event stream operations.
- API startup checks Redis health and can operate in degraded mode.
- Qdrant usage is enabled through tier manager and can fall back to local files.

## Observability

- Prometheus metrics endpoint mounted at `/metrics` in API server.
- Logging behavior controlled through config.

## Practical Limitations

- Some roadmap functionality remains TODO-marked in code.
- Interface contracts may change across beta releases.
- Performance can vary significantly by hardware and data profile.

For active limitations and next work items, see `docs/ROADMAP.md`.