Skip to main content

Verlex

One line of Python. Every cloud's best GPU price.

Verlex reads any Python function, picks the hardware it needs, prices it live across 10 clouds, and runs it on the cheapest one. If a provider fails or stocks out, the job restarts on the next cheapest, automatically. No hardware picking. No quotas. No DevOps.

The provider's GPU price passes through at cost. Verlex adds a fixed service fee per GPU-hour, prorated per second. That is the whole model: no percentage markup, no hidden margin.

Installation

pip install verlex

Requires Python 3.10, 3.11, 3.12, or 3.13. Grab your API key from the dashboard.

Quick Start

import verlex

# Define your function
def train_model():
    import torch
    model = torch.nn.Linear(100, 10)
    # Your training code here...
    return {"accuracy": 0.95}

# Run it on a cloud GPU - that's it!
result = verlex.cloud(train_model, gpu="A100", api_key="gw_your_key")
print(result)

Basic Usage

Pass your API key

Every function accepts api_key directly, no context manager needed. Set VERLEX_API_KEY in your environment to omit it entirely.

import verlex

result = verlex.cloud(my_function, api_key="gw_your_key")

Passing inputs

Your function's inputs come right after the function. A function that takes a single input accepts a bare value; a function that takes two or more inputs must receive them as one list.

# No inputs
verlex.cloud(train_model)

# One input, a bare value is fine
verlex.cloud(square, 5)

# Two or more inputs, pass them as a single list
verlex.cloud(train, [dataset, epochs])

Specifying resources

Override auto-detected resources by listing what you need after the inputs. Each value is recognized by its shape, so the order never matters.

# 4 vCPUs, 16 GB RAM, one L40S; units make each value unambiguous
result = verlex.cloud(train_model, [data], "4 vCPUs", "16 GB", "L40S")

# Pin to a provider (a provider name is recognized by shape)
result = verlex.cloud(train_model, [data], "H100", "runpod")

# Offer alternatives: Verlex uses whichever is cheapest and available
result = verlex.cloud(train_model, [data], "H100", "A100")

Prefer explicit keywords? They work too, and take precedence over loose values.

result = verlex.cloud(
    train_model,
    [data],
    gpu="A100",        # GPU type
    cpu=8,             # vCPU cores
    memory="64GB",     # memory
    provider="aws",    # pin to a cloud (omit to let Verlex pick the cheapest)
    timeout=7200,      # 2 hour timeout
    pip_packages=["numpy==1.26.4"],  # extra packages, always installed
    python_version="3.11",  # match your local Python
)

Execution Modes

One flag controls your price-speed tradeoff.

Mode Flag Behavior
Performance fast=True Immediate execution. Best for time-sensitive workloads.
Standard fast=False (default) Up to 10 min wait for the lowest price. Best for batch jobs and cost-sensitive work.
# Performance mode, immediate execution
result = verlex.cloud(my_function, api_key="gw_your_key", fast=True)

# Standard mode (default), wait for the lowest price
result = verlex.cloud(my_function, api_key="gw_your_key")

Performance mode (fast=True) requires the Performance plan ($10/mo). Standard mode is available on every plan.

Pricing & Billing

Two parts: a monthly plan, then a per-job cost. Verlex passes the provider's live hardware price through at cost and adds a fixed service fee per GPU-hour, prorated per second. There is no percentage markup on the hardware.

The service-fee tier is derived from the hardware's FP16 tensor performance (TFLOPS):

Tier Example hardware Standard (fast=False) Performance (fast=True)
CPU (CPU-only jobs) No GPU $0.02/hr $0.02/hr
Small (<185 TFLOPS) T4, L4, A10, RTX 3090 $0.10/GPU-hr $0.20/GPU-hr
Mid (<600 TFLOPS) A100, L40S, RTX 4090 $0.30/GPU-hr $0.45/GPU-hr
Large (<1500 TFLOPS) H100, H200, MI300X $0.40/GPU-hr $0.60/GPU-hr
Flagship (≥1500 TFLOPS) B200, B300, GB200 $0.50/GPU-hr $0.75/GPU-hr

