Expand description
Benchmark utilities for ANN evaluation.
Provides metrics, dataset generation, and evaluation utilities for measuring ANN index quality across multiple dimensions:
- Accuracy: recall@k, precision@k, MRR
- Speed: QPS, latency percentiles
- Memory: bytes per vector, index overhead
- Scaling: performance vs dataset size, dimensionality
§Standard Benchmark Datasets
| Dataset | Size | Dim | Distance | Use Case |
|---|---|---|---|---|
| SIFT-1M | 1M | 128 | L2 | Image descriptors |
| GIST-1M | 1M | 960 | L2 | High-dimensional |
| GloVe-100 | 1.2M | 100 | Angular | Word embeddings |
| Fashion-MNIST | 60K | 784 | L2 | Small baseline |
Reference: https://ann-benchmarks.com/
Re-exports§
pub use datasets::compute_ground_truth;pub use datasets::create_benchmark_dataset;pub use datasets::Dataset;pub use evaluation::cosine_distance;pub use evaluation::evaluate;pub use evaluation::generate_clustered_dataset;pub use evaluation::generate_normalized_clustered_dataset;pub use evaluation::generate_uniform_dataset;pub use evaluation::l2_distance;pub use evaluation::mrr;pub use evaluation::normalize;pub use evaluation::recall_at_k as eval_recall_at_k;pub use evaluation::DistanceMetric;pub use evaluation::EvalDataset;pub use evaluation::EvalResults;pub use memory::IndexMemoryStats;pub use memory::MemoryTracker;pub use metrics::precision_at_k;pub use metrics::recall_at_k;
Modules§
- datasets
- Synthetic and standard dataset generation for benchmarking.
- evaluation
- Evaluation metrics and infrastructure for ANN benchmarks.
- memory
- Memory tracking utilities for benchmarking.
- metrics
- Evaluation metrics for ANN quality.