Repolode
skypilot-org

skypilot-org/skypilot

An open-source system to run, manage, and scale AI workloads across Kubernetes, Slurm, and 20+ clouds or GPU providers with one interface.

Stars
10,723
Forks
1,296
Open issues
504
Last commit
5 hours ago

What is it?

SkyPilot is a system for running, managing, and scaling AI workloads on the infrastructure you already have or can rent. Users describe a task in a YAML file or Python API covering resource needs, data to sync, setup commands, and run commands. SkyPilot then finds available capacity across reserved GPUs, Kubernetes clusters, Slurm clusters, or many cloud providers, provisions machines, and streams logs, with automatic failover when a provider reports capacity errors.

For infrastructure teams, SkyPilot acts as a control plane across multiple clusters and clouds. It offers gang scheduling, multi-node jobs, job queueing, autostop for idle resources, and workload binpacking on shared clusters. Everything launches inside the user's own cloud accounts, VPCs, and clusters.

SkyPilot also supports interactive development on Kubernetes through SSH into pods, code syncing, and IDE connections, and includes examples for training, serving, and fine-tuning popular models such as vLLM, SGLang, and Ollama deployments.

Key features

  • 01Runs one task definition on Kubernetes, Slurm, reserved GPUs, or 20+ cloud providers.
  • 02Finds cheapest available capacity and fails over automatically when capacity errors occur.
  • 03Provides gang scheduling, multi-node jobs, and job queueing on Kubernetes.
  • 04Stops idle resources automatically and binpacks workloads on shared clusters.
  • 05Lets users SSH into Kubernetes pods, sync code, and connect IDEs for interactive development.

Use cases

  • Training or fine-tuning large models across several GPU clouds to avoid capacity shortages.
  • Serving open-source LLMs such as vLLM or SGLang endpoints on your own GPUs.
  • Giving ML teams a simple job interface on a shared Kubernetes cluster managed by infra staff.
  • Running batch experiments or hyperparameter sweeps with automatic queueing and cleanup.

Quick start

  1. 1

    Install SkyPilot with uv, choosing your clouds

    uv pip install "skypilot[kubernetes,aws,gcp,azure,oci,nebius,lambda,runpod,fluidstack,paperspace,cudo,ibm,scp,seeweb,shadeform,verda]"
  2. 2

    Clone the example project into the workdir location

    git clone https://github.com/pytorch/examples.git ~/torch_examples
  3. 3

    Save the example task YAML as my_task.yaml from the README

  4. 4

    Launch the task on your infrastructure (requires GPU access)

    sky launch my_task.yaml

Things to know

  • Needs cloud accounts, quotas, or a Kubernetes/Slurm cluster to run real workloads.
  • Launching the example requires access to GPU instances.

Topics

FAQ

What is skypilot?
An open-source system to run, manage, and scale AI workloads across Kubernetes, Slurm, and 20+ clouds or GPU providers with one interface. SkyPilot is a system for running, managing, and scaling AI workloads on the infrastructure you already have or can rent. Users describe a task in a YAML file or Python API covering resource needs, data to sync, setup commands, and run commands. SkyPilot then finds available capacity across reserved GPUs, Kubernetes clusters, Slurm clusters, or many cloud providers, provisions machines, and streams logs, with automatic failover when a provider reports capacity errors.
Is skypilot free to use? What license does it have?
skypilot is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is skypilot still maintained?
Actively maintained. The last commit to skypilot was on Oct 20, 2026.
What can I use skypilot for?
Training or fine-tuning large models across several GPU clouds to avoid capacity shortages. Serving open-source LLMs such as vLLM or SGLang endpoints on your own GPUs. Giving ML teams a simple job interface on a shared Kubernetes cluster managed by infra staff. Running batch experiments or hyperparameter sweeps with automatic queueing and cleanup.
How do I install skypilot?
Install SkyPilot with uv, choosing your clouds: uv pip install "skypilot[kubernetes,aws,gcp,azure,oci,nebius,lambda,runpod,fluidstack,paperspace,cudo,ibm,scp,seeweb,shadeform,verda]" Clone the example project into the workdir location: git clone https://github.com/pytorch/examples.git ~/torch_examples Save the example task YAML as my_task.yaml from the README Launch the task on your infrastructure (requires GPU access): sky launch my_task.yaml
Where can I get skypilot?
The source code and installation instructions are on GitHub: https://github.com/skypilot-org/skypilot

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects