$npx skillfedfor your agent

voyager

Easy-to-use, fast, simple multi-platform approximate nearest-neighbor search library.

Worth itPyPI Database Engines/ServersReleased Dec 2024118.0K downloads / mopermissive licensePlatform wheel

Decision gist · record as of 2026-08-14

platform wheels — voyager-2.1.0-cp310-cp310-macosx_10_13_universal2.whl · voyager-2.1.0-cp310-cp310-macosx_10_13_x86_64.whl · voyager-2.1.0-cp310-cp310-macosx_11_0_arm64.whl
v2.1.0 · released 2024-12-13 · 1 runtime deps: numpy

Yes. Voyager is production-ready, actively maintained, permissively licensed, and has no known vulnerabilities. It offers a clean API for a common and performance-critical task (approximate nearest-neighbor search). Install it if you need fast vector similarity queries on embeddings; the medium install friction is offset by broad platform coverage and proven scale at Spotify.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires numpy; compiled wheels are available for common platforms, but installation may require a C++ compiler on unsupported architectures.
  • Medium install friction due to compiled C++ bindings, but pre-built wheels cover Python 3.7–3.12 across Linux (x86_64, ARM), macOS (Intel, ARM), and Windows (x86_64).
  • Actively maintained with recent commits and production use at scale.

License · maintenance · safety

permissive license (permissive) — Licensed under Apache 2, a permissive open-source license allowing commercial and private use with minimal restrictions—suitable for most projects without legal concern.

last release 2024-12-13 (609 days) · last repo commit 2026-03-01 · 1,589 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 117,976 downloads/mo, #12,140 on PyPI

Verify before relying

pip install voyager
import voyager
import numpy

index = voyager.Index(space='cosine')
index.add(vectors)
nearest = index.query(query_vector, k=10)
  • Whether the package supports dynamic index updates (add/remove vectors after initial build) or requires rebuild.
  • Memory overhead and scalability limits for very large vector collections.
  • Tuning guidance for HNSW parameters (M, ef_construction, ef) for different use cases.
  • Performance comparison specifics with other approximate nearest-neighbor libraries beyond the ann-benchmarks reference.
Same gist for agents: .md · .json

What it is and what it does

Voyager is a production-grade library for approximate nearest-neighbor search on vector embeddings, built on the HNSW algorithm and used at Spotify to handle hundreds of millions of queries daily. It wraps the open-source hnswlib with additional convenience features and maintains feature parity between Python and Java implementations, making it suitable for both single-machine and distributed systems that need fast similarity lookups on embedding data.

The library is designed for in-memory operation, meaning vectors are loaded into RAM for query speed. It supports multiple distance metrics (e.g., cosine, Euclidean) and is optimized for recall-accuracy tradeoffs typical of approximate search. Installation is straightforward via pip on supported platforms (Linux, macOS, Windows), with pre-built wheels for Python 3.7–3.12, though it does depend on numpy and compiled C++ bindings.

Use it for

  • Powering recommendation systems by finding similar user embeddings or item embeddings in real time.
  • Semantic search over document embeddings to retrieve relevant results faster than exact similarity.
  • Duplicate detection by indexing embeddings and querying for near-neighbors to identify similar content.
  • Machine learning feature retrieval, retrieving nearest neighbors in embedding space for classification or clustering tasks.
  • Real-time personalization by querying user preference embeddings against product or content embeddings.

Worth the install?

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

Worth it

Yes.

Voyager is production-ready, actively maintained, permissively licensed, and has no known vulnerabilities. It offers a clean API for a common and performance-critical task (approximate nearest-neighbor search). Install it if you need fast vector similarity queries on embeddings; the medium install friction is offset by broad platform coverage and proven scale at Spotify.

Install

voyager on PyPI

Before you install

Medium install friction due to compiled C++ bindings, but pre-built wheels cover Python 3.7–3.12 across Linux (x86_64, ARM), macOS (Intel, ARM), and Windows (x86_64). Actively maintained with recent commits and production use at scale.

Requires numpy; compiled wheels are available for common platforms, but installation may require a C++ compiler on unsupported architectures.

License in practice

Licensed under Apache 2, a permissive open-source license allowing commercial and private use with minimal restrictions—suitable for most projects without legal concern.

Quickstart

pip install voyager
import voyager
import numpy

index = voyager.Index(space='cosine')
index.add(vectors)
nearest = index.query(query_vector, k=10)

