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

Uploaded CPython 3.13Windows x86-64

verlex-0.18.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.18.1-cp313-cp313-musllinux_1_2_aarch64.whl (11.4 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

verlex-0.18.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.18.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.18.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.18.1-cp312-cp312-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.12Windows x86-64

verlex-0.18.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.18.1-cp312-cp312-musllinux_1_2_aarch64.whl (11.5 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

verlex-0.18.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.18.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.18.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.18.1-cp311-cp311-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.11Windows x86-64

verlex-0.18.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.18.1-cp311-cp311-musllinux_1_2_aarch64.whl (12.5 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

verlex-0.18.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.18.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.18.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.18.1-cp310-cp310-win_amd64.whl (1.5 MB view details)

Uploaded CPython 3.10Windows x86-64

verlex-0.18.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.18.1-cp310-cp310-musllinux_1_2_aarch64.whl (11.8 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

verlex-0.18.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.18.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.18.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.18.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: verlex-0.18.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.18.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 0b61d5ef42e8b41c59d7777d5fc92dd14a3e2909f175b949eb717f62866089a7
MD5 b1062997dcff7bf7261112482f1b8379
BLAKE2b-256 a2dacce03049fd5b7c04ac51d1d4b45e4bdc5f8bea2e093d9ca6e6ed81293354

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ddf9d75347c66e7a4a1f240f8e8dfc8d454c897743f0a0ba4dacac3a39a48fdd
MD5 7752adb026c829f85ea6d46a5b3897e1
BLAKE2b-256 a6afed99b57b6581f777905fbcc7bbabc44c233dec2895fa6add36acc8fe72b1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 04f6b404101650a763cab62c0e0aa67f5dbad612313463bd0025692d66d162c6
MD5 396a9745a1adf49345807d9fa9861c7b
BLAKE2b-256 e890a37c13911d9279bda1bfbdb9342dcbce2979fd30a81cd9bdccf2f64d9667

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e23a5da3984fbca74f43f06924333937fa9b76c5bf64fb92739c3d6b47c3682f
MD5 338b34b7d93f11c6032049731a88a7af
BLAKE2b-256 2bef14df341f94f64e1e7dbe5aebf2a4803f2aabed7ab959ab91bff696c8ef07

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5111f0804ea95d9e57d37b740dcb30ce94a7944f80e0edf39e238367b76cdc34
MD5 1b420a11e49e3952c0a66b1382bc587a
BLAKE2b-256 84f1343d6280c9d8a694683d83bfcc40ac195a58de9b2d23dcd9b9e7f3253530

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 75d89e657768cab845644c7e121a407ebfd1ea1ee0e5738d3b9ab5ce274695e6
MD5 949c573d2011d294edfaebbd82210646
BLAKE2b-256 82d9c93d84dbec4d5c8e299a6ed3273f1fedccf0c7849be228ba175c9796224a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: verlex-0.18.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.18.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 76dbd9daa8ecc4e93568a8b0a6997eb05ea63d59981c1eb2a2d73ba9dfe5d276
MD5 9b328a9cc492f0f8fddaea4c3c8ea001
BLAKE2b-256 5299a2e03027f036fb87d5c28d17af6f2f6152e2158646c66c08466a49b65c44

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 fa4a15fc0d9ab3c50b02b105c8e07321f0f221024dd451402062af3ebb9ec7f6
MD5 3defe5883b12425d16975299405467d6
BLAKE2b-256 bbdc028abd6d4da6090d83ab482373ae939c3897c333c42b2c8855574548e667

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a52297640862003c53a0afee6b4110267e31a136520ce4774d374b41e08efea5
MD5 a90054ffd6930d0f719e419c382c6149
BLAKE2b-256 f8a65210aa85c93837ec3dbe4d6ba86306e6bc4af4570ba957d62a75d09d9e58

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 525bcb10169b7a031b3bfd047b9fc8564413d53fa2ce2cf075a36138b12dced6
MD5 7557ba2fb1ffad28b6b20087fe567652
BLAKE2b-256 13a7b59a26682a3433e4d8297ce5433f454f1fcdec597f945825f67b6b3750a0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d27af2445421ebc50f4d28f0b642f7343084c3a188fc60b76d0d4a403aa286e0
MD5 32d9b271429e5fa52ed6c2acb5d8d1da
BLAKE2b-256 d28bcf04b170d9ee08c883e8525bf71743c7f0090224b9b1a1469e09836175fa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 4c0ce7a80b44a1615156cbb907ca6f2c816f485bdbef90f941c013b1babde354
MD5 65728a747563a4960df324803d12f2bb
BLAKE2b-256 fae05b0fc0c60e5ca42afcfb638498431b6f087bba5f7188d7b4590858235898

See more details on using hashes here.

File details

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

File metadata

  • Download URL: verlex-0.18.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.18.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 aa1717920c8803fab11e0255de51769bc6c52d669e868db09d23db841577aa6a
MD5 fc54df2c2dacb7fcd0f8d59801611cf0
BLAKE2b-256 5486eab08d1c935da42624b231481ba6e969cb631a8b4c573713d1bdab51067f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 280e81f28980ab2ce10f1d426e1f42a888a6497f008f37dd3aabc42051036b34
MD5 022667496961b5c32914b1e5c3acd678
BLAKE2b-256 d42ac0db99fa65c3c08dc80a0f217d40183308ba87510f3112c5e4acd05fa0dc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 08802ecca8abd20ac92050672535fed2aefc561257b4e963b364f5cd5754100f
MD5 eb00643db8d5cdb8164392813da7bf23
BLAKE2b-256 c4d6c4deccf3d16daf13ce1676b1569178a63a6c093a036b9775467a01dadccb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 937f6f8951cb09d3b6598297e1f782248d7e3a61f28924466be02d9e648cba54
MD5 11ca5cd47ab4544e2f7a1b2a2c3b82ef
BLAKE2b-256 b039b8460cfdb59c8d0933024ba638d5b20c82c69a0d0ad2e2d0666dc6261de7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 11de330d68221b063abe113592f87f96bb08d0a6bd2fd989285f721c556ae348
MD5 c6df9939e456fb03549a064a47cc9fde
BLAKE2b-256 5ddd0947c7df9eb7c83506f6f6a4b624110e3e49ae397fb7fffd5912497dc67e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 4df044017e4a2d70c0d9321f4bbbbd456072283d51f520b16ba7c04b83da7623
MD5 f3931251b6d9ddacfb06d277014f1103
BLAKE2b-256 941d06c642820b40ef20bb4fea68bc3ceb01b51aff299de737f3492ff1763c2c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: verlex-0.18.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.18.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a03f253102967bb95c0f6639128491bc27fe31003cd59b6d68b469daaf044f14
MD5 c7505d05dcf04de79c55e7f1a7b1fac7
BLAKE2b-256 78ed124ad5fabb043b6c0c862662fed399958af6fd6b8ad10cb8c9a98c10067a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9ca6f26baa9b3df8ca57c9217db2fdbb2b0a7bcf6107dc82ee1424fac775d824
MD5 3b9d40fbb0a1f0d305f18b3fe28ceffb
BLAKE2b-256 893ef302e7d5e3de32f8dff0643b1284c8e19422f7b18d5c451c6c9b2500c910

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8e13dca9730a64be758564daaec74e5a2a97dfb0863528cefb3833212c79c768
MD5 71c0acbebed30b8b4e160b86924f361b
BLAKE2b-256 b0a09e5e5d4e2683317ad40c050d9aa446cc879f4f9bca0638ea20cd546bb010

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ed58bb440af7190015169ad6e2e74a13c930232493d0e72c642a6e9777be930d
MD5 354a6ccaf3d829efbf9f6b413d9100e4
BLAKE2b-256 6506a8fa0d5a6d53cd27ad08d51c17ce8a8ebd63efb4a5a7a05967df83057875

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9b02bbb920b2b9d87a7eed19a9399523dc15a3098eba37d1a9372f775de84306
MD5 7dd9dba9beacd26b22a6e69691dd3e1d
BLAKE2b-256 7c54231e22a37bdf64023cc101349e2a0d76908a485c121e65e88fce76109936

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.18.1-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 9cb77af789bc5ff6a2d45651aa23bcdd4bb57cde56166b20fa47a524200af836
MD5 e436ce2c6b4fd1b712070a36978f0893
BLAKE2b-256 cb295ea34b3cda52b7e5ccfa1642a2d99503d6b5715c1f73789a33a06d1c562e

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

This release

0.18.1 This release

24 files

0.18.0

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