Expand description
Vector Memory System
Semantic vector storage for code search and memory. Local-first design - no external server required.
Uses brute-force cosine similarity search, which is efficient for
collections up to ~100k vectors. For larger collections, consider
integrating an HNSW library like hnsw_rs or instant-distance.
Features:
- Code chunking strategies (functions, structs, modules)
- Embedding generation interface (pluggable backends)
- Similarity search with filters
- Collection management (project, session, global)
- Persistence to disk
Structs§
- Bounded
Vector Store - A capacity-limited wrapper around
VectorStorethat evicts the oldest items (FIFO order) when the total number of chunks exceedsmax_items. - Chunk
Metadata - Metadata for a code chunk
- Code
Chunk - A chunk of code with its embedding
- Code
Chunker - Code chunker for splitting code into meaningful pieces
- Collection
Stats - Statistics for a collection
- Mock
Embedding Provider - Mock embedding provider for testing
- Search
Filter - Filter for search queries
- Search
Result - Search result with similarity score
- TfIdf
Embedding Provider - Simple TF-IDF based embedding provider (no external dependencies)
- Vector
Collection - Vector collection
- Vector
Index - Vector index using simple brute-force search
- Vector
Store - Main vector store
- Vector
Store Stats - Statistics for vector store
Enums§
- Chunk
Type - Chunk types for code organization
- Collection
Scope - Collection scope for organizing chunks
- Embedding
Backend - Enum dispatch for embedding providers.
- Index
Health - Health status of a vector index
Constants§
- DEFAULT_
MAX_ ITEMS - Default maximum number of items across all collections in a bounded store.
- EMBEDDING_
DIM - Embedding dimension (common for small models)
- MAX_
CHUNKS - Maximum chunks per collection
- MAX_
VOCABULARY_ SIZE - Maximum vocabulary size for TF-IDF provider before eviction occurs
Traits§
- Embedding
Provider - Trait for embedding generation.