-
Notifications
You must be signed in to change notification settings - Fork 7.2k
-
Repository Link: https://github.com/snowfoxHQ/vecRecall
VecRecall is an enhanced AI long-term memory system. Rebuilt following an in-depth analysis of the original MemPalace, its core design philosophy centers on the complete decoupling of "information retrieval" from "information organization." By utilizing a pure vector-based retrieval path alongside a distinct SQLite-based UI layer, VecRecall not only maintains flexible organizational capabilities but also boosts the recall rate (R@5) from the original version's 84% to over 96.6%, thereby providing AI Agents with more precise and efficient contextual memory support.
The most significant issue with the original version was the tight coupling between the information organization layer and the retrieval path. Room-based filtering caused the retrieval recall rate to drop from 96.6% to 89.4%; the subsequent involvement of AAAK in the retrieval process further reduced it to 84.2%. VecRecall completely separates these two functions: retrieval is handled via vector search, while organization is managed through the SQLite-based UI layer.
The modification at Layer 2 (L2) is pivotal: whereas the original version triggered retrieval based on Room name matching, VecRecall now employs a semantic similarity threshold. This threshold is adjustable via the vr-mcp tool using the command mp_set_l2_threshold, or directly within the code by setting palace.L2_TRIGGER_THRESHOLD = 0.6.
Beta Was this translation helpful? Give feedback.
All reactions
-
❤️ 1
Replies: 1 comment
-
Operator-experience data point on the closet-boost concern (the VecRecall read of MemPalace's _hybrid_rank org-layer dropping R@5):
We ran a 12-probe A/B against a 151K-drawer production palace, with default closet-boost values vs zeroed boosts. Findings:
- Closet boost fires on ~20% of result rows, concentrated in queries whose answer lives in mined files (vs chat-transcript queries where closets are sparse).
- When the boost fired, it re-ordered chunks within a single source file rather than displacing right answers with wrong ones.
- VecRecall's critique didn't reproduce on this corpus.
This isn't a refutation of the underlying concern — closet-boost can dominate ranking when closets are dense AND queries match closet-topic keywords. Our corpus is mostly chat transcripts where closets are sparse, so the boost mostly stays out of the way. A corpus weighted toward structured mined files would see different ranking dynamics.
Findings preserved as a comment block in mempalace/searcher.py above the CLOSET_RANK_BOOSTS constants on the jphein fork main, so future-us doesn't have to re-run the experiment.
Different decoupled-retrieval/UI architecture is worth exploring — happy to see VecRecall as a sibling project. Hope this data is useful.
Beta Was this translation helpful? Give feedback.