Skip to main content

Python bindings for HNSW (Hierarchical Navigable Small World) vector search

Project description

pyhnsw - Python Bindings for HNSW

Fast approximate nearest neighbor search using Hierarchical Navigable Small World (HNSW) graphs.

Features

  • Fast: SIMD-accelerated distance calculations using Eigen
  • Simple: Clean Python API similar to popular ANN libraries
  • Flexible: Supports both L2 and cosine distance metrics
  • Efficient: Batch operations for adding and searching multiple vectors
  • Type Support: Both single (float32) and double (float64) precision

Installation

From Source

First, ensure you have the required dependencies:

pip install numpy pybind11

Then build and install the package:

cd bindings/pyhnsw
pip install .

Build with CMake (Alternative)

cd bindings/pyhnsw
mkdir build && cd build
cmake ..
make

Quick Start

import numpy as np
import pyhnsw

# Create an index for 128-dimensional vectors
index = pyhnsw.HNSW(dim=128, M=16, ef_construction=200, ef_search=100, metric="l2")

# Generate some random data
data = np.random.randn(10000, 128).astype(np.float32)

# Add vectors to the index
index.add_items(data)

# Search for nearest neighbors
query = np.random.randn(128).astype(np.float32)
indices, distances = index.search(query, k=10)

print(f"Found {len(indices)} nearest neighbors")
print(f"Indices: {indices}")
print(f"Distances: {distances}")

API Reference

HNSW Class

pyhnsw.HNSW(dim, M=16, ef_construction=200, ef_search=100, metric="l2")

Creates a new HNSW index.

Parameters:

  • dim (int): Dimensionality of the vectors
  • M (int): Maximum number of connections per element (default: 16)
  • ef_construction (int): Size of the dynamic candidate list during construction (default: 200)
  • ef_search (int): Size of the dynamic candidate list during search (default: 100)
  • metric (str): Distance metric to use ('l2' or 'cosine', default: 'l2')

Methods

add_item(vec)

Add a single vector to the index.

Parameters:

  • vec (numpy.ndarray): 1D array of shape (dim,) containing the vector

add_items(data)

Add multiple vectors to the index.

Parameters:

  • data (numpy.ndarray): 2D array of shape (n_items, dim) containing the vectors

search(query, k=10)

Search for k nearest neighbors of a query vector.

Parameters:

  • query (numpy.ndarray): 1D array of shape (dim,) containing the query vector
  • k (int): Number of nearest neighbors to return (default: 10)

Returns:

  • indices (numpy.ndarray): 1D array of shape (k,) containing the indices of nearest neighbors
  • distances (numpy.ndarray): 1D array of shape (k,) containing the distances to nearest neighbors

batch_search(queries, k=10)

Search for k nearest neighbors of multiple query vectors.

Parameters:

  • queries (numpy.ndarray): 2D array of shape (n_queries, dim) containing the query vectors
  • k (int): Number of nearest neighbors to return (default: 10)

Returns:

  • indices (numpy.ndarray): 2D array of shape (n_queries, k) containing the indices
  • distances (numpy.ndarray): 2D array of shape (n_queries, k) containing the distances

size()

Get the number of items in the index.

dim()

Get the dimensionality of vectors in the index.

Examples

Using Cosine Similarity

import numpy as np
import pyhnsw

# Create index with cosine metric
index = pyhnsw.HNSW(dim=512, metric="cosine")

# For cosine similarity, it's recommended to normalize vectors
data = np.random.randn(1000, 512).astype(np.float32)
data = data / np.linalg.norm(data, axis=1, keepdims=True)

index.add_items(data)

# Search with normalized query
query = np.random.randn(512).astype(np.float32)
query = query / np.linalg.norm(query)

indices, distances = index.search(query, k=5)

Batch Processing

import numpy as np
import pyhnsw

# Create index
index = pyhnsw.HNSW(dim=256)

# Add data in batches
batch_size = 1000
for i in range(0, 10000, batch_size):
    batch = np.random.randn(batch_size, 256).astype(np.float32)
    index.add_items(batch)

# Batch search
queries = np.random.randn(100, 256).astype(np.float32)
indices, distances = index.batch_search(queries, k=20)

# Process results
for i, (idx, dist) in enumerate(zip(indices, distances)):
    print(f"Query {i}: Found {len(idx)} neighbors")

Double Precision

import numpy as np
import pyhnsw

# Use HNSWDouble for float64 precision
index = pyhnsw.HNSWDouble(dim=128)

