Skip to main content

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:

  • Index types: KD-tree, HNSW, Flat, IVF-PQ, IVF-Flat, IVF-SQ8, IVF-TurboQuant, PQ, LSH, Sparse
  • 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.
  • hnsw_config (HNSWConfig | None): Used when index=IndexType.HNSW.
  • ivfpq_config (IVFPQConfig | None): Used when index=IndexType.IVFPQ.
  • ivfflat_config (IVFFlatConfig | None): Used when index=IndexType.IVFFLAT.
  • ivfsq8_config (IVFSQ8Config | None): Used when index=IndexType.IVFSQ8.
  • ivfturboquant_config (IVFTurboQuantConfig | None): Used when index=IndexType.IVFTURBOQUANT.
  • pq_config (PQConfig | None): Used when index=IndexType.PQ.
  • lsh_config (LSHConfig | None): Used when index=IndexType.LSH.

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 IVF-PQ index. Required before insert 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_data = [[(i % 10) / 10.0 for _ in range(128)] for i in range(256)]
db.train_ivfpq(train_data)

train_ivfflat(data)

Train the IVF-Flat index. Required before insert when using IndexType.IVFFLAT.

train_ivfsq8(data)

Train the IVF-SQ8 index (coarse centroids + scalar quantizer). Required before insert when using IndexType.IVFSQ8.

train_ivfturboquant(data)

Train the IVF-TurboQuant index (IVF centroids only; TurboQuant needs no codebook training). Required before insert when using IndexType.IVFTURBOQUANT. Vector dimension must be even.

train_pq(data)

Train the PQ index. Required before insert when using IndexType.PQ.

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

  • IndexType.KDTREE — exact search, low/medium dimension
  • IndexType.HNSW — approximate graph index
  • IndexType.IVFPQ — IVF + product quantization; requires training
  • IndexType.SPARSE — sparse vectors
  • IndexType.FLAT — brute-force exact search
  • IndexType.IVFFLAT — IVF with full float vectors in lists; requires training
  • IndexType.PQ — product quantization; requires training
  • IndexType.LSH — locality-sensitive hashing
  • IndexType.IVFSQ8 — IVF with 8-bit scalar-quantized vectors in lists; requires training
  • IndexType.IVFTURBOQUANT — IVF with TurboQuant (PolarQuant + optional QJL) in lists; requires training; even dimension

Index config dataclasses

Pass the matching config to Database.open() for the chosen index type.

  • HNSWConfigM, ef_construction, ef_search, ...
  • IVFPQConfignlist, m, nbits, nprobe, default_rerank, ...
  • IVFFlatConfignlist, nprobe, train_iters, use_cosine
  • IVFSQ8Confignlist, nprobe, train_iters, use_cosine, per_dimension, default_rerank
  • IVFTurboQuantConfignlist, nprobe, train_iters, use_cosine, default_rerank, turbo (TurboQuantConfig)
  • TurboQuantConfigbits, projections, seed, use_qjl, rotation (TurboQuantRotation: AUTO, FHWT, QR)
  • PQConfigm, nbits, train_iters
  • LSHConfignum_tables, num_hash_bits, seed, bucket_width

Per-query nprobe for IVF-Flat, IVF-SQ8, and IVF-TurboQuant: db.search_with_params(query, k, params=SearchParams(nprobe=16)).

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)

IVF-Flat with Training

from gigavector import Database, IndexType, IVFFlatConfig, DistanceType

cfg = IVFFlatConfig(nlist=64, nprobe=4)
db = Database.open(None, dimension=64, index=IndexType.IVFFLAT, ivfflat_config=cfg)
db.train_ivfflat(train_data)  # at least nlist vectors
# ... add vectors, search ...

IVF-SQ8 with Training

from gigavector import Database, IndexType, IVFSQ8Config, DistanceType

cfg = IVFSQ8Config(nlist=64, nprobe=4, default_rerank=200)
db = Database.open(None, dimension=64, index=IndexType.IVFSQ8, ivfsq8_config=cfg)
db.train_ivfsq8(train_data)  # at least nlist vectors
# ... add vectors, search ...

IVF-TurboQuant with Training

from gigavector import Database, IndexType, IVFTurboQuantConfig, TurboQuantConfig, DistanceType

cfg = IVFTurboQuantConfig(
    nlist=64,
    nprobe=4,
    default_rerank=200,
    turbo=TurboQuantConfig(bits=8, projections=16, use_qjl=True),
)
db = Database.open(None, dimension=64, index=IndexType.IVFTURBOQUANT, ivfturboquant_config=cfg)
db.train_ivfturboquant(train_data)  # at least nlist vectors; dimension must be even
# ... add vectors, search ...

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

