Vastai gpu
Rent a GPU on vast.ai, run experiments on it over SSH/rsync, pull artifacts back, and destroy it. Use when a task needs a GPU (training, CUDA, large-model inference).From its SKILL.md
npx -y skills add Yusuke710/vastai-skill --skill vastai-gpuAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
3.4 KB, 848 tokens by cl100k_base, as published. Nobody here has run it
Run GPU experiments on vast.ai
You rent a GPU instance with the native vastai CLI, wait for it with vastai-connect
(which writes an SSH alias), then work with plain ssh/rsync. Money is spent per hour
from the moment an instance is created until it is destroyed. Never leave one behind.
Prerequisites (check once)
vastai show instances --raw # errors if vastai isn't installed or the API key isn't set
If missing: have the user register a public SSH key and create an API key at https://cloud.vast.ai/manage-keys/, then:
uv tool install vastai && vastai set api-key <key>
uv tool install git+https://github.com/Yusuke710/vastai-skill.git
1. Find and rent
# Cheapest matching offers first. GPU names use underscores: RTX_3060, RTX_4090, A100_SXM4...
vastai search offers 'gpu_name=RTX_3060 num_gpus=1 reliability>0.98 dph<0.45' -o 'dph' --raw
vastai create instance <offer_id> --image vastai/pytorch:latest --disk 30 --ssh --raw
# → {"success": true, "new_contract": <instance_id>}
- Sanity-check the offer's
dph_total($/hr) against what the task deserves before renting. - Image: default to
vastai/pytorch:latest— its CUDA base layers are cached on most vast.ai hosts (boot-to-SSH ≈ 2–3 min). Other images usually download cold. --diskcannot be resized later; size it for datasets + checkpoints.- The
new_contractvalue is your instance id — the only instance you own. - Running several instances?
vastai label instance <id> <name>and use a distinct--aliasfor each.
2. Wait until reachable
vastai-connect <instance_id> --alias vast-gpu # blocks until SSH works; then `ssh vast-gpu` / rsync work
Typical wait is 1–3 minutes. On timeout (5 min default) or any stall later (crawling downloads, broken SSH auth): destroy and rent a different offer — re-renting beats debugging. Cheap consumer hosts are a lottery; datacenter GPUs (A100/H100) are usually more reliable.
3. Work over plain ssh/rsync
Normal remote-Linux workflow from here — nothing vast.ai-specific. Reminders, not recipes:
- rsync the project over gitignore-filtered so junk (.venv, data) doesn't cross the wire.
- Sanity-check that torch actually sees the GPU before paying for a long run.
- Detach long jobs so they survive SSH drops, and capture the exit code.
- Before destroying, pull back artifacts worth keeping (weights, logs, results) — they exist only on the instance. Check with the user if unsure what to keep.
4. Destroy the instance
vastai destroy instance <instance_id>
vastai show instances --raw # verify it's gone; [] means nothing is billing
- Destroy, never
stop— stopped instances still bill storage and may be unable to restart. - Only destroy instance ids you created in this session (the
new_contractvalues you received). Other instances — even ones with a familiar label or the same image — may belong to another job or agent running in parallel. Report unknown instances to the user; never "clean them up". - If you intentionally leave an instance running (e.g. a long training job), tell the user explicitly: instance id, $/hr, and how to destroy it.
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.