Vector search (FAISS)
In-process FAISS index. Auto-upgrades from exact (Flat) to approximate (IVF) as your data grows.
Local-first hybrid search + knowledge graph. Zero infrastructure.
from arriadne import AriadneMemory
from arriadne.embeddings import SentenceTransformerEmbedder
# An embedder turns text into vectors so semantic recall works automatically.
embedder = SentenceTransformerEmbedder("all-MiniLM-L6-v2") # 384-dim
mem = AriadneMemory(db_path="memory.db", embedding_dim=embedder.dim, embedder=embedder)
# Store a memory
mem.remember("VPS has 4 cores, 8GB RAM, Ubuntu 24.04", importance=0.8)
# Search — vector + keyword, fused
results = mem.recall("server specs", k=5)
# → [{"content": "VPS has 4 cores...", "score": 0.94, ...}]| Capability | Ariadne | Chroma | sqlite-vec | Mem0 |
|---|---|---|---|---|
| Vector search | ✅ | ✅ | ✅ | ✅ |
| Keyword + hybrid (RRF) | ✅ | ⚠️ | ❌ | ⚠️ |
| Knowledge graph | ✅ | ❌ | ❌ | ⚠️ |
| Near-dup dedup | ✅ | ❌ | ❌ | ⚠️ |
| Local, no daemon | ✅ | ✅ | ✅ | ❌ |
Capability comparison, not a benchmark. ✅ built-in · ⚠️ partial/varies · ❌ not available.
pip install "ariadne-memory[embeddings]"