Release files for gigavector 0.8.24

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gigavector 0.8.24
File Size Uploaded
gigavector-0.8.24.tar.gz 3.0 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for gigavector 0.8.24
File
gigavector-0.8.24-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
gigavector-0.8.24-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
gigavector-0.8.24-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
gigavector-0.8.24-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
gigavector-0.8.24-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
gigavector-0.8.24-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
gigavector-0.8.24-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
gigavector-0.8.24-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
gigavector-0.8.24-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
gigavector-0.8.24-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
gigavector-0.8.24-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
gigavector-0.8.24-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
gigavector-0.8.24-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
gigavector-0.8.24-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
gigavector-0.8.24-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
gigavector-0.8.24-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
gigavector-0.8.24-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
gigavector-0.8.24-cp39-cp39-musllinux_1_2_x86_64.whl CPython 3.9 CPython 3.9 Linux musl 1.2+ x86-64 Details
gigavector-0.8.24-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
gigavector-0.8.24-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details

Total release size: 73.6 MB

Release files / gigavector-0.8.24.tar.gz

Download URL gigavector-0.8.24.tar.gz
Size 3.0 MB
Tags Source
SHA-256 checksum
How to use checksums
a735561b221d13344e724b2391f1a2d8b8af9c49e541acf7f190af660f6aa12c
BLAKE2b-256 checksum
How to use checksums
2fd25d368ad32a72d5d25d815fc0a523d047b23a91192868d102eec9c50fe62a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp313-cp313-win_amd64.whl

Download URL gigavector-0.8.24-cp313-cp313-win_amd64.whl
Size 8.9 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
1230a85d6803791365745c1044f41956a222ea5bcd0d0f9899c240bb693ac678
BLAKE2b-256 checksum
How to use checksums
7037a26cf1c8c2960d2b126c316806a6b71c319f26577bc62e47b93a24b8d484
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL gigavector-0.8.24-cp313-cp313-musllinux_1_2_x86_64.whl
Size 2.3 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
d8337d17cd4808c0a24b58d35228abc4903fcc022956fee2213409b9e27704de
BLAKE2b-256 checksum
How to use checksums
df3923289394e4760ca1f9c29def8a96ba2e12cfcfc3cb0e9b080306fbb8250c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL gigavector-0.8.24-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 2.3 MB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
2076aed324d0960df35488f56ad062eb82f9a7445483fe05b2b2ad092eb794e5
BLAKE2b-256 checksum
How to use checksums
4f43728fee40249f71a8b2bf933a9a494b341efa0fd6c13e25988743d6656739
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp313-cp313-macosx_11_0_arm64.whl

Download URL gigavector-0.8.24-cp313-cp313-macosx_11_0_arm64.whl
Size 655.5 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
4d9b0c9bd6fe9de7613893e0333571625ec1f02a11d65c179f1b46f9b6c8255b
BLAKE2b-256 checksum
How to use checksums
51726b94e9d78866a5132f2e6e240543eccf526a763cbd0583c7c6007127e260
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp312-cp312-win_amd64.whl

Download URL gigavector-0.8.24-cp312-cp312-win_amd64.whl
Size 8.9 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
23dbb5e368f74561d2a0864dd463401d99332217e5116417899d250c6ff17032
BLAKE2b-256 checksum
How to use checksums
b8722f21322526b2fe68435491f3f87cc5a3e1c6e8f96a5912ebfb0df065ada2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL gigavector-0.8.24-cp312-cp312-musllinux_1_2_x86_64.whl
Size 2.3 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
44755c20269371c158abb07aef53143ae4ce2885072fb78cd5f7a7357b3f7753
BLAKE2b-256 checksum
How to use checksums
6c80a1237c3feae6a56628becffae888fbcea6866ef2d4c11167eac89dee5611
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL gigavector-0.8.24-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 2.3 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
1a325bb8562244491bf18d76a79c9f69e0b751e2b0647c00c6e5a519cd825e1b
BLAKE2b-256 checksum
How to use checksums
938366e911cd696f5d97e68f462e6d7f5d11f1d8efbc01363aafd029bd7d9062
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp312-cp312-macosx_11_0_arm64.whl

Download URL gigavector-0.8.24-cp312-cp312-macosx_11_0_arm64.whl
Size 655.5 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5ec5ebd6781d40c153d731d5433a3f526452892e60a1c35e1831f871a4c5eb15
BLAKE2b-256 checksum
How to use checksums
705af668f8d0dae2575b4d75bb61350877d05d2b3da6f142579e7055d31064f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp311-cp311-win_amd64.whl

