Introducing the Workbench JupyterLab app

The new JupyterLab app is a powerful application for data analysis.

Prior reading: Cloud apps overview

Purpose: This document provides an overview of the new Workbench JupyterLab app, its capabilities, details on migrating from existing Vertex AI notebooks, and known issues.



Introduction

Vertex AI JupyterLab apps are deprecated in favor of the new Verily Workbench JupyterLab app. Vertex AI JupyterLab apps can no longer be created after Jan. 30, 2025. The new Workbench JupyterLab app requires less configuration while providing equivalent functionality.

Existing Vertex AI JupyterLab apps will continue to be available, but we encourage you to migrate data analysis to the new app to minimize disruption in the future. Learn more about migrating existing Vertex AI apps.

What's new

While the app creation flow is largely unchanged from the existing Vertex AI-based app, there are a few changes to note.

App selection

To select the new JupyterLab Compute Engine instance app, select JupyterLab Compute Engine instance in Step 1 of the app creation dialog.

Select the JupyterLab Compute Engine instance app
Selecting a new JupyterLab Compute Engine instance app.

A simplified creation flow

Starting a new JupyterLab environment now requires fewer steps. There is no longer a need to select an environment image specific to a data science framework. Instead, there is a single Workbench JupyterLab app image which includes Python, R, TensorFlow, and PyTorch installations (see below for more detail).

Creating a new JupyterLab Compute Engine instance app
Creating a new JupyterLab Compute Engine instance app.

Custom container images

The new app continues to support custom container images. To use a custom container image, select the Custom container option under App configurations in the app creation dialog.

Selecting a custom container
Selecting a custom container.

Unlike Vertex AI notebook apps, any base image can be used. Workbench will install the necessary Workbench package dependencies and JupyterLab on top of the base image at runtime during app creation.

This devcontainer template is used to install JupyterLab and workspace-specific dependencies such as gcloud and awscli.

To learn more about Workbench custom applications and how to create them, see Create custom applications.

To learn more about building and uploading custom container images, see Create container images in a workspace.

Installed software

The initial Workbench JupyterLab app image includes the following software versions:

  • Ubuntu 22.04
  • Python 3.10
  • CUDA 11.8, cuDNN 8.9.6
  • PyTorch 2.0.1
  • TensorFlow 2.14.0
  • R 4.4.2
  • Tidyverse 2.2.1
  • JupyterLab 4.3.1

Migrating existing Vertex AI JupyterLab apps

Verily Workbench does not persist the boot or data disks attached to app instances once they are deleted. If you have important data or notebooks in your app instance, make sure to preserve them in a workspace bucket. You can do this in several different ways.

  • Because Workbench automounts your workspace Cloud Storage (GCS) buckets in app environments, you can directly copy or move files to these buckets as if they were part of the local file system.

  • You can also use the gcloud SDK— which is pre-installed for Workbench apps— to copy files to your workspace buckets. You can do this via the gcloud storage command (or the older gsutil utility). Click on a GCS bucket in a workspace's Resources tab to view and copy its gs:// URI from the right-hand panel.

Use of rsync to back up files

Especially if you are making changes at both the source and target, or doing periodic copies of new work, you may want to consider using the rsync utility to back up your files.

rsync is available as a local command. Additionally, the gcloud storage command supports rsync as well as cp, as does gsutil.

Further migration details for the end of life for existing Vertex AI JupyterLab apps are in progress.

Known issues

The following issues are known and will be addressed in future releases:

  • The docker container runtime is not available.
  • nvidia-smi does not properly list processes and their GPU memory usage.

Last Modified: 17 December 2024