Skip to main content

High-performance vector database library for Python with multiple index types and metadata support

Project description

GigaVector

GigaVector Logo

PyPI Downloads

A high-performance vector database library for Python. GigaVector provides efficient similarity search with support for multiple index types, metadata filtering, and persistent storage.

Features

Core Database:

  • Multiple index types: KD-tree, HNSW, and IVFPQ
  • Distance metrics: Euclidean and Cosine similarity
  • Rich metadata support with key-value pairs
  • Metadata filtering in search queries
  • Persistent storage with snapshot and WAL (Write-Ahead Log)
  • Batch operations for vector insertion and search
  • Thread-safe operations

Advanced Features:

  • GPU acceleration with CUDA support
  • HTTP REST API server
  • BM25 full-text search
  • Hybrid search (vector + text fusion)
  • Backup and restore with compression
  • TTL (Time-to-Live) for automatic data expiration

Enterprise Features:

  • Multi-tenancy with namespaces
  • Sharding for horizontal scaling
  • Replication for high availability
  • Cluster management
  • API key and JWT authentication

Installation

pip install gigavector

Pre-built wheels for Linux (x86_64), macOS (x86_64 + arm64), and Windows (AMD64) are published to PyPI. The wheel bundles the native library and all runtime DLLs — no compiler or MinGW required.

Building from source requires a C toolchain. On Windows this means MSYS2 with MinGW-w64 (mingw-w64-x86_64-gcc, mingw-w64-x86_64-cmake, mingw-w64-x86_64-make) and C:\msys64\mingw64\bin on PATH. MinGW is a build-time dependency only and is not needed at runtime.

Quick Start

from gigavector import Database, DistanceType, IndexType

# Create an in-memory database
with Database.open(None, dimension=128, index=IndexType.HNSW) as db:
    # Add vectors with metadata
    db.add_vector([0.1] * 128, metadata={"id": "vec1", "category": "A"})
    db.add_vector([0.2] * 128, metadata={"id": "vec2", "category": "B"})
    
    # Search for similar vectors
    hits = db.search([0.1] * 128, k=5, distance=DistanceType.EUCLIDEAN)
    for hit in hits:
        print(f"Distance: {hit.distance}, Metadata: {hit.vector.metadata}")

API Reference

Database

The main class for vector database operations.

Database.open(path, dimension, index=IndexType.KDTREE)

Create or open a database instance.

Parameters:

  • path (str | None): File path for persistent storage. Use None for in-memory database.
  • dimension (int): Vector dimension (must be consistent for all vectors).
  • index (IndexType): Index type to use. Defaults to IndexType.KDTREE.

Returns: Database instance

Example:

# In-memory database
db = Database.open(None, dimension=128, index=IndexType.HNSW)

# Persistent database
db = Database.open("vectors.db", dimension=128, index=IndexType.KDTREE)

add_vector(vector, metadata=None)

Add a single vector to the database.

Parameters:

  • vector (Sequence[float]): Vector data as a sequence of floats. Length must match database dimension.
  • metadata (dict[str, str] | None): Optional dictionary of key-value metadata pairs.

Raises:

  • ValueError: If vector dimension doesn't match database dimension.
  • RuntimeError: If insertion fails.

Example:

# Vector without metadata
db.add_vector([1.0, 2.0, 3.0])

# Vector with single metadata entry
db.add_vector([1.0, 2.0, 3.0], metadata={"id": "123"})

# Vector with multiple metadata entries
db.add_vector([1.0, 2.0, 3.0], metadata={
    "id": "123",
    "category": "electronics",
    "price": "99.99"
})

add_vectors(vectors)

Add multiple vectors to the database in batch. Vectors added via this method cannot include metadata.

Parameters:

  • vectors (Iterable[Sequence[float]]): Iterable of vectors. All vectors must have the same dimension.

Raises:

  • ValueError: If vectors have inconsistent dimensions.
  • RuntimeError: If batch insertion fails.

Example:

vectors = [
    [1.0, 2.0, 3.0],
    [4.0, 5.0, 6.0],
    [7.0, 8.0, 9.0]
]
db.add_vectors(vectors)