# Use float64 arrays
data = np.random.randn(1000, 128).astype(np.float64)
index.add_items(data)

query = np.random.randn(128).astype(np.float64)
indices, distances = index.search(query, k=10)

Performance Tips

  1. Parameter Tuning:

    • Increase M for better recall at the cost of memory and construction time
    • Increase ef_construction for better index quality at the cost of construction time
    • Increase ef_search for better search recall at the cost of search time
  2. Batch Operations:

    • Use add_items() instead of multiple add_item() calls
    • Use batch_search() for multiple queries
  3. Data Preprocessing:

    • Normalize vectors when using cosine similarity
    • Use float32 for better performance unless you need double precision

Testing

Run the test suite:

python test_pyhnsw.py

Dependencies

  • Python >= 3.7
  • NumPy >= 1.19.0
  • pybind11 >= 2.6.0
  • Eigen3 (automatically fetched during build)
  • C++17 compatible compiler

License

See the main project LICENSE file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyhnsw-0.1.0.tar.gz (13.8 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pyhnsw-0.1.0-cp312-cp312-win_amd64.whl (107.8 kB view details)

Uploaded CPython 3.12Windows x86-64

pyhnsw-0.1.0-cp312-cp312-musllinux_1_1_x86_64.whl (677.7 kB view details)

Uploaded CPython 3.12musllinux: musl 1.1+ x86-64

pyhnsw-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (166.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pyhnsw-0.1.0-cp312-cp312-macosx_11_0_arm64.whl (131.7 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyhnsw-0.1.0-cp312-cp312-macosx_10_9_x86_64.whl (142.3 kB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

pyhnsw-0.1.0-cp311-cp311-win_amd64.whl (106.8 kB view details)

Uploaded CPython 3.11Windows x86-64

pyhnsw-0.1.0-cp311-cp311-musllinux_1_1_x86_64.whl (676.8 kB view details)

Uploaded CPython 3.11musllinux: musl 1.1+ x86-64

pyhnsw-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (165.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pyhnsw-0.1.0-cp311-cp311-macosx_11_0_arm64.whl (130.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyhnsw-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl (140.0 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

pyhnsw-0.1.0-cp310-cp310-win_amd64.whl (106.1 kB view details)

Uploaded CPython 3.10Windows x86-64

pyhnsw-0.1.0-cp310-cp310-musllinux_1_1_x86_64.whl (675.9 kB view details)

Uploaded CPython 3.10musllinux: musl 1.1+ x86-64

pyhnsw-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (164.4 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pyhnsw-0.1.0-cp310-cp310-macosx_11_0_arm64.whl (129.0 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pyhnsw-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl (138.6 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

pyhnsw-0.1.0-cp39-cp39-win_amd64.whl (107.7 kB view details)

Uploaded CPython 3.9Windows x86-64

pyhnsw-0.1.0-cp39-cp39-musllinux_1_1_x86_64.whl (676.1 kB view details)

Uploaded CPython 3.9musllinux: musl 1.1+ x86-64

pyhnsw-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (164.6 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

pyhnsw-0.1.0-cp39-cp39-macosx_11_0_arm64.whl (129.2 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

pyhnsw-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl (138.7 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

pyhnsw-0.1.0-cp38-cp38-win_amd64.whl (105.7 kB view details)

Uploaded CPython 3.8Windows x86-64

pyhnsw-0.1.0-cp38-cp38-musllinux_1_1_x86_64.whl (675.8 kB view details)

Uploaded CPython 3.8musllinux: musl 1.1+ x86-64

pyhnsw-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (164.2 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

pyhnsw-0.1.0-cp38-cp38-macosx_11_0_arm64.whl (129.0 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

pyhnsw-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl (138.5 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

File details

Details for the file pyhnsw-0.1.0.tar.gz.

File metadata

  • Download URL: pyhnsw-0.1.0.tar.gz
  • Upload date:
  • Size: 13.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyhnsw-0.1.0.tar.gz
Algorithm Hash digest
SHA256 89bff299f54a3dfb5bc0341450ec7c88bafbab6b2e2b7426aeaad10fcf027ea4
MD5 264686a62e19f584997b64f6e1b44872
BLAKE2b-256 280f8664fbd4feeb79e8f7a221520532ace599fdc8ff10e13589636634c1b510

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0.tar.gz:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pyhnsw-0.1.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 107.8 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyhnsw-0.1.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 99250f63a887cbc72f4f3f0a4518798619218bd56edd90bf24f7314efa2c55a0
MD5 1e8c1abe61c374350fa16d0b5e6385ba
BLAKE2b-256 2a2597364274eb7b8788df73fb094047510e1bb822ea5d6bd248deb1f538bb3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp312-cp312-win_amd64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp312-cp312-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 7167ef617251cf43436a8376e72f4bde4857cb83b140c5ed4a1d3e007eadcdf2
MD5 4b55b9d3c45339b0f380e74223744086
BLAKE2b-256 28a8649cadc95d6c54dfd8bb96958decf2578d3a39ac3373c996a0f573bad57e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp312-cp312-musllinux_1_1_x86_64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d7999af0c4ac46fc6e4cf064a5b2aec2b2abae1f370e24dd21621fb1cb92e0ef
MD5 dc32d83257780b0b2a53956c27d697b0
BLAKE2b-256 115c88b43acc09f1033e178f4fdb5cb1cf81ef4a9b4d53bee88c165563f1867e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e8b58f5bc4ac16ec09fa382879f1b0b733374e6a2e9933cbdc2140280ea52db0
MD5 8fd197697ec3f2cab9ff8d555297b72b
BLAKE2b-256 464d5413f79b869211a89d0c02cdb72882e7d2425718b54af38bfb54109c3133

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d496e2919626951dcbfccc95d833b6976cc6c5544f5b2b33d328eb6db86c8d1c
MD5 d983ee7b5b5c6c01d3d287af0b4404af
BLAKE2b-256 271c7f749ac84a71fce11853840886f038b6af8b9d6e07815154dba0aba6e67a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp312-cp312-macosx_10_9_x86_64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pyhnsw-0.1.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 106.8 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyhnsw-0.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 38cd6d03c610f6154aaaa1767b5898afe5fc8f406c78bc4b0e789cfad611a183
MD5 8f3aa0ca7bb995a294f7c309f8af55f2
BLAKE2b-256 f1f1618dcab5e8b08e986a36045f4dcc66304a0d026d38056ed2d3294d71f693

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp311-cp311-win_amd64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 ef6fa1a59f4c53f17e754e7aa35868584c42a0be33d425b5eb01bd3b5ebc637f
MD5 0d4cef339345b369f97f184801079ca7
BLAKE2b-256 61a09eb3f4a6d4eb3675cf84cfd7590d97b8948be995b2eb29df04dabe220643

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp311-cp311-musllinux_1_1_x86_64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1babd3f51589e3380425be37c7e8ab07168e5681985c80fb23085c43296b9d02
MD5 a3bd6bcf141b5f0c2ee48b44bf960e69
BLAKE2b-256 51bddf9661df3fe092167630f5fa7b8de6a31ee36ed2b6d41a4c1da07c17f3f8

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e6dd0cdc4a77e1f172a151bd7d8ee47745269c46e22ddc17261ad8b6abf5b8b2
MD5 197573ba3deda730f8ac8a69d7674e2a
BLAKE2b-256 8705dc58a5f7fd7ecf8c8fe3907c0dc9258490ee3cb5be05a6ac811d150de2a0

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 c4801dbbe3baa2123e531ed0b67574f8c060155144e4791ed0c7e7ff28b8e13d
MD5 a8fd16426171f1e4f4039ab0e50fba7b
BLAKE2b-256 15536565c447e1c1dd9e7a0d505d13df69ad3401a99386fabdf9646c196d8ae6

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pyhnsw-0.1.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 106.1 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyhnsw-0.1.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 0ed0219d052a70ec1436d789ebd50b9df5a297ba5e62d5321a1f69e7ba71c929
MD5 e6849cff0a1cb82782e1d47b50030b96
BLAKE2b-256 5b83e9bb2c7479378bbcbafd03e20e007cf142581c7e2edac1163b516f55e7ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp310-cp310-win_amd64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 fa745b252918936a11e23df02198a0fb1715c494be4b3f8286415a1fd4370c76
MD5 1fc065e40b4e22731c23dd82b14acbcc
BLAKE2b-256 c7459ec4fbc96f1f293f2b46fbb23dfeae220233ce349b9ad401e9b95a793fce

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp310-cp310-musllinux_1_1_x86_64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 33a55f5b99543490a4c328c7a853736c1ec2c138ef147df20853af7bd174c9f6
MD5 40878dccfa214e9c355ba49b0bb15e54
BLAKE2b-256 6af5cf0ef5d806287835ab2fc7e5f16882ba06cf1c9ca8320def2eb4257450c2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 133ecef0dc0dedfeb21b4b9133b2db3a80bc9e145d86222ba8318df939cd4b99
MD5 d91731098c0f25f0d6f06e25d9a12fe8
BLAKE2b-256 4021f54ce763221ed15ab9452e5a6cc61446d70567efd7307bd2a2e7217464f8

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5ff6da4bc7ad92e4d48b253fb6050c38be201f5bf04f001ea1ccf9e14fa2f5ed
MD5 1d2c8e8e7b82c6c1daf44646edbf7bd7
BLAKE2b-256 c137926fb1b2022b42acfea1010e52fc31cb0cd30ffc0d3687ba1c9f2dde06be

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: pyhnsw-0.1.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 107.7 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyhnsw-0.1.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 8123f6bed227e5fd1259980ca05cf70a52e92f866cb4abeaa205552fafee18c6
MD5 e406fafca017a3c83b6e35420a2e1b26
BLAKE2b-256 53bed2523806481e31d231dd09486fdf8fe32b2d1666fa612d0829120954eb15

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp39-cp39-win_amd64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 07cef930406d05916e9a70281cda7fe188219f0173ad1a3415f4e88baeb0a45a
MD5 883db669f6e80edb9be056764baad1d4
BLAKE2b-256 96ddd61a8dccea42a2c4a1a92f06118dfa21a274fe6e78e5eaf7c2f6bfcabedc

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp39-cp39-musllinux_1_1_x86_64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1b5faebe2ba9c580997570a876721f2d166fbc5e0dc664e6a843e1e300edc3f2
MD5 eb8a77d66d883c92a3b17cb7898f5caf
BLAKE2b-256 90621feca6d68f1c844620d6c1048602caebaa44f8378e54713733bb5db3e2ca

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 01850dd61c365a41ba3f0395c71e68dacd76e1809944273f223e3c077b136ca2
MD5 551f1429475d3397d2a90b8e4e3e1e67
BLAKE2b-256 1c7957c78c0e8fced0a0d9c875b335e4fc16d17e30433ac3c6fa498f01284ec2

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 bee64cf04e7be0257745e7f993f2f9aeea406fccb81eaaa7a1175bc4d03d6991
MD5 467e1051dfe4dd1230624c5a7440a100
BLAKE2b-256 8f5584c352eba944abe18d3ef8fadc42e173657ddb538f98d3b02b5a7a0790ae

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: pyhnsw-0.1.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 105.7 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyhnsw-0.1.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 07e796ed3c846a391b8959429cc326e91aed0306d3499a9dcf87161492f9b85e
MD5 6cae782768d3da473033da50d1d1978b
BLAKE2b-256 0846b3ef288fae39da39eef7e86c41a0aa61c4f9d7c35b79cb47530c3cacb040

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp38-cp38-win_amd64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 d1083ed51d755f75ecc104018f6bc9a709f19d14b4d326c73348595f89efaac8
MD5 79869787058a550d3b59c711383f58d4
BLAKE2b-256 1d869175b2f10cc2fad2b8e7834978b6d737ae1fe561c0bb3917d12ee0de7071

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp38-cp38-musllinux_1_1_x86_64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4819ee947e28653401a3b4993ccb6a3d0dda1e45db844f7f0e3c9abab9fa3fdb
MD5 81d339c358f5d423fe0e12f808049885
BLAKE2b-256 bb609c90a59bab91b6d56db949021a085727cfa99c3487cf495a9a605f6d839f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d0f7f18deff9ab2febc03863f6462738abe2b23a3bd5d857904a5edfe0cb0d5d
MD5 226bd2852a8138c0519e041fce2b9a50
BLAKE2b-256 1bd290661a2965d7c9a19137c72358b0f2d562d84b2a36e335cfb1adfb53f6e1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp38-cp38-macosx_11_0_arm64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyhnsw-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pyhnsw-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b55272b857d6c56c217a5099999085c5c28a79deacdb54d4d0bc144555538fba
MD5 02efb5eed2fdc04945fb88993957edca
BLAKE2b-256 f5622b2b7c766f1d6725ffe3f614f79df027f4a8ba7de382200d7b7b68fd359e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyhnsw-0.1.0-cp38-cp38-macosx_10_9_x86_64.whl:

Publisher: build-and-test.yml on dicroce/hnsw

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page