Download URL gigavector-0.8.24-cp311-cp311-win_amd64.whl
Size 8.9 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
070c69fdf66a063cc2454a858674da78113736c5379bb0d338e4c91751276888
BLAKE2b-256 checksum
How to use checksums
af7ab2f78808003ad5f624d6c8916880210f079c6ba8566099bae960b3a35786
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL gigavector-0.8.24-cp311-cp311-musllinux_1_2_x86_64.whl
Size 2.3 MB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
02c4ba62e9c2bf9a0260f0213c8413565425fa446c1dcd973c4b6037820060cd
BLAKE2b-256 checksum
How to use checksums
c6dbaa43e00e86f578ce05cd67efcb0c4055c079b0e8a02104fcdfc9a5893d86
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL gigavector-0.8.24-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 2.3 MB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
16e185692a81f2ce69390b2f873c2e464d1a31b2bac6ce24e4cf1ebd2eafe10c
BLAKE2b-256 checksum
How to use checksums
544d9c9a2d6b528d0128bcea0a6052c9e75dc92aa157e20adb4aa94bc25bbe10
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp311-cp311-macosx_11_0_arm64.whl

Download URL gigavector-0.8.24-cp311-cp311-macosx_11_0_arm64.whl
Size 655.5 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
7bf2cc7a234aac2e020eb78ba2f70813b356964215c2c369700ec57e2cf1c71e
BLAKE2b-256 checksum
How to use checksums
6499dd4618127612bb0eaf9f636cef9d3d14a3c0fc3dfdfc0afaf6b8e5b4f2de
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp310-cp310-win_amd64.whl

Download URL gigavector-0.8.24-cp310-cp310-win_amd64.whl
Size 8.9 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
4b4e7796955468a9599ea95442e324a2651e82f8f0404153e06c3e69dfec6c27
BLAKE2b-256 checksum
How to use checksums
81dac0dad1ffeadab8be4d9743331e54c1b966b035e1c4b61fae2bf4fa627fd7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL gigavector-0.8.24-cp310-cp310-musllinux_1_2_x86_64.whl
Size 2.3 MB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
e3f814aadca5a711469e9bdafda2dacd60ae16e7f692f022c2fd6e3ee74577cd
BLAKE2b-256 checksum
How to use checksums
809c36e58ce0ad81c193ee5c3d8bf2cafe93f76193ec21edeb955958cfe234da
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL gigavector-0.8.24-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 2.3 MB
Tags CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
1afd30d0d30b0829a14fea3f14402635cb96381fd6e23a565ba83f45ca7bd660
BLAKE2b-256 checksum
How to use checksums
ef55db02f43a3ed925a5c215852d146785dc5f0d9be1595b8002c11e48a04151
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp310-cp310-macosx_11_0_arm64.whl

Download URL gigavector-0.8.24-cp310-cp310-macosx_11_0_arm64.whl
Size 655.5 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
7f4eba4724b09a934434d2bd8077be8f928abae3699d57fafb8e25fce562386d
BLAKE2b-256 checksum
How to use checksums
910cbb7dd449d75a4c3349679c1a61280ec8c7a9c7929c4edbc9ad6f0b077989
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp39-cp39-win_amd64.whl

Download URL gigavector-0.8.24-cp39-cp39-win_amd64.whl
Size 8.9 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
7bc555e6cc944301c507bde180739e58e75011ac49443fb139deec5837fb9dc1
BLAKE2b-256 checksum
How to use checksums
271aef14ee6d1c178f6b41d71c25c1f2e3cefda8d0205c646b75b03e77591ba7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp39-cp39-musllinux_1_2_x86_64.whl

Download URL gigavector-0.8.24-cp39-cp39-musllinux_1_2_x86_64.whl
Size 2.3 MB
Tags CPython 3.9 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
ddeba5abb360602eb1c7f58eeea4ecd2dd89d85807f66e528b9559f938865c01
BLAKE2b-256 checksum
How to use checksums
1f06a3ee806e125f96b7de7cd52c95e8da830aa47c0a6759c6b2267922087a80
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL gigavector-0.8.24-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 2.3 MB
Tags CPython 3.9 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d7219c44be25a47927c409a57ca474a24e34d634e9b9e84251322bedc5fe7acf
BLAKE2b-256 checksum
How to use checksums
8eee9de941bbb64bc6ab642cacb4c2dd1106a72d3b091d1541888d8a894399e6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log

Release files / gigavector-0.8.24-cp39-cp39-macosx_11_0_arm64.whl

Download URL gigavector-0.8.24-cp39-cp39-macosx_11_0_arm64.whl
Size 655.5 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
f7fe0176a97be8d29d89519c677a3bc87d29cf922b77300da74bf8327a0d9a1e
BLAKE2b-256 checksum
How to use checksums
b9092de0b7e7a76f930b9617bf18b45605c75feb2a7323c81708c4300fe8f78f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 7, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page