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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

verlex-0.17.1-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.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (11.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

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

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

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

verlex-0.17.1-cp312-cp312-musllinux_1_2_aarch64.whl (11.4 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

verlex-0.17.1-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.17.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (11.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

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

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

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

verlex-0.17.1-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.17.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (12.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

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

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

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

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

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

verlex-0.17.1-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.17.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (11.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

verlex-0.17.1-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.17.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: verlex-0.17.1-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.17.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 862f34fffc8719e9c9ba4d822608a266a67e01a0a699d0e006778cdd4c6481b0
MD5 8a0bcf6c9713566a65a2eb24cc993a68
BLAKE2b-256 76fbf3dc27355bb2dfafcadcd57899b9ba1ef5ae83d09af8ac794f812a06935e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8a08c3dbe08a3bf317d681806f50d5e508aa4c8d0bf31dd86b8b03b0970f42b3
MD5 3d9ac6a3b9da3207208c17665b432440
BLAKE2b-256 01e4e956254b4fd41f0bcb437b84090d334237768f6e3d5a5515546e15182789

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 211942f0723e614062c40339a0e6190f9d700d5391ce60f8a3ee7c9b9600e661
MD5 3dee92bcf09a26dbe5cc33f66a3029a7
BLAKE2b-256 760b5b9f7d80a76255a4a23e50af55e38450a1b662a2ec25d2e73c0c7f62517e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b7dde765bce8a391e1092c5a7b178e429821257b03462f63dbaa4373d5e92c0d
MD5 5bdc7bf7a340842d20ee834df2f973e8
BLAKE2b-256 e02b01c466fadd8a83a72f7b3b83dd94893e5830f00490f84478b7a8fbb35dc0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c98848d3c54569a11b871f0b92750591e0ae967f14fac1abf96e473418fe9a14
MD5 aedb4799c1d6360c7a45984758c28c48
BLAKE2b-256 2a5c893366d8f06668e5239f80d33871065243d5f8d29c9802604a4ed7732d0b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 0baa8893d08337f04c7604be3bd1dd0ca225b6fc1abe73d30f51c58a46765cb4
MD5 1c5d785379e32a43dea4c0a36a99570e
BLAKE2b-256 b969e02426af0d0c385a2db85f1e10333fd153ace5b1e28a415b2217ccb09011

See more details on using hashes here.

File details

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

File metadata

  • Download URL: verlex-0.17.1-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.17.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 a83266af5fcc2df1821a606d8e8d5233c41c44cf8732b1769547857ad2628a38
MD5 354095ce9e0f92b6dbbcd4837429fb13
BLAKE2b-256 afa2babb0de3e48be319813b55698cccb89759c06f564002a7644900c71d7349

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2b056142d79608a0330518c2e565b02a46b32bcf83814153537761da6e9c16a4
MD5 d1f2352d5490acaf790d53d47d4d0f7d
BLAKE2b-256 45ae0041395b131155325d033327018919c848ebcbc0b2b0f539836d6e4a8707

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 58b4ad73129c7116c16d532734c17ce6a63f183b32c747bdc5ff51dc6bb36760
MD5 69fa929bd05b36db257614d9558e33f4
BLAKE2b-256 8fad2072004fb008ad23e57484d2b92d4f3129af711250c55f39bab19d494530

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 19e9c8102bb4109b1a38e0bc2a60d0c06b5a6fb106bf363fb11bf7f00b275bfb
MD5 77aaa7c3f1508410b16dd369113d642f
BLAKE2b-256 b907c7ac51532bdc407de3f8ac86656990c2055771088a445876f98e4732d9bc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8287b3b50c6f70e2503064070969f3a5e73cb0147d19fa9cc143e71be1429607
MD5 d70fc7638502e84f29f9b5def40c7b84
BLAKE2b-256 94d5ae48f85a051913789bd8545b315389e12150c4d284c0c8eea3981641dfea

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 18ed3ce4be3e4d77fe09d55fb22381c06ab8fa2e585838fc8beaac30e22c2a5d
MD5 ab953167a68a348a665d435dc6b8e4d9
BLAKE2b-256 8bafcd67e3a763455ce6426a1dca0472a5c6b8d4c3257a70d3f3607deb1eb80b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: verlex-0.17.1-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.17.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 d300dbb399f491b981863a8da32cb4463dd59bdde1456c534a2305fb7ba83e51
MD5 314a13dacdf2a31db1b0ca9ac234ae24
BLAKE2b-256 5cd8ca3eb465c3b33b63390035efe1aaab249e2776916ca7c70fb55c1b1d6c7c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7a89b54ff7f522f8d05225e12729c13b0036b50c319c2469c2da5485bb336516
MD5 bf8811a9e86885f26f5f206ffd8f0482
BLAKE2b-256 064dbe5886f2dc4554117695117aa530d3b6b84e71e6061c174cc420d287a9a4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6e2ab51a8f7947c970ddb2c44f6bf5049c0115f7754cfa9ea2e87df7c07f030b
MD5 97e0da8ceef41410df4b1543547e5137
BLAKE2b-256 07e93baee388283bf23088282f9ced31ef767e23c0831b188991425e604bc2ca

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 52747b713c3eedb65c179d9cf73b7c3cd6d6b4548ec0c79204a1e5a8e20d64c8
MD5 372fa35434be13eb98642180de477c72
BLAKE2b-256 bd1d5fc017a31513ed42822eeabb1518586b82f155b2fe51718b46bd24e9277c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2eb612d4f23ed21527bd7eed156d91bc019b95a1f6c9bd15d883dfc970a876cb
MD5 5467f56d47408181f45285e27e6c2f32
BLAKE2b-256 d9073192b3f69adf5c12bf1ea26ae88660207e30b326e7dc959587bae857d283

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 a7df31f872ebc4f7fae9a0d4f6cd774f5b3b7eb1705cb8f598b75b30fb046fca
MD5 e3c6bc76f7b877e5bd178e8284ec01c9
BLAKE2b-256 6edbe8e6b6ed37c393edbc8555f2ad17eb6fbd812185c3b94392a1558e5fdfda

See more details on using hashes here.

File details

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

File metadata

  • Download URL: verlex-0.17.1-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.17.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 69576c88edcf8a1c1a2360f7bb4ebb9f74a7fa5e81554080a58aa904981e8d18
MD5 65390127f07d17b1c380a8cc8d81989d
BLAKE2b-256 162d44a8a2575dc562edb9c997e5ce7107453dd63a4e6c9634e606d8e3cab258

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 adf70543d2496202403c329d2563fe0729aea673bc03a92dd37e327f1d452ed5
MD5 7a5ff15d76e7b48c8bf8dba123048d3a
BLAKE2b-256 78549742a3470bc45afee86064617be89d238bd985006dade735b38fc31268f7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 de2fde4e03160697749de9eea297a643f755737ddb69619e7fcd81f9b9c0481e
MD5 3ef701626f8f85ccea70d4cdf211068c
BLAKE2b-256 be28f4b0cf56f984348c493ff01bcbac26edf2c3316dfebb1499c10cf1b77604

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f3f56239518ad33e32c23607d576b69d63da4a9a0bc63bb8604e386865a15e36
MD5 56bee51bf5058eb43cf662a23f02fd3a
BLAKE2b-256 57b43994a985c8c38934d3372a30ded6015e1019397c5c9acd454612aff289fc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 abe28071daeacba42e7680d57e5b74b2359563a8011517bcb9f7ef2289156524
MD5 5df76102db1d09a6684707783dc7d76e
BLAKE2b-256 e9b7225239b28d55414f1e69d754e54c2ed0539f0631fcaefab5902960e9d361

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.17.1-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 bab6f7c2e71faf3415230cb0d0866f5a5406c8b4d9d74f4dedba47a4eaf7ad35
MD5 c31276a290a1bdf4b10d0a1659423eeb
BLAKE2b-256 ee1ad07353bc770e7940649c2dbea514ff6e95a0a6f4289c18f71d678fb96755

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

0.18.0

24 files

0.17.2

24 files

This release

0.17.1 This release

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