{"adoption": {"forks": 903, "observed_at": "2026-08-28T04:09:28.224476+00:00", "stars": 5717}, "canonical_url": "https://ross.abutalabs.com/products/ann-benchmarks", "card": {"archived": false, "artifact_type": "library", "description": "Benchmarks of approximate nearest neighbor libraries in Python", "domain": ["machine-learning", "databases", "performance"], "enriched": true, "function": ["benchmarking", "search-engine", "vector-database"], "health_score": 75, "homepage": "http://ann-benchmarks.com", "language": "Python", "license": "MIT", "license_family": "permissive", "maturity": "abandoned", "member_repos": ["erikbern/ann-benchmarks"], "name": "erikbern/ann-benchmarks", "platform": ["python"], "pushed_at": "2026-07-10T08:44:55+00:00", "repo": "erikbern/ann-benchmarks", "stars": 5717, "tags": ["ann", "nearest-neighbor-search", "vector-search", "hdf5-datasets", "recall-vs-qps", "algorithms", "docker", "linux"], "topics": ["nearest-neighbors", "benchmark", "docker"], "urls": [], "use_cases": ["compare approximate nearest neighbor libraries", "benchmark vector search algorithms", "evaluate faiss vs hnswlib vs annoy performance", "measure recall and queries per second for ANN indexes", "find the fastest nearest neighbor search for my dataset", "benchmark similarity search on standard datasets"], "what_it_is": "A benchmarking environment for approximate nearest neighbor (ANN) search algorithms, with pre-generated HDF5 datasets and Docker containers for each evaluated library. It publishes recall vs queries-per-second results across many datasets and distance metrics.", "when_to_avoid": ["you need an actively maintained benchmark - the project is no longer maintained and points to alternatives like VIBE", "you need production vector search rather than benchmarking", "you need benchmarks of very recent algorithms not included in the evaluated set"], "when_to_choose": ["you need historical, reproducible ANN benchmark results across many algorithms", "you want a ready-made harness with datasets and Docker containers for evaluating a new ANN method", "you need recall/QPS plots across distance metrics like angular, euclidean, hamming, and jaccard"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/ann-benchmarks", "repo": "erikbern/ann-benchmarks", "role": "main", "score": 73}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:28.224476+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:53:28.522175+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6b62a599c04c5238a9a5f0bd842a5540850afedd70b84e76c342cd989f1e9996", "fetched_at": "2026-08-28T04:09:28.224476+00:00", "kind": "readme", "missing": false, "url": "https://github.com/erikbern/ann-benchmarks"}, {"content_hash": "9752fe975ebf5108c58f8534a391bf411f1deae326e25d5b5425bce6762e2680", "fetched_at": "2026-08-29T08:48:57.865189+00:00", "kind": "homepage", "missing": false, "url": "http://ann-benchmarks.com"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:28.224476+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:53:28.522175+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6b62a599c04c5238a9a5f0bd842a5540850afedd70b84e76c342cd989f1e9996", "fetched_at": "2026-08-28T04:09:28.224476+00:00", "kind": "readme", "missing": false, "url": "https://github.com/erikbern/ann-benchmarks"}, {"content_hash": "9752fe975ebf5108c58f8534a391bf411f1deae326e25d5b5425bce6762e2680", "fetched_at": "2026-08-29T08:48:57.865189+00:00", "kind": "homepage", "missing": false, "url": "http://ann-benchmarks.com"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:53:28.522175+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6b62a599c04c5238a9a5f0bd842a5540850afedd70b84e76c342cd989f1e9996", "fetched_at": "2026-08-28T04:09:28.224476+00:00", "kind": "readme", "missing": false, "url": "https://github.com/erikbern/ann-benchmarks"}, {"content_hash": "9752fe975ebf5108c58f8534a391bf411f1deae326e25d5b5425bce6762e2680", "fetched_at": "2026-08-29T08:48:57.865189+00:00", "kind": "homepage", "missing": false, "url": "http://ann-benchmarks.com"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:09:28.224476+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:28.224476+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:28.224476+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:53:28.522175+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6b62a599c04c5238a9a5f0bd842a5540850afedd70b84e76c342cd989f1e9996", "fetched_at": "2026-08-28T04:09:28.224476+00:00", "kind": "readme", "missing": false, "url": "https://github.com/erikbern/ann-benchmarks"}, {"content_hash": "9752fe975ebf5108c58f8534a391bf411f1deae326e25d5b5425bce6762e2680", "fetched_at": "2026-08-29T08:48:57.865189+00:00", "kind": "homepage", "missing": false, "url": "http://ann-benchmarks.com"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:28.224476+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:28.224476+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:53:28.522175+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6b62a599c04c5238a9a5f0bd842a5540850afedd70b84e76c342cd989f1e9996", "fetched_at": "2026-08-28T04:09:28.224476+00:00", "kind": "readme", "missing": false, "url": "https://github.com/erikbern/ann-benchmarks"}, {"content_hash": "9752fe975ebf5108c58f8534a391bf411f1deae326e25d5b5425bce6762e2680", "fetched_at": "2026-08-29T08:48:57.865189+00:00", "kind": "homepage", "missing": false, "url": "http://ann-benchmarks.com"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:28.224476+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:28.224476+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:28.224476+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:53:28.522175+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6b62a599c04c5238a9a5f0bd842a5540850afedd70b84e76c342cd989f1e9996", "fetched_at": "2026-08-28T04:09:28.224476+00:00", "kind": "readme", "missing": false, "url": "https://github.com/erikbern/ann-benchmarks"}, {"content_hash": "9752fe975ebf5108c58f8534a391bf411f1deae326e25d5b5425bce6762e2680", "fetched_at": "2026-08-29T08:48:57.865189+00:00", "kind": "homepage", "missing": false, "url": "http://ann-benchmarks.com"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:28.224476+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:28.224476+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:53:28.522175+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6b62a599c04c5238a9a5f0bd842a5540850afedd70b84e76c342cd989f1e9996", "fetched_at": "2026-08-28T04:09:28.224476+00:00", "kind": "readme", "missing": false, "url": "https://github.com/erikbern/ann-benchmarks"}, {"content_hash": "9752fe975ebf5108c58f8534a391bf411f1deae326e25d5b5425bce6762e2680", "fetched_at": "2026-08-29T08:48:57.865189+00:00", "kind": "homepage", "missing": false, "url": "http://ann-benchmarks.com"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:53:28.522175+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6b62a599c04c5238a9a5f0bd842a5540850afedd70b84e76c342cd989f1e9996", "fetched_at": "2026-08-28T04:09:28.224476+00:00", "kind": "readme", "missing": false, "url": "https://github.com/erikbern/ann-benchmarks"}, {"content_hash": "9752fe975ebf5108c58f8534a391bf411f1deae326e25d5b5425bce6762e2680", "fetched_at": "2026-08-29T08:48:57.865189+00:00", "kind": "homepage", "missing": false, "url": "http://ann-benchmarks.com"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:53:28.522175+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6b62a599c04c5238a9a5f0bd842a5540850afedd70b84e76c342cd989f1e9996", "fetched_at": "2026-08-28T04:09:28.224476+00:00", "kind": "readme", "missing": false, "url": "https://github.com/erikbern/ann-benchmarks"}, {"content_hash": "9752fe975ebf5108c58f8534a391bf411f1deae326e25d5b5425bce6762e2680", "fetched_at": "2026-08-29T08:48:57.865189+00:00", "kind": "homepage", "missing": false, "url": "http://ann-benchmarks.com"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:53:28.522175+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6b62a599c04c5238a9a5f0bd842a5540850afedd70b84e76c342cd989f1e9996", "fetched_at": "2026-08-28T04:09:28.224476+00:00", "kind": "readme", "missing": false, "url": "https://github.com/erikbern/ann-benchmarks"}, {"content_hash": "9752fe975ebf5108c58f8534a391bf411f1deae326e25d5b5425bce6762e2680", "fetched_at": "2026-08-29T08:48:57.865189+00:00", "kind": "homepage", "missing": false, "url": "http://ann-benchmarks.com"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 91, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4115, "days_push": 54, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 73, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}