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.9.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.9-cp313-cp313-win_amd64.whl (2.5 MB view details)

Uploaded CPython 3.13Windows x86-64

gigavector-0.8.9-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.9-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.9-cp313-cp313-macosx_11_0_arm64.whl (628.7 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

gigavector-0.8.9-cp312-cp312-win_amd64.whl (2.5 MB view details)

Uploaded CPython 3.12Windows x86-64

gigavector-0.8.9-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.9-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.9-cp312-cp312-macosx_11_0_arm64.whl (628.7 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

gigavector-0.8.9-cp311-cp311-win_amd64.whl (2.5 MB view details)

Uploaded CPython 3.11Windows x86-64

gigavector-0.8.9-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.9-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.9-cp311-cp311-macosx_11_0_arm64.whl (628.7 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

gigavector-0.8.9-cp310-cp310-win_amd64.whl (2.5 MB view details)

Uploaded CPython 3.10Windows x86-64

gigavector-0.8.9-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.9-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.9-cp310-cp310-macosx_11_0_arm64.whl (628.7 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

gigavector-0.8.9-cp39-cp39-win_amd64.whl (2.5 MB view details)

Uploaded CPython 3.9Windows x86-64

gigavector-0.8.9-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.9-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.9-cp39-cp39-macosx_11_0_arm64.whl (628.7 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: gigavector-0.8.9.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.9.tar.gz
Algorithm Hash digest
SHA256 ee285c71cd7fad03614de3d57b7e208374b0c87981c6d9afbe9143637dedd4ee
MD5 596c2466401ebb695180f28ea1d68c6f
BLAKE2b-256 e19695ff371342fc7ddaf82f41f70be79c3a3c991e3e727eda824925ca940495

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9.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.9-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: gigavector-0.8.9-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: CPython 3.13, 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.9-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 90a95556fb724d16cc63637c43fc2b5ab61d99c84e44e802875ef68c42bf7f0e
MD5 c5b48db5db53966e51cd0e22d0324a7c
BLAKE2b-256 719adb374049ab544e59e033adba6030aeaeb67c9e1cead0e8b2829d511203be

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.9-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ce113affef7813dbf3144e441ff4f84baff8d599026886f91e1d9aa365a7aa05
MD5 6e1cfac4abac30a14b1417b6f181a37d
BLAKE2b-256 894a97e48e97b7d04e185fa08b725f7a7b3c9e7ad18e723aa9cbe3088c3477ff

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.9-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2ea9227004837aaf0c9b0a2ce98e80b0720829c637ee2e431385b65e57e99484
MD5 3c8734b33e35e191ead20614852a0c4c
BLAKE2b-256 24db1f36fcfe38c879a76ef603f9af838231dd9261f431f77f7f79d485ed1bc4

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.9-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 38f419b596d144e0708aa0ce136fb1eef971ccd00460ee835270528f02071e81
MD5 5a8847b18533e5f02fcb25e5fb20f550
BLAKE2b-256 2538591e344791fe0053d7f437006b936a9887ffd184a1f46a360bfa12eb69aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: gigavector-0.8.9-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: CPython 3.12, 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.9-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 db01520ff4350b7e3c2c259d37c9bd22c4e09b38843768bcbd923a5e5806b61d
MD5 44094e52627fadbe6335cce79a9a0e13
BLAKE2b-256 afda58dba28e16f0c15d297d4c3b14a2caa84ee592548a4bab0bd7378f777115

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.9-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ec14e528c7822c70097d74f00f0a8c011ac90c375f40443a76a33253408f347d
MD5 03a428b42a7a3481cc51d8cf494a47ba
BLAKE2b-256 d2c4d23999e033a3c83eca236430bd2d54437afb89a4245b6c90655bdaeb637e

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.9-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bcfe9a2a84d68d58ccd4b46acc587bed86b3879c2a9c2241b089c9f2c44474db
MD5 7974de440e83be03e746fc965033f93a
BLAKE2b-256 a62955fdfe5bd5c801ae4055035ed2dc957f78b97c0ed714b903fddd9625404c

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.9-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 674ee23f8f996216100652586d09f74e1cff28ca8cdf55c751e80073c2a5d2f2
MD5 c3ab05106ee9b1d1603951bae2f184b8
BLAKE2b-256 5fa9d4def9f74d5bd3868792fec6b52a8b3c618756074f0250df3d4ad431a7ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: gigavector-0.8.9-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: CPython 3.11, 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.9-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 857a4d0142be00cf99e8ebc9d1926c68c81dbdaa4b98141472b2ef951d5d6298
MD5 79ac374ca0d9f0262156f61d138e0a9f
BLAKE2b-256 e164beb2cb9643c25a53820af42e2f5d4dd48d8c37fbc9397da02f6c283230c4

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.9-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 78e11df8230798e68a36de05fee68905028c7353d973a68f69c7423c84960d74
MD5 fc59ee3e9f71830fb95ee820a446d6a1
BLAKE2b-256 f68baa1275b2a462eba6df68432e3791998be1898a05b449492e2f850b2f8323

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.9-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 88b6284dce371d72c1cdfd3fcff4a75b5379e9e3827738cfbb1b5f8f5cd18ee3
MD5 ac193ab48797381d1e364bfc22b34b32
BLAKE2b-256 ddbae619269b2b7edb5962b18d3227129686e80a361919ba18ad876bccbf26ec

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.9-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0e8ce68492a948c469bf38c73dacdb221cd6c1830e6b359373daed766103e9a0
MD5 1bb76aa1a283be9055d51738776c27f6
BLAKE2b-256 3eb0d6de6774e538993c2ed2b00f05045a34a4b571bc018a6e24ffa2f6d1d784

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: gigavector-0.8.9-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: CPython 3.10, 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.9-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 cf3433c32258704ef32346357edf1d51315925b6de4dc6a380901014d69e0f65
MD5 f5cfb51995f770a0c43f20ab6c2d38e3
BLAKE2b-256 001bba59feff54d7cced9ee4a581141e2c6672c00264aa8c4a3211e6b8e63fc0

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.9-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 cb48665b647dcec0ed725acce741c222a53294c74a58afcd82949e1f3da85ef8
MD5 7db11247937c40cbeef8cd1c9fd8403d
BLAKE2b-256 181346e67147f51506ac44f2443c91b197000bc00acd9da9a61322ea2713204a

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.9-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 557955df6ae8adc105886b123541ff09eaa15428b4a1de602102e574de367c97
MD5 9c278c315f0a7052fe76aa42a7fcbacc
BLAKE2b-256 0982b1c59a02dba7eeb1a2a9385b3b7a5a22eb676156671bbec5158d4145dd5a

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.9-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b1b7d5b6bf6c3cdfa505e9026dd0e9bf6d29fc8864ea94cbfa8717cd2c829de2
MD5 06fd2fbec8e0a1ad1c02ca64799ce075
BLAKE2b-256 5f04be25e9bd3920d12d103d136170a5c47501ca04bebcec9382abcd58738368

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: gigavector-0.8.9-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 2.5 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.9-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 322f29341c02edf703b0ad427dccb1e02c5c555d564d2e424cd21655be40e1e9
MD5 6ca1415ea64d66227c0b86fd3c6c2771
BLAKE2b-256 dc7f9fa7f98411f6ec722e5ba3886b93cd5acfe1801bb3c524526247df884baf

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.9-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6072d6ff63ddda1ee1aae227b34134ec74fa0397d8580da1126c9cf49fb6481f
MD5 46751751eac9cd0f278fbf83f02d0c7f
BLAKE2b-256 4db8f3dc82baab6b1740d307477daf7417c42b38ba175a3b743db4bf850a9583

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.9-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1cb65cdd5abf5fa2ee8b06a6ea43c732abed4d33245038254092f0c0769efb93
MD5 53fd98252d4a45487c2d13749d6283be
BLAKE2b-256 7e8e48f228c3d3f640e5b06a7021165238acaf7c7245396d627b26847416deba

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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.9-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for gigavector-0.8.9-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ed3dbd0fd793bd68ba12d0023ee422fd9e5e17ae72a6de87c5624c8e6ef20035
MD5 d5d9203d1ea96d7d90089ef0c28a85c3
BLAKE2b-256 24b858d09eca9114d8e656ba2f64a183c31b8efafdba0b6cb985a01691ba6728

See more details on using hashes here.

Provenance

The following attestation bundles were made for gigavector-0.8.9-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