Ready-to-launch templates

JupyterLab with PyTorch on a cloud GPU

JupyterLab with PyTorch and CUDA 12 on a rented GPU, opened on a private link with no token to copy. How to launch it, check the GPU and keep your work.

The JupyterLab template gets me from an empty GPU offer to a notebook with a working CUDA build of PyTorch already installed, with no token to copy and no password to set first.

What the template installs

The template runs quay.io/jupyter/pytorch-notebook:cuda12-latest, one of the official Jupyter Docker Stacks images: JupyterLab, PyTorch built against CUDA 12, and the rest of that image's scientific Python stack, on a GPU VM from QuantaCloud, Massed Compute, Verda or Hyperstack. The tag floats. Quay rebuilds cuda12-latest as the Jupyter Docker Stacks project updates it, so the exact PyTorch and Python point release depends on the day you launch, not a version DeployGPU pins.

There is no Jupyter token and no password. The private link's own DeployGPU sign-in is the access control in front of the notebook, so the extra layer Jupyter normally asks for is switched off. That link is private to whoever launched it: only the DeployGPU account behind the deployment can open it, signed in, in a browser. It cannot be shared with a teammate and has no custom domain, so a script pointed at it gets a sign-in redirect rather than the notebook server's own API.

Pick a GPU for what you plan to run

JupyterLab itself barely touches the GPU. What matters is the model or dataset loaded inside it, the same as running that code outside a notebook would.

GPUFits well in a notebook
RTX A6000 (48 GB)Coursework, small to mid-sized models, one model in memory at a time
A100 (80 GB)Larger batch sizes and bigger models than a 48 GB card allows
H100Faster training than an A100, with FP8 support, at a higher hourly rate

My starting point for a general PyTorch notebook is the RTX A6000. If you already know which model you plan to load, size the GPU to it first: the models section has the memory math for gpt-oss, Qwen and Gemma 4, and the KV cache page explains why a model in use can need more memory than its own weights.

Launch JupyterLab on an RTX A6000

Opens the deploy page on the cheapest 1x RTX A6000 offer at 2026-10-15 19:09 UTC: QuantaCloud, $0.48/hr. You can pick another GPU there before paying.

Launch it

  1. Click the button above, or open the marketplace, pick any VM offer and click Launch. You can also start from Templates in the dashboard sidebar: choose PyTorch + Jupyter, then one of the suggested GPUs.
  2. On the deploy page, choose PyTorch + Jupyter under Template if it is not already selected.
  3. Check the cost summary and the SSH key, then deploy. The first hour is reserved from your credit balance.
  4. Wait on the Deployments page until the status reads Running, typically 6 to 8 minutes for an app template.
  5. Click Open Application. JupyterLab opens directly, with no token prompt.

A failed launch refunds the reserved hour automatically, so trying another offer costs nothing extra.

Check the GPU before you trust it

The first thing I run in a new notebook is a quick check that PyTorch can actually see the card, in a cell:

Code example
import torch
print(torch.__version__, torch.cuda.is_available())
print(torch.cuda.get_device_name(0))
print(torch.ones(2, device="cuda").sum().item())

The first line should end in True, the second should name the GPU, and the third should print 2.0, which proves a CUDA kernel actually ran on the card. For a wider view, run nvidia-smi itself, either from JupyterLab's own Terminal, opened from the Launcher, or as a shell escape inside a notebook cell:

Code example
!nvidia-smi

That prints the driver version, GPU utilization and how much memory is already in use, the same output as over SSH.

On the Blackwell cards, the B200 and RTX PRO 6000, run this check before anything else. PyTorch added Blackwell support in version 2.7 with builds for CUDA 12.8 (release notes), and the template's floating image tag decides which build you get. If the check fails there, install a current build in a cell with %pip install -U torch --index-url https://download.pytorch.org/whl/cu128 and restart the kernel.

Where your work lives, and what stopping deletes

Notebooks, pip packages and anything you download all live on the instance disk, so treat a session as scratch space. In JupyterLab, right-click a notebook and choose Download before you stop, or push the folder to git. The stop guide covers moving larger files off with rsync and keeping data on a volume on Verda or Hyperstack between sessions.

What it costs

You pay the hourly rate of the GPU you launch on, shown in the button caption above and in the live 48 GB GPU table, and nothing extra for the template. A notebook run for 4 hours and 40 minutes bills four full hours plus the started fifth, then refunds the unused part of that fifth hour when you stop. Credits are bought by card, with a 5% + $0.30 processing fee per top-up. The pricing page has the rest of the mechanics.

There is no idle timer, so a notebook left open overnight bills all night whether or not a cell is still running.

When something goes wrong

What you seeLikely causeFix
torch.cuda.is_available() returns FalseThe GPU was not requested by, or is not visible to, the containerRun nvidia-smi in the Terminal. If that also fails, contact support instead of debugging blind
The kernel dies while loading a modelThe model does not fit in the GPU's memoryPick a smaller model, or move up a tier on the models section
Downloads fail partway with a disk errorThe instance disk filled upSee no space left on device
The link asks you to sign in againOnly the DeployGPU account that launched the deployment can open itSign in with that account

For anything else, the troubleshooting section and the contact page are the next stops.

Frequently asked questions

Does the Jupyter template ask for a token or password?

No. Both are disabled, because the private link's DeployGPU sign-in already restricts who can open it.

Which PyTorch and CUDA versions does it run?

PyTorch built for CUDA 12, on whatever point release the quay.io cuda12-latest tag carries on the day you launch. Check the torch version in a cell if the exact number matters.

Will my notebooks still be there if I stop and relaunch?

No. Stopping deletes the instance disk along with everything on it. Download or push notebooks you want to keep before you stop.

Can I install extra Python packages?

Yes. pip and conda both work normally inside a notebook or the Terminal, but anything installed disappears when you stop, the same as the rest of the disk.

Which GPU should I start with?

An RTX A6000 covers most general PyTorch work. Move up to an A100 or H100 once you know the model or batch size needs more memory than 48 GB holds.

Can a teammate open the same notebook?

Not through the private link, which only opens for the DeployGPU account that launched the deployment. A teammate would need a deployment of their own.