Vector search benchmarking - recall@k vs latency tradeoffs, ground-truth construction via brute-force, HNSW tuning (M / ef_construct / ef per Qdrant docs), embedding-model-upgrade drift detection. Use ANN-Benchmarks framework for cross-engine comparison; per-engine clients (Qdrant, Weaviate, pgvector, Pinecone, Elasticsearch k-NN, Milvus) for in-product tests. Use when HNSW / IVF parameters are being tuned or an embedding model is swapped, and recall@k on the existing corpus has never been measured against brute-force ground truth.
72
90%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Clone-and-run detail for vector-search-recall-tests Step 6. Per the
ANN-Benchmarks docs, the framework "evaluates 37+ ANN algorithms ...
by plotting recall against queries per second across various datasets"
including HNSW (multiple impls), FAISS IVF, ScaNN, Annoy, Qdrant,
Weaviate, Milvus.
git clone https://github.com/erikbern/ann-benchmarks.git
cd ann-benchmarks
python install.py --algorithm hnswlib
python run.py --algorithm hnswlib --dataset glove-100-angular
python plot.py --dataset glove-100-angularOutputs per-engine recall/QPS curves. Use to pick an engine + initial parameter set.
Note ANN-Benchmarks uses synthetic datasets (GloVe, SIFT, GIST); in-domain corpora behave differently, so treat the curves as a starting point, not a substitute for the in-product recall test in SKILL.md Steps 1-4.