Skip to main content

PyVGX - Vector Graph Index Python Extensions

Project description

VGX

PyPI version License

High-Performance Hybrid Graph and Vector Engine with Advanced ANN Navigation

Why VGX?

VGX + 1 is WHY
+1 is you

Originally short for Vector Graph indeX, VGX is a high-performance, distributed engine for building custom search and recommendation services using Python plugins. It combines real-time graph traversal, vector similarity, and expressive filtering into a unified platform, backed by a native C-core for speed and scalability. Developers can implement service logic using the PyVGX C-extensions, expose it as HTTP endpoints, and automatically scale across a sharded, replicated back-end. With built-in support for ANN search (see below), dynamic graphs, expression-based filtering, and pluggable infrastructure, VGX makes it easy to develop powerful, low-latency systems for semantic search, recommendation, autocomplete, and more.

Highlight: Approximate Nearest Neighbor (ANN) Vector Search

The Neighborhood Navigation Query is the most powerful feature in VGX. It turns a proximity graph into a high-performance, hybrid vector + graph search engine.

Instead of brute-force scanning or maintaining a separate vector index, you build a navigable proximity graph once, then use intelligent, signal-driven traversal to find the most similar items, with excellent recall and very high speed.

graph.Neighborhood(
    id=entry_node,                # or synthetic hub
    hits=20,
    navigation={
        'vector': query_vector,   # probe vector
        'bias': -30               # -100 = fastest, +100 = highest recall
    }
)

Key Strengths

  • Single bias parameter elegantly controls the entire recall/speed tradeoff
  • Dynamic beam + inertia-based threshold for adaptive exploration
  • Seamless hybrid queries (vector similarity + graph topology + custom filters)
  • Synthetic entry points for fast global coverage
  • Production-ready with unlimited sharding and replication support

This feature combines most of VGX’s internal capabilities (graph traversal, vector math, memory management, evaluator engine, adaptive algorithms) into one clear, high-value use case: low-latency semantic search, GraphRAG, recommendations, and entity resolution.

Navigation Query Documentation

ANN Performance

These numbers represent single-threaded query performance as measured on Apple M4 Max, using 1.4 million 128-D vectors, Cosine similarity:

Bias Recall@10 QPS (1 thread) Description
-100 0.008 42800 Maximum speed
-99 0.246 21936
-90 0.657 10892 Fast
-75 0.801 6657
-60 0.8799 4828 Balanced
-25 0.989 1232
0 0.994 881 High recall
25 0.997 719 Very high recall
75 0.9996 268 Near-exhaustive
100 0.9999 71 Maximum recall

The single bias parameter gives you smooth, predictable control over the entire recall/speed spectrum.

VGX/ANN Single Thread Performance

Parallel workloads scale almost linearly:

VGX/ANN Multi-Thread Scaling

About This Project

VGX was originally developed in-house at Rakuten, Inc. between 2014 and 2025 as a versatile platform for live services. Built from the ground up, it focuses on maximizing memory efficiency and hardware utilization while delivering consistent low-latency performance. In 2025, we open-sourced the platform to share its capabilities with the wider community and foster collaboration.

Getting Started

You will need Python 3.9 or higher and one of the supported operating systems:

  • macOS: 14 (Sonoma) or higher
  • Linux: glibc 2.34 or higher (e.g. Ubuntu 22.04+)
  • Windows: 10 or higher

It is usually a good idea to use a virtual environment to keep things isolated:

MacOS / Linux venv setup

python3 -m venv vgxenv
source vgxenv/bin/activate

Windows venv setup

python -m venv vgxenv
call vgxenv\Scripts\activate.bat

Install PyVGX

pip install pyvgx

Optional: orjson

For improved JSON serialization performance, install the optional dependency orjson:

pip install orjson

Hello VGX

Now let's define and expose a service using VGX:

Plugin Code

# hello.py
from pyvgx import *

system.Initialize("hello")

# This function will be exposed as an HTTP endpoint
def Hello(request: PluginRequest, message: str = "nothing"):
    response = PluginResponse()
    response.Append(f"Hi, you said {message}")
    return response

system.AddPlugin(Hello)

system.StartHTTP(9000) # main port=9000, admin port=9001
print("Visit 'http://127.0.0.1:9001' for admin" )

# Until SIGINT
system.RunServer()

