run-house/kubetorch

Distribute and run AI workloads on Kubernetes magically in Python, like PyTorch for ML infra.

What it solves

Kubetorch provides a "serverless" interface for running machine learning workloads on Kubernetes, eliminating the slow iteration cycles typically associated with deploying to a cluster. It allows developers to run remote compute tasks directly from their local Python environment with near-instantaneous startup times (1-3 seconds).

How it works

Kubetorch acts as a bridge between a local Python environment (IDE, notebook, or CI pipeline) and a Kubernetes cluster. By avoiding local runtimes or code serialization, it enables users to programmatically define compute resources and send functions to be executed remotely on the cluster. It automatically handles the propagation of logs, exceptions, and hardware faults back to the local environment in real-time.

Who it’s for

ML engineers and researchers who need to scale their Python code to Kubernetes without the overhead of traditional deployment pipelines, specifically those working on complex ML applications like reinforcement learning (RL) and distributed training.

Highlights

  • Rapid Iteration: Reduces iteration time from minutes to seconds for complex ML workloads.
  • Cost Efficiency: Lowers compute costs through dynamic scaling, bin-packing, and intelligent resource allocation.
  • Fault Tolerance: Includes built-in fault handling for programmatic error recovery and resource adjustment.
  • Flexible Integration: Works across IDEs, notebooks, and CI pipelines without requiring a local runtime.