diff --git a/embeddings.py b/embeddings.py index b32a441..61bf7cf 100644 --- a/embeddings.py +++ b/embeddings.py @@ -13,6 +13,7 @@ from typing import Any, Dict, List, Optional, Tuple from common import ( EMBEDDING_MODEL, OPENAI_MODEL_DEFAULT, + THRESHOLD_DORMANT, _cosine_similarity, _load_memory_config, _ollama_embed, @@ -207,10 +208,14 @@ class EmbeddingsMixin: query_dim = len(query_vec) - # Score all memories by cosine similarity + # Score all memories by cosine similarity, skipping archived/dormant index = self._load_index() + state = self._load_state() scored = [] for mid, vec in stored.items(): + s = state.get("entries", {}).get(mid, {}) + if s.get("decay_score", 0.5) < THRESHOLD_DORMANT: + continue # Skip dimension mismatch if len(vec) != query_dim: continue