Skip to main content

Execute Python functions on cloud compute with a simple decorator

Project description

Skyward

Cloud accelerators with a single decorator

CI PyPI Python License


Skyward Demo

Skyward is a Python library for ephemeral accelerator compute. Spin up cloud accelerators, run your code, and tear them down automatically. No infrastructure to manage, no idle costs.

Quick Example

import skyward as sky

@sky.function
def train(epochs: int) -> dict:
    import torch

    model = torch.nn.Linear(100, 10).cuda()
    optimizer = torch.optim.Adam(model.parameters())

    for epoch in range(epochs):
        loss = model(torch.randn(32, 100, device="cuda")).sum()
        loss.backward()
        optimizer.step()

    return { "final_loss": loss.item() }


with sky.Compute(
    provider=sky.AWS(), 
    accelerator=sky.accelerators.T4(), 
    image=sky.Image(pip=["torch"])
) as compute:
    result = train(epochs=100) >> compute
    print(result)

Features

  • A single API, any cloud — A unified declarative API to run functions on AWS, GCP, Hyperstack, RunPod, TensorDock, VastAI, Verda, and more.
  • Operators, not boilerplate>> executes on one node, @ broadcasts to all, & runs in parallel. No job configs, no YAML.
  • Ephemeral by default — Instances provision on demand and terminate automatically. Context managers guarantee cleanup.
  • Multi-provider support — AWS, GCP, Hyperstack, RunPod, TensorDock, VastAI, Verda with automatic fallback and cost optimization.
  • Distributed training — PyTorch DDP, Keras 3, JAX, TensorFlow, and HuggingFace integration decorators.
  • Distributed collections — Dict, set, counter, queue, barrier, and lock replicated across the cluster.
  • Spot-aware — Automatic spot instance selection, preemption detection, and replacement. Save 60-90% on compute costs.

Install

uv add skyward

Requirements

  • Python 3.12+
  • Cloud provider credentials (setup guide)

Documentation

Full documentation at gabfssilva.github.io/skyward.

License

MIT

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

skyward-0.9.2.tar.gz (11.5 MB view details)

Uploaded Source

Built Distribution

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

skyward-0.9.2-py3-none-any.whl (453.0 kB view details)

Uploaded Python 3

File details

Details for the file skyward-0.9.2.tar.gz.

File metadata

  • Download URL: skyward-0.9.2.tar.gz
  • Upload date:
  • Size: 11.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for skyward-0.9.2.tar.gz
Algorithm Hash digest
SHA256 b1492497afd7b8f412537353bf0b3088bdc51395962864a244c433aa766440e6
MD5 71ab142d03e8335c63ee2352570000f7
BLAKE2b-256 a60c23bc93b2a7ad954d099bdf90315b892a0a09dec96e3f0e0c9c0943d05bb1

See more details on using hashes here.

Provenance

The following attestation bundles were made for skyward-0.9.2.tar.gz:

Publisher: publish.yml on gabfssilva/skyward

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file skyward-0.9.2-py3-none-any.whl.

File metadata

  • Download URL: skyward-0.9.2-py3-none-any.whl
  • Upload date:
  • Size: 453.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for skyward-0.9.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5c74de9a829a61adbd78177b6e95521812b3b0da80e740f87ff9f7a59fee3ec4
MD5 14f469861761361a962a18546d67e2d5
BLAKE2b-256 981ffcf817c2c693f801ef0a81af0cb895a6dc249792bd9631d1f958e63723d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for skyward-0.9.2-py3-none-any.whl:

Publisher: publish.yml on gabfssilva/skyward

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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