$npx skillfedfor your agent

scann

Scalable Nearest Neighbor search library

With conditionsPyPI LibrariesReleased Aug 2025679.8K downloads / moApache-2.0Platform wheel

Decision gist · record as of 2026-08-14

platform wheels — scann-1.4.2-cp310-cp310-manylinux_2_27_aarch64.whl · scann-1.4.2-cp310-cp310-manylinux_2_27_x86_64.whl · scann-1.4.2-cp311-cp311-manylinux_2_27_aarch64.whl
v1.4.2 · released 2025-08-29 · Python <3.14,>=3.9 · 2 runtime deps: numpy, protobuf

Yes, if you need fast approximate nearest neighbor search on Linux with Python 3.9–3.13 and have x86 or ARM hardware with the required instruction sets. The library is actively maintained, has no known vulnerabilities, and is well-suited for production recommendation and search workloads. Install friction is moderate due to compiled dependencies, but pre-built wheels mitigate build complexity. Not suitable for Windows or macOS without additional setup.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires x86 processors with AVX and FMA support (or ARM with NEON); libstdc++ version 3.4.23 or above must be installed on the system.
  • Medium friction due to compiled wheels requiring specific CPU instruction sets (AVX and FMA for x86, NEON for ARM) and glibc version 2.27 or later.
  • Actively maintained with recent releases; supports Python 3.9–3.13 on Linux.

License · maintenance · safety

Apache-2.0 (permissive) — Apache-2.0 permissive license allows commercial and private use with minimal restrictions; attribution required.

last release 2025-08-29 (350 days) · last repo commit 2026-08-14 · 38,531 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 679,845 downloads/mo, #5,367 on PyPI

Verify before relying

pip install scann
import scann
# Build index from numpy array of vectors
builder = scann.scann_ops_pybind.builder(data, num_leaves=100, leaves_to_search=10)
index = builder.build()
# Search for nearest neighbors
neighbors, distances = index.search(query_vector, k=10)
  • Exact performance metrics on ann-benchmarks.com for glove-100-angular dataset mentioned in description
  • Whether TensorFlow integration (scann[tf]) is necessary for typical use cases or only for SavedModel embedding
  • Memory overhead and scaling characteristics for datasets larger than those in published benchmarks
Same gist for agents: .md · .json

What it is and what it does

ScaNN is a research-grade library for fast approximate nearest neighbor search on large vector datasets. It implements techniques for search space pruning and vector quantization to accelerate similarity lookups while trading off recall for speed. The library is optimized for x86 processors with AVX support and provides both Python and TensorFlow APIs, with the core Python bindings available by default and TensorFlow ops available as an optional extra.

The package depends on numpy for array handling and protobuf for serialization. It is designed for machine learning workflows where you need to find similar embeddings or vectors quickly—typical use cases include semantic search, recommendation systems, and clustering. Installation requires Linux with glibc 2.27 or later and Python 3.9–3.13; the compiled wheels are pre-built for common architectures, avoiding the need to compile from source in most cases.

Use it for

  • Semantic search over document embeddings or text representations to find similar content quickly
  • Recommendation systems that retrieve similar items based on learned vector representations
  • Large-scale clustering or nearest-neighbor analysis on high-dimensional datasets
  • Real-time similarity lookup in machine learning inference pipelines
  • Embedding-based retrieval for information retrieval or question-answering systems

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you need fast approximate nearest neighbor search on Linux with Python 3.9–3.13 and have x86 or ARM hardware with the required instruction sets.

The library is actively maintained, has no known vulnerabilities, and is well-suited for production recommendation and search workloads. Install friction is moderate due to compiled dependencies, but pre-built wheels mitigate build complexity. Not suitable for Windows or macOS without additional setup.

Install

scann on PyPI

Before you install

Medium friction due to compiled wheels requiring specific CPU instruction sets (AVX and FMA for x86, NEON for ARM) and glibc version 2.27 or later. Actively maintained with recent releases; supports Python 3.9–3.13 on Linux.

Requires x86 processors with AVX and FMA support (or ARM with NEON); libstdc++ version 3.4.23 or above must be installed on the system.