The service fee is charged per GPU-hour, so an 8-GPU job pays it 8 times. There is no cold-start surcharge; a cold machine and a warm one cost the same.

  • Per-second billing, 1 second minimum. Both the provider cost and the service fee are prorated to the second. You pay only for the time your job actually runs.
  • Prepaid credits. Buy credits in the dashboard (minimum top-up $10). Each job places a hold and settles the exact amount when it finishes.
  • Auto top-up (opt-in). Adds credits with your saved card when the balance runs low (default: $50 added when it drops below $10).
  • Funds-based execution. There is no maximum job runtime. A job runs until your credits are exhausted, it stops making progress, or it finishes. The optional timeout argument is a client-side wait bound.

Plans

Plan Price Includes
Standard $0/mo, free forever Standard mode, prepaid credits, per-second billing, 25 GB storage
Performance $10/mo Everything in Standard, plus fast mode (fast=True) and 300 GB storage
Enterprise Custom Organization teams with a shared credit pool, 1 TB+ storage

Per-second billing, no credit card required to join.

Providers, Failover & Serverless

Every job is priced across 10 clouds (AWS, GCP, Azure, Verda, RunPod, Vast.ai, JarvisLabs, Hyperstack, TensorDock, Lyceum) plus four serverless container lanes (Beam, Northflank, Novita, Cerebrium), and routed to the cheapest machine that fits.

import verlex

# Default: priced across 10 clouds, routed to the cheapest machine that fits
result = verlex.cloud(train_model, gpu="A100", api_key="gw_your_key")

# Provider list: cost comparison and failover stay inside your subset
result = verlex.cloud(
    train_model,
    gpu="A100",
    provider=["runpod", "gcp", "verda"],
    api_key="gw_your_key",
)

# Hard pin: one provider, no cross-provider failover if it is out of stock
result = verlex.cloud(train_model, gpu="A100", provider="aws", api_key="gw_your_key")
  • Automatic failover. If a launch fails or a region is out of stock, Verlex fails over: nearby regions first, then other providers, then substitute GPUs, always cheapest first. Your job does not fail because one cloud ran out of capacity.
  • Pinning. A single provider pins hard with no failover. Prefer a provider list, which keeps cost comparison and failover inside your chosen subset.
  • Serverless. Small jobs route to serverless container lanes (billed per second) when that is cheaper than a VM. This happens automatically; nothing to configure.

Files & Workspace Sync

Send local files up to the VM before your job runs and bring generated files back when it finishes. Pass a Workspace to any cloud call. Auto mode mirrors your project root (respecting .gitignore) and returns whatever your code creates or changes; or list explicit Upload and Output specs for full control.

import verlex
from verlex import Workspace

def train():
    from pathlib import Path
    Path("runs").mkdir(exist_ok=True)
    Path("runs/loss.json").write_text('{"loss": 0.42}')
    Path("model.pt").write_text("weights")
    return {"status": "done"}

# Auto mode mirrors your project root up to the VM, then returns
# new and changed files to the same paths locally
result = verlex.cloud(train, workspace=Workspace(), gpu="A100", api_key="gw_your_key")

# ./runs/loss.json and ./model.pt now exist locally

Your function runs inside the synced workspace, so relative paths like open("data/train.csv") work unchanged. Import Workspace, Upload, and Output from the top-level verlex package.

Dependencies

Verlex scans your function's source, pins the versions of imported packages installed locally, and bundles local .py modules automatically. When you need certainty, pass pip_packages: those packages are authoritative, always installed, and a failed install fails the job loudly instead of continuing silently.

result = verlex.cloud(
    train,
    api_key="gw_your_key",
    pip_packages=["torch==2.3.1", "numpy==1.26.4"],
    python_version="3.11",  # 3.10, 3.11, 3.12, or 3.13
)

Pre-warming

Kill the cold start before it happens. verlex.prewarm(fn) analyzes your function, boots the right hardware, and hands you back a handle once the machine is ready. Calling the handle runs your function with no provisioning wait, and the machine stays attached between calls, so every call is warm.

import verlex

def train(batch):
    import torch
    ...

wf = verlex.prewarm(train, gpu="A100", api_key="gw_your_key")  # A100 starts booting NOW

data = load_and_clean()      # local preprocessing runs meanwhile

result = wf(data)            # runs train(data) on the warm machine
more = wf(other_data)        # still warm, the VM stays attached

wf.release()                 # or use `with verlex.prewarm(train, "A100") as wf:`

