Skip to main content

Run your code in the cloud with a single function call

Project description

Verlex

Run your code in the cloud for the price of a coffee.

Verlex is a Python SDK that lets you execute code on the cheapest available cloud infrastructure across AWS, GCP, and Azure — all with a single function call.

Installation

pip install verlex

Quick Start

import verlex

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

# Run it in the cloud — one line!
result = verlex.cloud(train_model, api_key="gw_your_key")
print(result)

Basic Usage

One-Liner (Simplest)

Every function works as a standalone call — just pass your api_key:

import verlex

# Run in the cloud
result = verlex.cloud(train_model, api_key="gw_your_key")

# Analyze resources
rec = verlex.analyze(train_model, api_key="gw_your_key")

# Estimate cost
costs = verlex.estimate_cost(train_model, api_key="gw_your_key")

Specifying Resources

result = verlex.cloud(
    train_model,
    api_key="gw_your_key",
    gpu="A100",       # Specific GPU type
    gpu_count=2,      # Multiple GPUs
    memory="64GB",    # Memory requirement
    timeout=7200,     # 2 hour timeout
)

Context Manager (Multi-step Sessions)

with verlex.GateWay(api_key="gw_your_key") as gw:
    rec = gw.analyze(train_model)
    costs = gw.estimate_cost(train_model)
    result = gw.run(train_model)

Async Execution

with verlex.GateWay(api_key="gw_your_key") as gw:
    # Submit jobs (non-blocking)
    job1 = gw.run_async(train_model_1)
    job2 = gw.run_async(train_model_2)

    # Wait for results when needed
    result1 = job1.result()
    result2 = job2.result()

Pricing Modes

Choose your price-speed tradeoff with a single fast flag:

Mode Wait Time Best For
Performance (fast=True) Immediate Time-sensitive workloads
Standard (fast=False) Up to 10 min Batch jobs, cost-sensitive
# Performance mode - immediate execution
result = verlex.cloud(my_function, api_key="gw_your_key", fast=True)

# Standard mode (default) - wait for lower prices
result = verlex.cloud(my_function, api_key="gw_your_key")

Authentication

Option 1: Direct API Key (Inline)

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

Option 2: Environment Variable

export VERLEX_API_KEY="gw_your_key"
result = verlex.cloud(my_function)  # picks up VERLEX_API_KEY

Automatic Cloud Offloading

Don't know which functions are heavy? Let Verlex figure it out:

import verlex
verlex.overflow(fast=True)

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

Install with: pip install 'verlex[overflow]'

Agent Daemon

Monitor your system and offload heavy Python processes:

# Watch for heavy processes and offer to offload
verlex agent watch

# Auto-offload without prompting
verlex agent watch --auto

# Submit a script directly via source-code pipeline
verlex agent run train.py --gpu A100

Install with: pip install 'verlex[agent]'

CLI

# Login
verlex login

# Run a script
verlex run train.py

# Run with specific GPU
verlex run train.py --gpu A100

# Check job status
verlex jobs

# View account info
verlex whoami

Supported Cloud Providers

  • AWS - EC2, with Spot instances (up to 90% off)
  • GCP - Compute Engine, with Preemptible VMs (up to 91% off)
  • Azure - VMs, with Spot instances (up to 81% off)

Links

Contact

License

Apache 2.0

Project details


Download files

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

Source Distribution

verlex-0.11.1.tar.gz (1.8 MB view details)

Uploaded Source

Built Distributions

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

verlex-0.11.1-cp312-cp312-win_amd64.whl (959.2 kB view details)

Uploaded CPython 3.12Windows x86-64

verlex-0.11.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

verlex-0.11.1-cp312-cp312-macosx_10_13_universal2.whl (2.3 MB view details)

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

verlex-0.11.1-cp311-cp311-win_amd64.whl (977.1 kB view details)

Uploaded CPython 3.11Windows x86-64

verlex-0.11.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

verlex-0.11.1-cp311-cp311-macosx_10_9_universal2.whl (2.3 MB view details)

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