License in practice

Apache-2.0 permissive license allows commercial and private use with minimal restrictions; attribution required.

Quickstart

pip install scann
import scann
# Build index from numpy array of vectors
builder = scann.scann_ops_pybind.builder(data, num_leaves=100, leaves_to_search=10)
index = builder.build()
# Search for nearest neighbors
neighbors, distances = index.search(query_vector, k=10)

Verify before relying

  • Exact performance metrics on ann-benchmarks.com for glove-100-angular dataset mentioned in description
  • Whether TensorFlow integration (scann[tf]) is necessary for typical use cases or only for SavedModel embedding
  • Memory overhead and scaling characteristics for datasets larger than those in published benchmarks

Package facts

LicenseApache-2.0 permissive
Python supportSupports the current Python release <3.14,>=3.9
Install frictionMedium. Platform-specific wheel
Runtime dependencies
2 packages
numpyprotobuf
MaintenanceActively maintained 350 days since the last release
Last repo commit
First released
Downloads679,845 / month, #5,367 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Intended Audience :: DevelopersIntended Audience :: EducationIntended Audience :: Science/ResearchProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9Topic :: Scientific/Engineering :: MathematicsTopic :: Software Development :: LibrariesTopic :: Software Development :: Libraries :: Python Modules

Evidence: scann-1.4.2-cp310-cp310-manylinux_2_27_aarch64.whl; scann-1.4.2-cp310-cp310-manylinux_2_27_x86_64.whl; scann-1.4.2-cp311-cp311-manylinux_2_27_aarch64.whl; scann-1.4.2-cp311-cp311-manylinux_2_27_x86_64.whl; scann-1.4.2-cp312-cp312-manylinux_2_27_aarch64.whl; scann-1.4.2-cp312-cp312-manylinux_2_27_x86_64.whl; scann-1.4.2-cp313-cp313-manylinux_2_27_aarch64.whl; scann-1.4.2-cp313-cp313-manylinux_2_27_x86_64.whl; scann-1.4.2-cp39-cp39-manylinux_2_27_aarch64.whl; scann-1.4.2-cp39-cp39-manylinux_2_27_x86_64.whl

Tags

Capabilities
vector similarity searchnearest neighbor searchapproximate nearest neighborsvector quantizationlarge-scale similarityann libraryembedding search
Topics
vector-searchapproximate-nearest-neighborsml-infrastructure
PyPI keywords
machinelearning

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “large-scale similarity”

  • scannScaNN performs efficient vector similarity search at scale using…
  • pyspark-hnswProvides a PySpark-compatible implementation of the Hierarchical…
  • nmslibnmslib provides efficient similarity search in metric and non-metric…

Give your agent the search over MCP, or paste the wish link into any chat.

More Libraries packages

urllib3 Worth it
PyPI · Libraries · released May 2026

urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.

MITpure Python · 3.10+
1.8Bdownloads / mo
requests Worth it
PyPI · Libraries · released May 2026

Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.

Apache-2.0pure Python · 3.10+
1.8Bdownloads / mo
pluggy Worth it
PyPI · Libraries · released May 2025

Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.

Install it if you're building an extensible application or framework.

MITpure Python · 3.9+aging
1.3Bdownloads / mo
python-dateutil Worth it
PyPI · Libraries · released Mar 2024

Provides parsing, arithmetic, and recurrence rule computation for dates and times, with timezone support and iCalendar RFC compliance.

Install it if you need to parse flexible date strings, compute relative dates, handle timezones, or work with recurrence rules—it's the de facto choice for these tasks.

Apache-2.0pure Python
1.2Bdownloads / mo
six With conditions
PyPI · Libraries · released Dec 2024

Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.

MITpure Python
1.2Bdownloads / mo
pytest Worth it
PyPI · Libraries · released Jun 2026

pytest is a testing framework that lets you write test functions using plain assert statements and automatically discovers and runs them, with detailed failure reporting.

MITpure Python · 3.10+
1.1Bdownloads / mo

See also nmslib · annoy · libcuvs-cu12 · cuvs-cu12 · pynndescent · voyager · simsimd · edt · pyspark-hnsw · usearch