[Mnemosyne] Pluggable Embedding Backend — Ollama + TF-IDF #1257
Reference in New Issue
Block a user
Delete Branch "feat/mnemosyne-embedding-backend"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Pluggable Embedding Backend for Mnemosyne
Implements the high-priority
embedding_backendplanned feature from FEATURES.yaml.What's New
embeddings.py— AbstractEmbeddingBackendinterface with two implementations:OllamaEmbeddingBackend: connects to local Ollama for sovereign neural embeddings (default model:nomic-embed-text)TfidfEmbeddingBackend: pure-Python TF-IDF fallback — no dependencies, always availableget_embedding_backend(): auto-detects best available backendlinker.pyupdated —HolographicLinkeraccepts optionalEmbeddingBackend:archive.pyupdated —MnemosyneArchive.__init__accepts optionalEmbeddingBackend:get_embedding_backend()by defaultsemantic_search()uses embedding cosine similarity when available, with link boostcli.pyupdated —--backend ollama|tfidf|autoflag onsearchandrebuildcommandstests/test_embeddings.py— test suite for cosine similarity, TF-IDF backend, auto-detection__init__.py— exports new embedding classesConfiguration
MNEMOSYNE_EMBED_BACKENDenv var: forceollamaortfidfMNEMOSYNE_EMBED_MODELenv var: override embedding model (default:nomic-embed-text)OLLAMA_URLenv var: override Ollama URL (default:http://localhost:11434)Test
Closes planned feature: embedding_backend in FEATURES.yaml.