search(query, k, distance=DistanceType.EUCLIDEAN, filter_metadata=None)

Search for k nearest neighbors to a query vector.

Parameters:

  • query (Sequence[float]): Query vector. Length must match database dimension.
  • k (int): Number of nearest neighbors to return.
  • distance (DistanceType): Distance metric to use. Defaults to DistanceType.EUCLIDEAN.
  • filter_metadata (tuple[str, str] | None): Optional metadata filter as (key, value) tuple. Only vectors matching the filter are considered.

Returns: list[SearchHit] - List of search results, ordered by distance (ascending).

Raises:

  • ValueError: If query dimension doesn't match database dimension.
  • RuntimeError: If search fails.

Example:

# Basic search
hits = db.search([1.0, 2.0, 3.0], k=5, distance=DistanceType.EUCLIDEAN)

# Search with metadata filter
hits = db.search(
    [1.0, 2.0, 3.0],
    k=5,
    distance=DistanceType.EUCLIDEAN,
    filter_metadata=("category", "electronics")
)

search_batch(queries, k, distance=DistanceType.EUCLIDEAN)

Search for k nearest neighbors for multiple query vectors in batch.

Parameters:

  • queries (Iterable[Sequence[float]]): Iterable of query vectors.
  • k (int): Number of nearest neighbors to return per query.
  • distance (DistanceType): Distance metric to use. Defaults to DistanceType.EUCLIDEAN.

Returns: list[list[SearchHit]] - List of search result lists, one per query.

Raises:

  • ValueError: If any query dimension doesn't match database dimension.
  • RuntimeError: If batch search fails.

Example:

queries = [
    [1.0, 2.0, 3.0],
    [4.0, 5.0, 6.0]
]
results = db.search_batch(queries, k=5)
for i, hits in enumerate(results):
    print(f"Query {i}: {len(hits)} results")

save(path=None)

Persist the database to a binary snapshot file. If a file path was provided when opening the database, writes to that path. Otherwise, use the provided path.

Parameters:

  • path (str | None): Optional file path. If None and database was opened with a path, uses that path.

Raises:

  • RuntimeError: If save operation fails.

Example:

# Save to the path used when opening
db.save()

# Save to a different path
db.save("backup.db")

train_ivfpq(data)

Train the IVFPQ index with training vectors. Only applicable when using IndexType.IVFPQ.

Parameters:

  • data (Sequence[Sequence[float]]): Training vectors. All vectors must match the database dimension.

Raises:

  • ValueError: If training data is empty or dimensions don't match.
  • RuntimeError: If training fails.

Example:

# Train with at least 256 vectors (recommended)
train_data = [[(i % 10) / 10.0 for _ in range(128)] for i in range(256)]
db.train_ivfpq(train_data)

close()

Close the database and release resources. Automatically called when using the context manager.

Example:

db = Database.open(None, dimension=128)
# ... use database ...
db.close()

IndexType

Enumeration of available index types.

  • IndexType.KDTREE: KD-tree index. Good for low to medium dimensional data.
  • IndexType.HNSW: Hierarchical Navigable Small World graph. Good for high-dimensional data with fast approximate search.
  • IndexType.IVFPQ: Inverted File with Product Quantization. Memory-efficient for large-scale datasets. Requires training before use.

DistanceType

Enumeration of distance metrics.

  • DistanceType.EUCLIDEAN: Euclidean (L2) distance.
  • DistanceType.COSINE: Cosine similarity distance.

Vector

Data class representing a vector with metadata.

Attributes:

  • data (list[float]): Vector data.
  • metadata (dict[str, str]): Dictionary of metadata key-value pairs.

SearchHit

Data class representing a search result.

Attributes:

  • distance (float): Distance from the query vector.
  • vector (Vector): The matched vector with its metadata.

Usage Examples

Persistent Storage with WAL

from gigavector import Database, IndexType, DistanceType

# Create a persistent database
with Database.open("vectors.db", dimension=128, index=IndexType.KDTREE) as db:
    db.add_vector([0.1] * 128, metadata={"id": "1", "tag": "A"})
    db.add_vector([0.2] * 128, metadata={"id": "2", "tag": "B"})
    db.save()  # Create snapshot

