Cargo Features
[dependencies]
memvid-core = { version = "2.0.139", default-features = false, features = ["lex", "extractous", "pdf_extract", "pdf_oxide", "vec", "clip", "mmap", "pdfium", "temporal_track", "temporal_enrich", "parallel_segments", "logic_mesh", "whisper", "metal", "cuda", "accelerate", "replay", "encryption", "symspell_cleanup", "api_embed", "simd", "hnsw_bench", "jsonwebtoken", "rustfft"] }
- default = lex, pdf_extract, simd
-
These default features are set whenever
memvid-coreis added withoutsomewhere in the dependency tree.default-features = false - lex default
-
pdf_oxide disabled - cff-parser panics on ligature fonts (uniFB01/uniFB02) symspell_cleanup - enables robust PDF text repair (requires
make download-modelsfor dictionaries)Enables tantivy ^0.25.0
- extractous
-
Enables extractous
extractous uses GraalVM native compilation which doesn't work on Windows ARM or WSL2 on ARM Enable with --features extractous for full document extraction (PDF, DOCX, etc.)
Affects
extract::DocumentProcessor… - pdf_extract default
-
Pure Rust PDF extraction - faster than lopdf for text extraction, cross-platform
Enables pdf-extract
Pure Rust PDF text extraction - used as primary extractor when extractous is disabled
- pdf_oxide
-
High-accuracy PDF extraction with perfect word spacing (recommended for 2025+)
Enables pdf_oxide
High-accuracy PDF text extraction with perfect word spacing (2025)
- vec clip?
-
Enables hnsw, ndarray ^0.16, ort =2.0.0-rc.10, rand ^0.8, rand_pcg ^0.3, space ^0.17, and tokenizers
Affects
memvid-core::text_embed,vec::Euclidean,vec::HnswVecIndex… - clip = vec
-
Enables image, ndarray ^0.16, rayon, and tokenizers
Affects
clip::render_pdf_pages_for_clip,clip::render_pdf_pages_for_clip… - mmap
- pdfium
-
Enables pdfium-render ^0.8.28
Affects
layout::extract_pdf_layout,clip::render_pdf_pages_for_clip… - temporal_track
-
Affects
analysis::temporal,constants::TEMPORAL_TRACK_MAGIC,constants::TEMPORAL_TRACK_VERSION,io::temporal_index,time_filter::frame_ids_for_temporal_filter,ask::AskRequest.temporal,ask::AskContextFragment.temporal,frame::TimelineQuery.temporal,frame::TimelineEntry.temporal,types::temporal,search::SearchRequest.temporal,search::SearchHitMetadata.temporal,search::SearchHitTemporal,search::SearchHitTemporalAnchor,search::SearchHitTemporalMention… - temporal_enrich
-
Enables interim
Affects
analysis::temporal_enrich… - parallel_segments
-
Enables crossbeam-channel and num_cpus
Affects
io::manifest_wal,builder::BuildOpts,builder::ParallelPayload,builder::ParallelInput,memvid::builder,memvid::planner,memvid::workers,vec::VecIndexArtifact.bytes_uncompressed… - logic_mesh
-
Logic-Mesh: entity-relationship graph with NER extraction using DistilBERT-NER ONNX
Enables ndarray ^0.16, ort =2.0.0-rc.10, and tokenizers
- whisper
-
Whisper: audio transcription with Candle inference
Enables byteorder, candle-core ^0.9, candle-nn ^0.9, candle-transformers ^0.9, hf-hub ^0.4, rubato ^0.15, symphonia, and tokenizers
candle-core:
Candle ML framework for Whisper transcription
- metal
-
GPU acceleration for Whisper (optional)
Enables metal of candle-core ^0.9, candle-nn ^0.9, and candle-transformers ^0.9
- cuda
-
Enables cuda of candle-core ^0.9, candle-nn ^0.9, and candle-transformers ^0.9
- accelerate
-
Enables accelerate of candle-core ^0.9, candle-nn ^0.9, and candle-transformers ^0.9
- replay
-
Time-travel replay for agent sessions
Affects
memvid::replay_ops… - encryption
-
Password-based encryption capsules (.mv2e)
Enables aes-gcm, argon2, rand ^0.8, and zeroize
argon2:
Encryption capsules (.mv2e) - feature-gated
Affects
memvid-core::encryption… - symspell_cleanup
-
SymSpell-based PDF text cleanup - fixes broken word spacing
Enables symspell ^0.4
SymSpell for PDF text cleanup - fixes broken word spacing from PDF extraction
Affects
memvid-core::symspell_cleanup… - api_embed
-
API-based embedding providers (OpenAI, Anthropic, etc.) - requires network
Enables reqwest ^0.12
HTTP client for API-based embedding providers (OpenAI, etc.)
Affects
memvid-core::api_embed… - simd default
-
SIMD acceleration for vector distance calculations
Enables wide
Affects
simd::l2_distance_squared_simd,simd::l2_distance_simd… - hnsw_bench
-
Enables hnsw, rand ^0.8, rand_pcg ^0.3, and space ^0.17
Affects
vec::Euclidean,vec::HnswVecIndex…
Features from optional dependencies
- jsonwebtoken implicit feature
-
Enables jsonwebtoken
jsonwebtoken:
Create and decode JWTs in a strongly typed way
- rustfft implicit feature
-
Enables rustfft
rustfft:
High-performance FFT library written in pure Rust