Start Service

# Run the service
python hello.py

Send Request

# Send a request
curl http://127.0.0.1:9000/vgx/plugin/Hello?message=hello!

Simple Graph Examples

Example 1: Build relationships and ask a question

from pyvgx import *

# Make some friends
g = Graph( "friends" )
g.Connect( "Alice", "knows", "Bob" )
g.Connect( "Alice", "knows", "Charlie" )
g.Connect( "Alice", "knows", "Diane" )
g.Connect( "Charlie", "likes", "coffee" )

# Which of Alice's friends likes coffee?
g.Neighborhood(
    "Alice",
    arc      = "knows",
    neighbor = {
        'arc'      : "likes",
        'neighbor' : "coffee"
    }
) # -> ['Charlie']

Example 2: Build a simple vector graph and find most similar match

from pyvgx import *
import random

# Connect root to many vertices with vectors
root = g.NewVertex( "root" )
for n in range( 10000 ):
    v = g.NewVertex( f"v{n}" )
    v.SetVector( g.sim.rvec(1024) ) # assign a random vector
    r = g.Connect( root, "to", v )

# Select a target and derive a probe (add noise) from its vector
target = g["v7357"]
probe = [x + 0.5 * (random.random()-0.5) for x in target.GetVector().external]

# Run a query around root and sort by similarity to probe vector
g.Neighborhood(
    id="root",
    hits=3,
    fields=F_ID|F_RANK,
    vector=probe,
    sortby=S_RANK,
    rank="cosine(vector, next.vector)"
) # -> ['{"id": "v7357", "rankscore": 0.97...}', ...]

Note: For production-grade vector search, use the full navigation={...} API instead. See Navigation Query Documentation for much better control and performance.

VGX Demo System

If you want to see a larger demo system in action, type the following in a terminal:

# Start a multi-node VGX system
vgxdemosystem multi

This will start many server instances (using ~16GB RAM) and open a system dashboard in your web browser:

SystemDashboard

Allow startup to finish and then try to send a query to the dispatcher running on port 9990:

# Run test queries, return JSON search result
curl -s http://127.0.0.1:9990/vgx/plugin/search?name=7357 | jq
curl -s http://127.0.0.1:9990/vgx/plugin/search?name=index | jq

You can see how the demo is implemented here: vgxdemoservice.py and vgxdemoplugin.py

To stop the system type this in a terminal:

vgxdemoservice stop

Documentation

Comprehensive API documentation is available.

A few quick links:

Recommendation: Read the Tutorial first. It covers some of the graph basics without going too deep.

Building from Source

If you want to build PyVGX from source or contribute to development:

Prerequisites

  • Python 3.9-3.13: Required for building and testing
  • cibuildwheel: For building portable wheels (pip install cibuildwheel)
  • CMake: Build system (automatically provided by Visual Studio on Windows)
  • C/C++ Compiler:
    • Linux: GCC/Clang (auto-installed by cibuildwheel in manylinux containers)
    • macOS: Xcode Command Line Tools (xcode-select --install)
    • Windows: Visual Studio Build Tools 2022 with C++ workload (see below)

Windows-Specific Requirements

Windows builds require Visual Studio Build Tools 2022 with C++ workload. See the Windows Build Guide for:

  • Detailed installation instructions
  • Troubleshooting common issues
  • Environment configuration
  • Development setup

Quick install (PowerShell as Administrator):

winget install Microsoft.VisualStudio.2022.BuildTools --force --override "--wait --quiet --add Microsoft.VisualStudio.Workload.VCTools --includeRecommended"

Building with cibuildwheel

The project uses cibuildwheel to build portable wheels for all platforms:

# Install cibuildwheel
pip install cibuildwheel

# Build wheels using Makefile
make cibuildwheel                                        # Auto-read VERSION file, all Python versions
make cibuildwheel VERSION=3.7.0                          # Explicit version, all Python versions
make cibuildwheel VERSION=3.7.0 PYVER=312               # Python 3.12 only
make cibuildwheel VERSION=3.7.0 PYVER=312 ARCH=x86_64   # Python 3.12, x86_64 only

Supported Platforms:

  • Linux: x86_64 (manylinux_2_28 - AlmaLinux 8)
  • macOS: arm64 only - Apple Silicon/M1+ (macOS 14.0+)
  • Windows: AMD64