# Reopen - WAL automatically replays any uncommitted changes
with Database.open("vectors.db", dimension=128, index=IndexType.KDTREE) as db:
    hits = db.search([0.1] * 128, k=5)
    # All vectors are restored, including metadata

IVFPQ Index with Training

from gigavector import Database, IndexType, DistanceType
import random

# Create IVFPQ database
db = Database.open(None, dimension=64, index=IndexType.IVFPQ)

# Generate training data (at least 256 vectors recommended)
train_data = [
    [random.random() for _ in range(64)]
    for _ in range(256)
]
db.train_ivfpq(train_data)

# Add vectors
with db:
    for i in range(1000):
        vec = [random.random() for _ in range(64)]
        db.add_vector(vec, metadata={"id": str(i)})
    
    # Search
    query = [random.random() for _ in range(64)]
    hits = db.search(query, k=10, distance=DistanceType.EUCLIDEAN)

Metadata Filtering

from gigavector import Database, IndexType, DistanceType

with Database.open(None, dimension=128, index=IndexType.HNSW) as db:
    # Add vectors with different categories
    db.add_vector([0.1] * 128, metadata={"category": "A", "price": "10"})
    db.add_vector([0.2] * 128, metadata={"category": "B", "price": "20"})
    db.add_vector([0.15] * 128, metadata={"category": "A", "price": "15"})
    
    # Search only in category A
    hits = db.search(
        [0.1] * 128,
        k=10,
        distance=DistanceType.EUCLIDEAN,
        filter_metadata=("category", "A")
    )
    # Returns only vectors with category="A"

Batch Operations

from gigavector import Database, IndexType, DistanceType

with Database.open(None, dimension=128, index=IndexType.KDTREE) as db:
    # Batch insert vectors (without metadata)
    vectors = [[i * 0.01] * 128 for i in range(1000)]
    db.add_vectors(vectors)
    
    # Batch search
    queries = [[i * 0.01] * 128 for i in range(10)]
    results = db.search_batch(queries, k=5)
    for i, hits in enumerate(results):
        print(f"Query {i}: {len(hits)} results")

Advanced Features

GPU Acceleration

from gigavector import gpu_available, gpu_device_count, gpu_get_device_info, GPUIndex, GPUConfig

# Check GPU availability
if gpu_available():
    print(f"GPU devices: {gpu_device_count()}")
    info = gpu_get_device_info(0)
    print(f"Device 0: {info.name}, {info.total_memory // 1024**2} MB")

    # Create GPU-accelerated index
    config = GPUConfig(device_id=0, use_float16=True)
    gpu_index = GPUIndex(dimension=128, config=config)
    gpu_index.add_vectors(vectors)
    results = gpu_index.search(query, k=10)

HTTP REST Server

from gigavector import Database, Server, ServerConfig, IndexType

# Create database and server
db = Database.open(None, dimension=128, index=IndexType.HNSW)
config = ServerConfig(port=8080, enable_cors=True)

with Server(db, config) as server:
    server.start()
    print("Server running on http://localhost:8080")
    # Server handles REST API requests:
    # GET  /health - Health check
    # POST /vectors - Add vector
    # POST /search - Search vectors
    # GET  /stats - Server statistics

BM25 Full-Text Search

from gigavector import BM25Index, BM25Config

# Create BM25 index for text search
config = BM25Config(k1=1.2, b=0.75)
bm25 = BM25Index(config)

# Add documents
bm25.add_document(0, "Machine learning for vector databases")
bm25.add_document(1, "Neural networks and deep learning")
bm25.add_document(2, "Vector similarity search algorithms")

# Search
results = bm25.search("vector search", k=10)
for r in results:
    print(f"Doc {r.doc_id}: score={r.score:.4f}")

bm25.close()

Hybrid Search (Vector + Text)

from gigavector import Database, BM25Index, HybridSearcher, HybridConfig, IndexType

db = Database.open(None, dimension=128, index=IndexType.HNSW)
bm25 = BM25Index()

# Add vectors and corresponding documents
for i, (vec, text) in enumerate(zip(vectors, documents)):
    db.add_vector(vec, metadata={"id": str(i)})
    bm25.add_document(i, text)

# Create hybrid searcher
config = HybridConfig(vector_weight=0.7, text_weight=0.3)
hybrid = HybridSearcher(db, bm25, config)

# Search with both vector and text
results = hybrid.search(query_vector, "search query", k=10)
for r in results:
    print(f"Index {r.vector_index}: combined={r.combined_score:.4f}")

hybrid.close()

Namespaces (Multi-Tenancy)

from gigavector import NamespaceManager, NamespaceConfig

# Create namespace manager
ns_mgr = NamespaceManager("/path/to/data")

# Create isolated namespaces for different tenants
config = NamespaceConfig(name="tenant_a", dimension=128)
tenant_a = ns_mgr.create(config)

config = NamespaceConfig(name="tenant_b", dimension=128)
tenant_b = ns_mgr.create(config)

# Each namespace is isolated
tenant_a.add_vector([0.1] * 128)
tenant_b.add_vector([0.2] * 128)

print(f"Tenant A vectors: {tenant_a.count}")
print(f"Tenant B vectors: {tenant_b.count}")

ns_mgr.close()

TTL (Time-to-Live)

from gigavector import TTLManager, TTLConfig

# Create TTL manager for automatic expiration
config = TTLConfig(
    default_ttl_seconds=3600,  # 1 hour default
    cleanup_interval_seconds=60
)
ttl = TTLManager(config)

# Set TTL for vectors
ttl.set_ttl(vector_index=0, ttl_seconds=1800)  # 30 minutes

# Get stats
stats = ttl.get_stats()
print(f"Vectors with TTL: {stats.total_vectors_with_ttl}")
print(f"Expired: {stats.total_expired}")

ttl.close()

Authentication

from gigavector import AuthManager, AuthConfig, AuthType

# Create auth manager with API key authentication
config = AuthConfig(auth_type=AuthType.API_KEY)
auth = AuthManager(config)

# Generate API key
key, key_id = auth.generate_api_key("My Application")
print(f"API Key: {key}")
print(f"Key ID: {key_id}")

# Authenticate requests
result, identity = auth.authenticate(key)
if result == AuthResult.SUCCESS:
    print(f"Authenticated: {identity.key_id}")

auth.close()

Backup and Restore

from gigavector import (
    Database, backup_create, backup_restore, backup_verify,
    BackupOptions, RestoreOptions, BackupCompression
)

# Create backup
options = BackupOptions(
    compression=BackupCompression.ZSTD,
    include_metadata=True
)
result = backup_create(db, "backup.gvb", options)
print(f"Backup created: {result.vectors_backed_up} vectors")

# Verify backup
if backup_verify("backup.gvb"):
    print("Backup is valid")

# Restore to new database
restore_opts = RestoreOptions(verify_checksums=True)
restored_db = backup_restore("backup.gvb", "restored.db", restore_opts)

Requirements

  • Python 3.9 or higher
  • cffi >= 1.16
  • CUDA toolkit (optional, for GPU acceleration)

On Windows, MinGW-w64 is only required when building from source. The PyPI wheel bundles the MinGW runtime DLLs so no extra software is needed at runtime.

License

Licensed under the DBaJ-NC-CFL License. See LICENCE.md for details.

Links

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

gigavector-0.8.14.tar.gz (2.8 MB view details)

Uploaded Source

Built Distributions

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

gigavector-0.8.14-cp313-cp313-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.13Windows x86-64

gigavector-0.8.14-cp313-cp313-musllinux_1_2_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

gigavector-0.8.14-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

gigavector-0.8.14-cp313-cp313-macosx_11_0_arm64.whl (629.9 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

gigavector-0.8.14-cp312-cp312-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.12Windows x86-64

gigavector-0.8.14-cp312-cp312-musllinux_1_2_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

gigavector-0.8.14-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

gigavector-0.8.14-cp312-cp312-macosx_11_0_arm64.whl (629.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

gigavector-0.8.14-cp311-cp311-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.11Windows x86-64

gigavector-0.8.14-cp311-cp311-musllinux_1_2_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

gigavector-0.8.14-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

gigavector-0.8.14-cp311-cp311-macosx_11_0_arm64.whl (629.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

gigavector-0.8.14-cp310-cp310-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.10Windows x86-64

gigavector-0.8.14-cp310-cp310-musllinux_1_2_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

gigavector-0.8.14-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

gigavector-0.8.14-cp310-cp310-macosx_11_0_arm64.whl (629.9 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

gigavector-0.8.14-cp39-cp39-win_amd64.whl (5.2 MB view details)

Uploaded CPython 3.9Windows x86-64

gigavector-0.8.14-cp39-cp39-musllinux_1_2_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

gigavector-0.8.14-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

gigavector-0.8.14-cp39-cp39-macosx_11_0_arm64.whl (629.9 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

Details for the file gigavector-0.8.14.tar.gz.

File metadata

  • Download URL: gigavector-0.8.14.tar.gz
  • Upload date:
  • Size: 2.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for gigavector-0.8.14.tar.gz
Algorithm Hash digest
SHA256 3ff58bbe5a6729b4f21d07c8400dcd11867fd946e403877140486cb401009d61
MD5 0ff191f5a75b940a41a69a44b624f724
BLAKE2b-256 d5034b18995a60841582bab9beaaddb006fca0860ad4283b905644ce3893340e

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14.tar.gz:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 6c3a67bff8c091ac96ef6615cfad2ae9f003aca0bddb0fc9b4f573ccc429241f
MD5 cd760538928fe5a5ec45ba8172a8a024
BLAKE2b-256 dd54a0536c742ab55b393860ebfed9881cf7d41f1bcd2188a8eabee038861e53

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp313-cp313-win_amd64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 254817f65ea2bc831aa6c716b924aad064c6a9e81c8243b59a766e3730ec7177
MD5 fcf6cbee2d75210085553ea8ea0b5932
BLAKE2b-256 96ba0bcc057a5f50c0f5f209b2e82301fc6670653d912ed9d641bdd795128c0b

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 66c3bd8dd5c13d4cb402a38a1d7256eb9e15bdef47bbf2317266469f3b98b83d
MD5 16476c4f04e3f29c9cb6010ca76a4c5b
BLAKE2b-256 dfcee5193e6b15e50e864b1f452c3eae333187eefc6694e537e4e6b74137bce5

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e3a8545ba9477d86fd329be58e071970c5655e86550766ae4205a111ae4098bd
MD5 d26e9ba64b30b02834ba9b1660470b24
BLAKE2b-256 e1a2e97e110efed4363b67e7d310faeb6d9e3e72da5e5a57b8df8d295e1be803

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 5c9d9867c0ea06c0e0a8ca7a73223a3c9f98b32b9fa3236ab61c1b035bf7f3fc
MD5 68316d7f740d5de8589b8fdcd70ac96e
BLAKE2b-256 a65566d2c536c18b363475f5c208a4b0180631377d3cfa0d0d222d69c192d7a5

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp312-cp312-win_amd64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b899d2ce556ac876402f55164d893a0f231b66c57ead5249bd2600f78ed2c19a
MD5 4c368679b4dbc003662fab98a27a2f34
BLAKE2b-256 317ab48a3d33ca959cfd831cf23854dfae9cb3a159c0a49420c5c73dd49c915f

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4a5bc6b865143dbd9fde68ca424276b105a95a94265e70111d4baf0fcdd57074
MD5 143a0487cf8bbc2ddf05202676b60029
BLAKE2b-256 02f3b4a4264fc36d831f8edb9c3a07a8783f914c53912ae931f0b4d6cd146c37

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a232dea1ce3a4a61e159df5cf1e34c82fbde61e6fe5e3df87bf14630246c0b43
MD5 a6d9ae0699f28f0b4a17c852656d469c
BLAKE2b-256 bca0f96027e2fbb33103029a549e95c0824b4c89819d6b91c2ba0178234358df

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 46e1f2cff276aafbdff8d612bff8c679c453b3517c3ab63a3c8cb6cd835fd23b
MD5 d8bf0c29c1a15a2c474a8c333b2c64db
BLAKE2b-256 0632fb2c5327fd1cbb6679572e051e16ff5c845b93c06327dbbc12745a528897

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp311-cp311-win_amd64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 81ebd003f469ce42e21de905a66af33463be69168b39d48f1e7e3e4e031a2e4a
MD5 402bb7cbe359148ebf2b6a8726157067
BLAKE2b-256 04c74a9e445a123465dad78d5962a1de906a7ee9d8ffa63137d61ce24f9b214c

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 931ad95df10639e85dcf030eee45c0dbbba3a36614d2f5f2fdbd045d27f445bf
MD5 685c2ecd0fabfa322f05b50644066e93
BLAKE2b-256 a98a8d266cc3bece2c7a98f5ecad7cd81cf4e838dd722a9f66cf6b461113b22b

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7fe22bb0a76874a09c56635660c2f7e75d8a2f1255ee697dc5fe41bb04eeedcd
MD5 ebbc70bc1a1cbf8f6f6eb154b9054d58
BLAKE2b-256 ae3493824d3da6140d2549f75941f06baa18232fd7876dfbea547dc76e35b092

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 1859d5247657dedc9e6d185c8baef6173beb4bf66cb81a170ff5f9d2ece131cd
MD5 548823d73c3fa329d96a42d6051c4d64
BLAKE2b-256 70cfab365e05df0a337fd5c4df9eda60cfa83acb0de94d680bb1e4132ec405bc

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp310-cp310-win_amd64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 aaddd14c2295dead0e35e9d7d054de1a43a712a82e94d9e8d61f26edef63499b
MD5 3950b5390a626c704f47c224a5e3a58b
BLAKE2b-256 4d8ddf493366fcfb039183de921a9f5688e2251c63690a4c5434c73baa3d4b4b

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7e0b7ac2366d71aaa25ad91730f4c3bdf8c50fdcea29a542ec463a6094f5e6fc
MD5 3ec6630ed3201612ff48b59aa7c66046
BLAKE2b-256 81c50642cfa5eef0408204aac5eda89fe67feca278f877455f7ea9ce47c13067

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 215c6be0f316da6d35b8dd0e82bf03a739b9841212e5d7ad91203e8612eb8b86
MD5 7e4d6be34a06eb7039f0c959f3df34d4
BLAKE2b-256 ca9b26ca26168e1173613ebea1fa5e20a7c3e5eba689250f4a099bfad989ae31

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: gigavector-0.8.14-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for gigavector-0.8.14-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 87a394a03a3df7a3f80ccf7b9944fa465bbe793d6b3cf44f3059c26eca87a417
MD5 d6c4037a12b696b53ec9e582f9499eb8
BLAKE2b-256 e2a89e5e6392771001ec0cb5fb031995348e4f0c74b177a3c8678f2fd3f1337a

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp39-cp39-win_amd64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d7c626ce9f3ea528a9c2381d87f48d1766844b4b166dc639144496a9618c0be5
MD5 115d50e01b70a6859edffb05b590e79c
BLAKE2b-256 5e11001cb8232d18f6f5cb70ee7dc8de890d17cde8337caa3126f6389953a826

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp39-cp39-musllinux_1_2_x86_64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ac0651f676da00d426c5873ac99b8fd2306f5d73cd49da60fc02f910011c80c3
MD5 39fd44a2332d6391ca085fe99fe765d0
BLAKE2b-256 b58c1c062c85d971832c8b0c072bb9645306b37d1201e500cb6ffa89362a251f

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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

File details

Details for the file gigavector-0.8.14-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.14-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9fcf753a9b6c4a379b6caaed6908542930ad51288fbb9263759821231292b5c9
MD5 2eab16a66cbb3b173e091e3bb39252b4
BLAKE2b-256 b2d30a75f126493eeedd6f6b7fadb53f7b1bb988e38b594f71d5659708ca8eca

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.14-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: release.yml on jaywyawhare/GigaVector

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