verlex-0.11.1-cp310-cp310-win_amd64.whl (971.2 kB view details)

Uploaded CPython 3.10Windows x86-64

verlex-0.11.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

verlex-0.11.1-cp310-cp310-macosx_10_9_universal2.whl (2.4 MB view details)

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

File details

Details for the file verlex-0.11.1.tar.gz.

File metadata

  • Download URL: verlex-0.11.1.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for verlex-0.11.1.tar.gz
Algorithm Hash digest
SHA256 aa7cbf7dce04e80825d602c558a1473135795bfcd8c3ac42a197dca99a23612c
MD5 d0e1568c393f527c6227b55432d463a7
BLAKE2b-256 20c2e74333649d4cc6cd53cfb2c8ec557a4c03e2d6d9a1c73edfb83247296f78

See more details on using hashes here.

File details

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

File metadata

  • Download URL: verlex-0.11.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 959.2 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for verlex-0.11.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 206384320c52a35129268606c2ab83b2f2f674883b13c2f9ffaec04445ceb1dd
MD5 ab508f49484728d31c09d30683a72c97
BLAKE2b-256 75b2f1dd565d8c4b8908af5ccf6a01ba6ee1a98c297745a7f788de3208ea30f9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.11.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 92b56edcf8de8384f194d6e7ad2ed922febab6ac6065348631340f239ab239e4
MD5 e0a3b9ccb664c29d1423266be26f58f9
BLAKE2b-256 f60546259c35f8fa34f1cc59b4c03c9cca53563aae84d69bbbb8c6779a9dc938

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.11.1-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 efac4d29d8b3fca1fbfbafb13440d25ae8a0d8f473f0b6cce0ad26f8e344ca28
MD5 f8da7e44ffbc4834d9d8bf878f6000ba
BLAKE2b-256 8b85bfac78203a4e8766c419e55fe09bd2d37c88f7c44c60e58cad2633d13c9e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: verlex-0.11.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 977.1 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for verlex-0.11.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 cf1a3f84a3ca5fb10a0eb4dd8ceaac2b71b6117a35e2b0f9f0542260cd77b37a
MD5 fc57204c09e29144074bf4720dc35bdb
BLAKE2b-256 1b3c5eca7687b58bb465a40230ec97d8a55fba5be63b902ef21ddba0408a6ffd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.11.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1debd03d2204d0855dd82efabcfb7a8b06a3518ef5200e743c9b0cc14845613d
MD5 6f3a9af835e0b193c03c060acaca52af
BLAKE2b-256 ff0afa5ebca79dbda5b377a8794a86a1adf1eca2c76804143078af0a562e7989

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.11.1-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 3b024c00dfea5e84b069e004251a236b3ddd7870b263ef0c8a93d95d27283c92
MD5 5f37707e1ca7ff14d69060690aeba65d
BLAKE2b-256 19d23f6bc2f2d46b3cea7c9945dfe3786faed1d980cd345ce5122b682223336c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: verlex-0.11.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 971.2 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for verlex-0.11.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a817400dd33b4d9596b461312b8fc4ee52ae72e98c66bbf500114b540edfe8ec
MD5 f0850358082c58f66eb7214a41b3bc40
BLAKE2b-256 f72646c3ca08ba2af54e79861768bddd745e86a2b35e14d009beb1ab58f371ba

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.11.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dc583b0b17724c28088bb9232d162211349a4d03ceaa1411484c320e242445af
MD5 e7a6e63f7bc1ecbeacc9d4331027d917
BLAKE2b-256 2a46c245d4cfc59952e108f798d35f738d5f0cd5e54b98c089737fef1286b2ff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for verlex-0.11.1-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 208047c02537463054ea00f92a582cd71adf11fe2dd933fc222ac6358e7347e3
MD5 736e1db3e160fdc89d00608db1e0ea8b
BLAKE2b-256 fa784f5b718cde8afa6432338f50b21389474d3c985e8f8b0c7157876818d1a1

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