Note on ARM64 Linux (aarch64): ARM64 Linux wheels can be built locally or via CI systems with native ARM64 runners (e.g., Jenkins). GitHub Actions free tier does not provide ARM64 Linux runners (ubuntu-24.04-arm64 requires Team/Enterprise plan). To build locally on ARM64 hardware:

make cibuildwheel ARCH=aarch64

Makefile Parameters:

  • VERSION - Package version (default: reads from VERSION file, appends .dev0+<timestamp> for dev builds)
  • PYVER - Python version: 39|310|311|312|313|all (default: all)
  • ARCH - Architecture: x86_64|aarch64|arm64 (default: auto-detected from uname -m)
    • Linux: Use ARCH=aarch64 for ARM64 or ARCH=x86_64 for x86_64
    • macOS: Always builds for arm64 (Apple Silicon)
  • CMAKE_PRESET - Build type: release|debug|relWithDebInfo (default: release)

Platform-Specific Guides:

Testing

Test the PyVGX module directly:

Requires pyvgx to be installed first. Either build and install a wheel, or use development mode:

# Option 1: Build and install wheel
make build-local
pip install --force-reinstall dist/*.whl

# Option 2: Install in development mode
pip install -e .

# Then run tests
make test                    # Run complete test suite
make test QUICK=test_name    # Run specific test

Test built wheels:

Tests wheels in isolated environments (no prior installation needed):

# Requires wheels in wheelhouse/ directory
make test-wheels

# Or use the test scripts directly
python test_pip_package.py              # Test currently installed package
python test-wheels.py wheelhouse/       # Test all wheels in directory

GitHub Actions Build & Release

Automated builds for supported platforms:

  • Linux: x86_64 (ubuntu-22.04) - manylinux_2_28
  • macOS: arm64 only - Apple Silicon/M1+ (macOS 14.0+)
  • Windows: AMD64 (Visual Studio 2022)

Build timeouts:

  • Wheel builds: 120 minutes per platform
  • Source distribution: 30 minutes

Workflow triggers:

  1. Tags (v*): Automatically builds release version from tag name and creates GitHub Release with permanent artifact storage
  2. Manual (workflow_dispatch): Flexible builds with optional parameters:
    • version: Custom version (overrides tag/VERSION file)
    • python_versions: Target Python versions (default: cp39-* cp310-* cp311-* cp312-* cp313-*)

To create a release:

  1. echo "3.7.0" > VERSION && git commit -am "Bump version" && git push
  2. Push a tag: git tag v3.7.0 && git push origin v3.7.0
  3. GitHub Actions automatically:
    • Builds wheels for all platforms (Linux x86_64, macOS arm64, Windows AMD64)
    • Builds source distribution
    • Creates a GitHub Release with all artifacts attached
    • Generates release notes from commit history
    • Artifacts stored permanently (not subject to 30-day deletion)

Manual workflow dispatch:

  • Go to Actions → Build Wheels → Run workflow
  • Customize version or Python versions for testing
  • Artifacts available for 30 days (use tags for permanent releases)

Selective platform builds: To build only specific platforms, edit .github/workflows/build-wheels.yml and comment out unwanted matrix entries. For ARM64 Linux, see the commented-out aarch64 entry in the workflow file.

Cache behavior:

  • pip and cibuildwheel caches expire after 7 days of inactivity
  • 10 GB cache limit per repository

Development Build

For local development (requires compiler toolchain installed):

# Clone the repository
git clone https://github.com/slysne/vgxserver.git
cd vgxserver

# Install in development/editable mode
pip install -e .

# Run tests
python -m pytest pyvgx/test/ -v

Maintainers

This project was open-sourced by Rakuten, Inc. and is currently maintained by:

  • Stian Lysne@slysne
  • Contact: slysne.dev [at] gmail [dot] com
  • Ariful Islam
  • Contact: mailtoislam [at] yahoo [dot] com

For questions, issues, or contributions, feel free to open an issue or pull request.

License

This project is licensed under the Apache License Version 2.0. See LICENSE for details.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

pyvgx-3.8.0-cp314-cp314-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.14Windows x86-64

pyvgx-3.8.0-cp314-cp314-manylinux_2_38_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.38+ x86-64

pyvgx-3.8.0-cp314-cp314-macosx_14_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.14macOS 14.0+ ARM64

pyvgx-3.8.0-cp313-cp313-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.13Windows x86-64

pyvgx-3.8.0-cp313-cp313-manylinux_2_38_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.38+ x86-64

pyvgx-3.8.0-cp313-cp313-macosx_14_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.13macOS 14.0+ ARM64

pyvgx-3.8.0-cp312-cp312-win_amd64.whl (3.7 MB view details)

Uploaded CPython 3.12Windows x86-64

pyvgx-3.8.0-cp312-cp312-manylinux_2_28_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

pyvgx-3.8.0-cp312-cp312-macosx_14_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

pyvgx-3.8.0-cp311-cp311-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.11Windows x86-64

pyvgx-3.8.0-cp311-cp311-manylinux_2_28_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

pyvgx-3.8.0-cp311-cp311-macosx_14_0_arm64.whl (2.6 MB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

pyvgx-3.8.0-cp310-cp310-win_amd64.whl (3.0 MB view details)

Uploaded CPython 3.10Windows x86-64

pyvgx-3.8.0-cp310-cp310-manylinux_2_28_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

pyvgx-3.8.0-cp310-cp310-macosx_14_0_arm64.whl (2.3 MB view details)

Uploaded CPython 3.10macOS 14.0+ ARM64

pyvgx-3.8.0-cp39-cp39-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.9Windows x86-64

pyvgx-3.8.0-cp39-cp39-manylinux_2_28_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

pyvgx-3.8.0-cp39-cp39-macosx_14_0_arm64.whl (2.0 MB view details)

Uploaded CPython 3.9macOS 14.0+ ARM64

File details

Details for the file pyvgx-3.8.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: pyvgx-3.8.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 2.8 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for pyvgx-3.8.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 9d945615b99574d462ef63848182a70cc83ac2198286c88eb56475f9a704e10f
MD5 7e01419c137d7d7e910bf1c29adf518d
BLAKE2b-256 95373e45d76bf9e9874f87507a8e7eb022a2e8cc2a11119b9e990518945602f2

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp314-cp314-manylinux_2_38_x86_64.whl.

File metadata

File hashes

Hashes for pyvgx-3.8.0-cp314-cp314-manylinux_2_38_x86_64.whl
Algorithm Hash digest
SHA256 744c4971fdfeffaa582f11adac67906d970a9f659cfe2d61bf74f6d24ef65cbf
MD5 86acaa44f3b1e1af726c786ed3bc15ea
BLAKE2b-256 e22740b8b88c52ca8ca69d7b49c9e106cfc6ef72133e7b7cdcaf5af5851ca31e

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp314-cp314-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pyvgx-3.8.0-cp314-cp314-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 2717a51537273ef4692428b55d6560e5edf407b22ed49657afa8b15a01df845b
MD5 5205ad69a2e47666566f878656579660
BLAKE2b-256 6e5ae3d33f22d3207297eceb8ab39a1a52c6fdf789686af0c67a71cacfa03898

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pyvgx-3.8.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for pyvgx-3.8.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 780b524b9c49e3c78f021efc9de6aa103731f744f1bd49be98d5273c0495675d
MD5 13b9dafa301f7334940471d2505adc0f
BLAKE2b-256 f82e129322bfb9e3e45360ac626c9211f1d54472edeb22a925b805cbf873ceb1

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp313-cp313-manylinux_2_38_x86_64.whl.

File metadata

File hashes

Hashes for pyvgx-3.8.0-cp313-cp313-manylinux_2_38_x86_64.whl
Algorithm Hash digest
SHA256 6b15d41cbf7b32455c697c6304d4fa1c4dbc612e594ec5539c025de6230650f8
MD5 25a2b8251c854649400b41ef0367d383
BLAKE2b-256 6d6a8c76fc6cc4c48e44d01206b2d765eb0817004a7e45b4b8748a63dd605b7d

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp313-cp313-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pyvgx-3.8.0-cp313-cp313-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 250826b07f1fc168d95abd104d7cf23f81748ae17fe664da65713721a671dc9f
MD5 1e81c564a91f687624e2a8cf84dc62b5
BLAKE2b-256 6305c93d17a48622e34e24f05737b1c5f3646b51608520f5c97550b3d3895db0

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pyvgx-3.8.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 3.7 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for pyvgx-3.8.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 620999c24685c50195c174541e7783fba10d27d7db44328591661b0c917c3cb1
MD5 c31e4aa92da8e25a3df178a5d4e2d31a
BLAKE2b-256 d139a402fd504706c3d48b9a468203201aef239119b2c83cb90c97fe934aa94f

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyvgx-3.8.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 eb9dd38b7270f030e72c169aae14fb0a2e8ba814115123f8be74139a1974bc78
MD5 accf7b0044617a507922ba710d70f787
BLAKE2b-256 2b0119283e84b1f4636f653dd3d4d7f6e7606d819158f45c724beb26f25c2c9a

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pyvgx-3.8.0-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 d07077e92bc79b22c1174020cd1aacf662e33ecf43ff36388edb2cc5c9bc88f5
MD5 d603218e943b65df07dfa10172ec3c5c
BLAKE2b-256 ab301e77f5adb336aebf4ad27282597bbdf344f2dd3433a246f1f042870a828a

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pyvgx-3.8.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for pyvgx-3.8.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ec7663bbb7df3afc776ae0e8bbea73f64fd390c5c74ffa665d5989545926de40
MD5 5afd014455f8cff8b943b702ca75c591
BLAKE2b-256 9284a2817a30c275f712c010bcfdb98e915df9b5d7c3e39d58074dfe95c71bb3

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyvgx-3.8.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 83e53ab121100a44f7c7aba907e69ba44ee3b66c856335f80dab456906227dbc
MD5 034d109a9a198feeb841483cb5e96627
BLAKE2b-256 27f6f7ed3ff71cb7148f41d86ae65ea09226bccec797a8f7529af4e2271e266a

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pyvgx-3.8.0-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 6a199aaa85f2e354ee92c05406ffb809cfab1dbbf0ffa8c49b018ae755e0c5e5
MD5 357a614b413e0b90cb8f8f23c8e4dc6c
BLAKE2b-256 15f3bad27dadb34b1d12086553773cbabecdf0c6b2a14fb5c2671b41201ac7cc

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pyvgx-3.8.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 3.0 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for pyvgx-3.8.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 d56e5a33310514020062b18f3c48eb4aa50e8f44c849e38074c02faad1f8e8b9
MD5 e012783c6c1fff4660f1e2f6be8b53d7
BLAKE2b-256 cacdf8eb8a1aae209f5d497a41e349e1af0dd9bfd552c8e42f0755bb1b080c13

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyvgx-3.8.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cce4ea2a46e4626c5283c5a13d4595b784f9d9479afcbba5c2a46b4accfa3e82
MD5 87c8d03feae9cd494259b209af3f6e7e
BLAKE2b-256 eb1727479b8b069e4692420173aa9862d5cdd8f05f9f6835e507ff4fca879215

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pyvgx-3.8.0-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 dda689f3e8431c5291c672c05ae4c5df7d55e2789ba66c02e58a7f24e56efb0b
MD5 33772d1c7fc0e47f112bd7a28e10510b
BLAKE2b-256 100b0239c0886ee3a4c33c6a10828a34293c8ed76f0383dc975a0fec4d4fee8c

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: pyvgx-3.8.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for pyvgx-3.8.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 15131b339b7c38eb492bf4fa04aafabb1f25998f4060888e8e3bb781f94e2d3b
MD5 de0c9d9123fe3022ae34dcd7983bbf2c
BLAKE2b-256 25a979e45569cf322d2a4f3d707e1ee7c2a9e5cae695276bc18a63d5551d4eb4

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pyvgx-3.8.0-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 15b643dbec498a86bae9e9e4e8c114430b3b72f0461d2ce08313a3a4cc3d9996
MD5 146700c4ef44979df52f17149faa1a65
BLAKE2b-256 85728098f11c92153a1ef17dc54fb3cda153343dadfd99cc70fa8dd9837af5b0

See more details on using hashes here.

File details

Details for the file pyvgx-3.8.0-cp39-cp39-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for pyvgx-3.8.0-cp39-cp39-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 714db1af05450efe4c6e3f6b5ac535d691627303e27b08602d2393ed502b70ba
MD5 797ec32b73d78a05d698036376557851
BLAKE2b-256 c246c6faac670bdf2570268eccfe5e4e4777e54746a9339e14a9f348b97893e3

See more details on using hashes here.

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