Automatic Cloud Offloading

Don't want to manage when code runs in the cloud? Let Verlex decide. verlex.overflow() watches CPU, memory, and GPU. When usage exceeds 85%, heavy functions are transparently offloaded to the cheapest cloud provider; everything else keeps running locally.

import verlex

verlex.overflow(api_key="gw_your_key")

# Your code runs normally.
# When CPU, memory, or GPU exceeds 85%, functions go to the cloud.
data = load_data()
result = train_model(data)   # system overloaded? → cloud
evaluate(result)             # resources free → runs locally

Install the monitoring dependency with pip install 'verlex[overflow]'.

Checkpoints & Spot Recovery

Spot capacity is 60-80% cheaper than on-demand, but the provider can reclaim it at any time. Anything your job writes into the checkpoint directory syncs to object storage while it runs. When a spot instance is reclaimed, the job is re-enqueued on the next cheapest capacity, the checkpoint directory is restored before your code runs again, and the reclaimed time is not billed. HuggingFace Trainer, PyTorch Lightning, and Keras jobs resume with no code changes.

Available GPUs

Request a GPU by name (gpu="A100", or as a spec value). Verlex finds the cheapest available instance across all 10 clouds: T4, L4, A10, V100, A100, L40S, H100, H200, B200, B300, and consumer RTX cards. If you don't specify a GPU, Verlex auto-detects your code's needs and picks the best option.

Authentication

import verlex

# Pass api_key directly to any function
result = verlex.cloud(my_function, api_key="gw_your_key")

# Or use the environment variable (VERLEX_API_KEY)
result = verlex.cloud(my_function)  # picks up from env

Both gw_live_ and gw_test_ prefixes only name the key type; every key runs against the live service with live billing.

Error Handling

Verlex raises specific exceptions so you can handle failures gracefully:

from verlex.errors import (
    VerlexError,              # Base class for all Verlex errors
    AuthenticationError,      # Invalid or missing credentials
    InsufficientCreditsError, # Not enough credits to run the job
    ProviderMaintenanceError, # Pinned provider is under maintenance
    JobFailedError,           # Job execution failed in the cloud
    JobTimeoutError,          # Job exceeded its timeout
    SerializationError,       # Function could not be serialized
    NetworkError,             # Connection to Verlex API failed
    RateLimitError,           # Too many requests
)

Links

Contact

License

Apache 2.0

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.

verlex-0.18.0-cp313-cp313-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.13Windows x86-64