Verify before relying

  • Whether the package supports dynamic index updates (add/remove vectors after initial build) or requires rebuild.
  • Memory overhead and scalability limits for very large vector collections.
  • Tuning guidance for HNSW parameters (M, ef_construction, ef) for different use cases.
  • Performance comparison specifics with other approximate nearest-neighbor libraries beyond the ann-benchmarks reference.

Package facts

Licensepermissive license permissive
Python supportNot specified
Install frictionMedium. Platform-specific wheel
Runtime dependencies
1 package
numpy
MaintenanceActively maintained 609 days since the last release
Last repo commit
First released
Downloads117,976 / month, #12,140 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableLicense :: OSI Approved :: Apache Software LicenseOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: C++Programming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Database :: Database Engines/Servers

Evidence: voyager-2.1.0-cp310-cp310-macosx_10_13_universal2.whl; voyager-2.1.0-cp310-cp310-macosx_10_13_x86_64.whl; voyager-2.1.0-cp310-cp310-macosx_11_0_arm64.whl; voyager-2.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; voyager-2.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; voyager-2.1.0-cp310-cp310-win_amd64.whl; voyager-2.1.0-cp311-cp311-macosx_10_13_universal2.whl; voyager-2.1.0-cp311-cp311-macosx_10_13_x86_64.whl; voyager-2.1.0-cp311-cp311-macosx_11_0_arm64.whl; voyager-2.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; voyager-2.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; voyager-2.1.0-cp311-cp311-win_amd64.whl; voyager-2.1.0-cp312-cp312-macosx_10_13_universal2.whl; voyager-2.1.0-cp312-cp312-macosx_10_13_x86_64.whl; voyager-2.1.0-cp312-cp312-macosx_11_0_arm64.whl; voyager-2.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; voyager-2.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; voyager-2.1.0-cp312-cp312-win_amd64.whl; voyager-2.1.0-cp37-cp37m-macosx_10_13_x86_64.whl; voyager-2.1.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Tags

Capabilities
approximate nearest neighbor searchvector similarity searchembedding search libraryHNSW vector indexfast vector retrievalin-memory vector databasenearest neighbor lookup
Topics
vector-searchembeddingssimilarity-search

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 › “fast vector retrieval”

  • voyagerVoyager performs fast approximate nearest-neighbor searches on…
  • llama-index-vector-stores-redisIntegrates Redis as a vector store backend for LlamaIndex, enabling…
  • colbert-aiColBERT is a BERT-based retrieval model that encodes passages and…

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

More Database Engines/Servers packages

duckdb Worth it
PyPI · Scientific/Engineering · released Jul 2026

DuckDB is an in-process SQL database engine that executes analytical queries on local and remote data files (CSV, Parquet, JSON) without requiring a separate server or external dependencies.

MITcompiled wheel · 3.10.0+
57.2Mdownloads / mo
pymssql Worth it
PyPI · Python Modules · released Feb 2026

pymssql provides a Python DB-API interface to Microsoft SQL Server, built on FreeTDS, enabling standard database operations like connecting, querying, and retrieving results.

Install it if you need to connect Python to Microsoft SQL Server and prefer a lightweight, DB-API-compliant interface over heavier ORMs.

copyleftcompiled wheel · 3.9+
54.9Mdownloads / mo
mysqlclient With conditions
PyPI · Database · released Feb 2026

mysqlclient provides a Python interface to MySQL and MariaDB databases, enabling direct database connections and query execution from Python code.

GPL-2.0-or-latercompiled wheel · 3.10+
21.6Mdownloads / mo
sqlmodel Worth it
PyPI · Internet · released Jun 2026

SQLModel combines SQLAlchemy and Pydantic to let you define SQL database tables and rows as Python classes with type annotations, eliminating code duplication between ORM models and data validators.

MITpure Python · 3.10+
21.0Mdownloads / mo
tinydb With conditions
PyPI · Utilities · released Aug 2026

TinyDB is a lightweight, pure-Python document database that stores JSON-like dictionaries to local files, with no external dependencies or server required.

MITpure Python
6.9Mdownloads / mo
vertica-python With conditions
PyPI · Python Modules · released Jul 2024

Native Python client library for connecting to and querying Vertica databases, implementing the DB-API v2.0 standard.

However, the aging maintenance status suggests it may not receive timely updates for new Vertica features or Python versions—verify compatibility with your specific…

Apache-2.0pure Python · 3.7+aging
5.9Mdownloads / mo

See also nmslib · pyspark-hnsw · usearch · annoy · hnswlib · cuvs-cu12 · scann · kdtree · lunr · turbopuffer

Further reading