verlex-0.18.0-cp313-cp313-musllinux_1_2_x86_64.whl (12.1 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

verlex-0.18.0-cp313-cp313-musllinux_1_2_aarch64.whl (11.4 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

verlex-0.18.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

verlex-0.18.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (11.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

verlex-0.18.0-cp313-cp313-macosx_10_13_universal2.whl (3.4 MB view details)

Uploaded CPython 3.13macOS 10.13+ universal2 (ARM64, x86-64)

verlex-0.18.0-cp312-cp312-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.12Windows x86-64

verlex-0.18.0-cp312-cp312-musllinux_1_2_x86_64.whl (12.1 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

verlex-0.18.0-cp312-cp312-musllinux_1_2_aarch64.whl (11.5 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

verlex-0.18.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

verlex-0.18.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (11.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

verlex-0.18.0-cp312-cp312-macosx_10_13_universal2.whl (3.4 MB view details)

Uploaded CPython 3.12macOS 10.13+ universal2 (ARM64, x86-64)

verlex-0.18.0-cp311-cp311-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.11Windows x86-64

verlex-0.18.0-cp311-cp311-musllinux_1_2_x86_64.whl (13.1 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

verlex-0.18.0-cp311-cp311-musllinux_1_2_aarch64.whl (12.5 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

verlex-0.18.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

verlex-0.18.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (12.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

verlex-0.18.0-cp311-cp311-macosx_10_9_universal2.whl (3.5 MB view details)

Uploaded CPython 3.11macOS 10.9+ universal2 (ARM64, x86-64)

verlex-0.18.0-cp310-cp310-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.10Windows x86-64

verlex-0.18.0-cp310-cp310-musllinux_1_2_x86_64.whl (12.4 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

verlex-0.18.0-cp310-cp310-musllinux_1_2_aarch64.whl (11.8 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

verlex-0.18.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

verlex-0.18.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (11.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

verlex-0.18.0-cp310-cp310-macosx_10_9_universal2.whl (3.5 MB view details)

Uploaded CPython 3.10macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file verlex-0.18.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: verlex-0.18.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for verlex-0.18.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 1b9f605f4818b14e664a5f7d0206a040fe2fca98e4639d5f5c2cc9a909180686
MD5 de50b6e4a5679a3ae4bff5a430e27a8c
BLAKE2b-256 b3f5a87155200cfae2019e9e799fc3176f2255e969966ee0cff8a3a65592763f

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d6144bd4b0fec9b2fc406c152983d411c88d4a078ab9138e2021fd7859313209
MD5 8248f40630034796d61312ba56d66d0b
BLAKE2b-256 99207bea95866cb4074435dc21a8cb6d1f152841eb6dd72d71ca5b56a4a68700

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 3dcb2168d2985013ab33b21ffa136f24da371637a4ea05ed584d77dfe7b9a8b4
MD5 d0282ee5ed425fb95806160c3abaa316
BLAKE2b-256 3906c7e2858a099d9912c7ea6c0802e9140022195fcf00a1d7611f14616ebd80

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9aa16bcb54dd1611869a2e476fdff744906c6e4b49817ca57920c494aa401014
MD5 60bd33b58a51ee7d9dd0d5f13504698c
BLAKE2b-256 352cca0d82e78d94554459a898a91ba8bb91d0abf6f15154c135bbc72b63a6a0

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 558f0ed9c82a98a52bdbd3d0a376fb8ea7ef5d17b8d3502e010636682434012f
MD5 86fada2cc37c1b2ed4edefb478994703
BLAKE2b-256 091748833d1d2d60d550998753837ac7f58cc746ccda851105e95c021555f139

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp313-cp313-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 564ea1ec4d79b29baf5c990fd2a08c99d5a76101606aca8af2e2be9c4b9b9c76
MD5 92e3d1d78d4a63fb858d933994412eae
BLAKE2b-256 131afa1d77e080ede1cba34633f71eee9e7b2ff38cfecfe55a46fd8d84c7991d

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: verlex-0.18.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for verlex-0.18.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 ae8d00f9cc7c39f81174d912b71b67a7aab780d35cc8282bbbc21999724e8c49
MD5 ec3af08e39e2247110795eba4fece3a6
BLAKE2b-256 e867bbb0d4f65dd8e22990554162c54bf2b9e778ed2cdab4bac79ecc58d6cfd1

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d012a843856477257e54ddd4fd9eff468bba2fa695f49b5059c323224c1f63a6
MD5 d456495f2323fffee074bee8246b37ab
BLAKE2b-256 8c75159e68f429348b14bd1a9121b379f6ebfef291944583ba6c6d907e185d89

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 924284e103b854ae316b4dadb4610aba78cbc2ee0a8386cbe4a1341f257d1d4a
MD5 64c8f473b5bb4aff9b1461a3dab2fbb0
BLAKE2b-256 6f607a9daa27a25959b077063c38e2cc36119e228b9ef808b08c353cf49e8cbf

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ef51c7037dfad1c018540f3c14c4398af81891b71966b72f2648f19170c7e9e1
MD5 95d8c8ebb84c0ab56b6917fc0299ab09
BLAKE2b-256 a740eb7a081f131d49bccad48274044382e68dd01e0381f97bb867020e953405

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d6dafe11a8b5b510704369403e92460e4ca29ac6624ce6e10f08a0e9c8377a39
MD5 723083113c7828053989a5c95c31470d
BLAKE2b-256 fa17f757192b3f9ffd7fabfec84e2f885bec8d367e9bdd1bbe2c93b0d7523fd6

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp312-cp312-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 aeb68dc6955f6bbb1180541bed6e6d854463082e922a5b4037c46a8d11b1bb77
MD5 bd3cd9476498408b7d3f823206e84733
BLAKE2b-256 8c378468ee0a371afce15a1afc70214d75bb7f211d5cac48e9d457d2da5cb3c3

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: verlex-0.18.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for verlex-0.18.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 00a54b5dcd70e90dfc92c76564dfd032ad5ffb81270426cbc3d682faf1398293
MD5 73cf6395131b05bf413d9a1b9cbd8f31
BLAKE2b-256 2814e4bfc99aa1056030effe75a3e764cdbe1593ab32ac835b70fde057e5586f

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6692dd75bfc32ebf98a475a6dea08576a8a6b25dc1ceaeffba685d0301fcdbf0
MD5 0986bb259fe4e690119868de6e0c6751
BLAKE2b-256 4810edecfd73d469cf250c953536e422a71b73e9e9908072866f39437b19978a

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d473f472806def38189255e9735e4bf032f932ee84463a575fa9293742269ac3
MD5 87732ce87202f276a1d347dfeafe1a36
BLAKE2b-256 0c0dc325195e0b57ef41d78b32e56a564b019c19b2be634153633bddc77020be

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8a1dd140a80d7c59c18fc5df1266d305d4b03229a39ada898c43230742db2e2e
MD5 39069a44d2802b2d71f3846f7b1f9593
BLAKE2b-256 3ccd8fe81e9ded8717e95017190a40fc8379829968aab267e730c1affa966298

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a77d350a17081a42b791c046a277551bfcc875a88b46fd8be33d9044d6db3027
MD5 73cc18c7a70ee2a91d1854041029b139
BLAKE2b-256 7ac0560a95fc3f4573cc21baf2b72d65fc2884b1721edf662d101c7fccf19df4

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 985990395c5b5f929289fd7bb251d0bdcb7e8f81a3a633143f7de7a37ef4e39a
MD5 363beede3d36ebd73215c84bd7db02c0
BLAKE2b-256 609abbced99b52d26ee84e6ce5127eed142f520a1d18ec92758d0a5c3811930e

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: verlex-0.18.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for verlex-0.18.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 eb5d261c6bf400b04849636613e0dcb752282f9f4a9d83effc09e490d193ebbf
MD5 fe0c18780cd60947bbfe5ed06c46c1f1
BLAKE2b-256 362cfa5c7c9b224e013007fc81dd3bbb23fda07cbcadcdf85c30c665e20d6781

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c6fe7778e0180ea9ced1a68b2878b5e267bfc7885f511823e4419f35d6ad1208
MD5 8e205ce4ed959a7bbc9878be07dc62b6
BLAKE2b-256 891db123b74298feb47e252ce7319543271caa7ef41f498bd0a78bc3fdb5003d

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 7c8e2798cba42b1512ced003b8c1cf803addfa0b906b5633089e69136652c961
MD5 ddc5cefd2b23b170f51ed531308bd973
BLAKE2b-256 c2f4c8da6c4240e4f32292a6ca9e31114b0c3ab149765f9f6b12730d70d7bd57

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a87b70a42959d999183f1b54feeadad435f552d3c3be54ce34747b0b6bccd3f6
MD5 3e4932a16c84562692a71cc5616d816e
BLAKE2b-256 5dafd2a126406cb2cc9614eedd49f6a94cef2167690f6dc57f6bebce62d777f9

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3e698f5cb6b570fbc83c82213b7ebcf4faa7a787fc598ba37f52f915e07c3ee0
MD5 fa17f030576205e70be37fcc55e97783
BLAKE2b-256 9169ede5ae6f0bca29e83d11fb0963ef694f569d57617c233c9b2a55db68631e

See more details on using hashes here.

File details

Details for the file verlex-0.18.0-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for verlex-0.18.0-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 454ca19f7698949dacaf60cddb31792768db3d64dd64b5d3b5d9106a9321c061
MD5 bd83b17df4fafaffe6c7fe74e375e8c6
BLAKE2b-256 3ae9fedc1adeb76fa9808d721d89e5ceb878b6146e163f105d8cdb0010e63a76

See more details on using hashes here.

Release history Release notifications | RSS feed

0.22.3

24 files

0.22.1

24 files

0.22.0

24 files

0.21.0

24 files

0.20.2

24 files

0.20.1

24 files

0.20.0

24 files

0.19.0

24 files

0.18.1

24 files

This release

0.18.0 This release

24 files

0.17.2

24 files

0.17.1

24 files

0.16.1

24 files

0.16.0

24 files

0.15.3

24 files

0.15.2

24 files

0.15.1

24 files

0.15.0

24 files

0.14.0

24 files

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