Updated on 2026-07-02 GMT+08:00

Notebook User Guide

In software development, reducing development overhead and enhancing the developer experience are continuous goals. However, AI development presents unique challenges, such as complex toolchains and difficult resource management, that stand in sharp contrast to traditional software workflows. To overcome these bottlenecks and boost efficiency, ModelArts provides a flexible, open, and cloud-native development environment. By integrating essential developer toolchains and streamlining resource utilization, ModelArts delivers a superior cloud-based AI experience for development, exploration, and education.

Notebook instances are designed for coding and debugging. They do not support long-term stable operation and must not be used for production-grade workloads.

Console Navigation Pane Guide

To improve the efficiency of creating notebook instances, ModelArts has implemented a series of usability enhancements to the navigation pane. The new navigation pane style simplifies workflows and provides a more intuitive interface.

Notebook navigation entries:

  • New console: In the navigation pane on the ModelArts console, choose Model Build > Notebook.
    Figure 1 New console entry
  • Old console: In the navigation pane on the ModelArts console, choose Development Space > Notebook.
    Figure 2 Old console entry

Using a Notebook Instance

Creating a notebook instance

ModelArts offers ready-to-use cloud-based notebook instances, so you do not need to worry about installing or configuring the environment. For details, see Creating a Notebook Instance.

Opening a notebook instance

Notebook supports several methods to develop AI models based on engines such as PyTorch, TensorFlow, and MindSpore:
  • JupyterLab: You can open notebook instances online via JupyterLab. For details, see Using a Notebook Instance for AI Development Through JupyterLab.
    Figure 3 Using JupyterLab to develop and debug code online

  • Code Server: Code Server is an open-source project. It runs Visual Studio Code (VS Code) entirely on a remote server and allows access through a browser. For details, see Using Code Server for Code Development.
  • Local IDE: ModelArts allows you to develop models using your local IDE by enabling an SSH connection. This allows your local IDE to connect remotely to a ModelArts notebook development environment to debug and run code. This approach maintains your coding habits while offering seamless access to cloud-based notebook resources.

    Currently, local IDE access supports VS Code and SSH tools. VS Code includes a dedicated extension, VS Code Toolkit, to streamline remote connections. For details, see Using Notebook Instances Remotely Through VS Code and Using a Notebook Instance Remotely with SSH.

    Figure 4 Remote access to a notebook instance via a local IDE

Managing notebook instances

When using notebook instances, you can quickly locate instances and switch images within the same instance to flexibly adjust AI engines. You can also modify node specifications to scale resources as needed. You can start with small storage and expand the Elastic Volume Service (EVS) capacity as your needs grow. By using dynamic Object Storage Service (OBS) mounting, you can simulate object storage as a local file system. If anomalies occur, you can view instance events for troubleshooting.

Table 1 Notebook operations

Operation

Description

Reference

Viewing details about a notebook instance

View details about a notebook instance, including basic information, storage, and events.

Viewing Details About a Notebook Instance

Searching for a notebook instance

The Notebook page displays all created instances. Use filters to quickly locate a specific instance.

Searching for a Notebook Instance

Accessing an environment

Open a running notebook instance to start coding in the development environment.

Using a Notebook Instance

Saving an image

Create a notebook instance using a preset image, install custom software and dependencies on the base image, and save the running instance environment as a container image.

Saving a Notebook Instance

Stopping, starting, or deleting a notebook instance

Running notebook instances continuously consume resources. Stop an instance to pause billing, and restart it later if needed.

Delete instances that are no longer needed to free up resources. Deletion is irreversible, and all data in the mounted directories will be permanently removed.

Starting, Stopping, or Deleting a Notebook Instance

Configuring auto stop

Enable this feature to set an auto-stop method and duration. The instance automatically stops once the threshold is exceeded. (There may be a 2–5 minute delay, which is billed normally.)

Starting, Stopping, or Deleting a Notebook Instance

Changing an image

Switch images within the same notebook instance to change your AI engine. The instance must be in the Stopped state to perform this operation.

Changing an Image

Changing instance specifications

Switch node specifications within the same instance to optimize resource allocation. The instance must be in the Stopped, Running, or Start Failed state to perform this operation.

Changing the Specifications of a Notebook Instance

Configuring node affinity scheduling

Use node affinity to ensure pods are scheduled to nodes meeting specific conditions, enabling fine-grained resource management and optimization.

Setting Node Affinity Scheduling

Configuring remote SSH for a notebook instance

Modify SSH settings. The instance must be in the Stopped state to perform this operation. Remote SSH cannot be disabled once it is enabled.

Configuring Remote SSH Connection for a Notebook Instance

Editing tags

Use tags to categorize, search, identify, and manage your notebook instances.

Editing a Tag

Dynamically expanding EVS capacity

Save costs by selecting a smaller EVS capacity (e.g., 5 GB) during early development. Once ready for large-scale dataset training, expand the storage capacity to meet your current project needs.

Dynamically Expanding EVS Disk Capacity

Dynamically mounting an OBS parallel file system

Simulate OBS object storage as a local file system within a running ModelArts notebook container using the dynamic mounting feature.

Storage Mount Methods

Checking the resource usage of a notebook instance

Track real-time resource usage statistics directly on the notebook instance details page.

Checking the Resource Usage of a Notebook Instance

Viewing notebook instance events

Track background logs for key lifecycle operations (creation, startup, shutdown, specification changes) and runtime statuses. Use these event logs on the details page to audit health and troubleshoot anomalies.

Viewing Notebook Events

Reporting notebook cache disk alarms

When creating a notebook instance, choose CPU, GPU, or Ascend resources based on your workload. For GPU/Ascend resources, ModelArts mounts a hard disk to the /cache directory for temporary files.

Without capacity alarms, exceeding disk limits can cause abrupt instance reboots, resetting configurations and risking data loss. This feature monitors cache disk usage and reports alerts to the AOM platform.

Notebook Cache Directory Alarm Reporting

Upgrading JupyterLab

Upgrade JupyterLab to version 4.4.10 (2025 stable version) from version 3.2.3 (2021 legacy version). This major upgrade optimizes notebook instance performance and startup speeds, reconstructs the editor, enhances debugging and collaboration, extends ecosystem stability, and improves interactive experience and memory efficiency.

Upgrading JupyterLab

Uploading a file to a notebook instance

In AI development, figuring out how to easily and quickly upload files to a notebook instance is a common challenge that almost every developer encounters. ModelArts provides multiple file upload methods, allowing you to monitor both upload progress and speed in real time.

ModelArts CLI

The ModelArts CLI is integrated into the ModelArts notebook development environment. It is used to connect to ModelArts services and execute management commands on ModelArts resources. ma-cli enables you to interact with cloud services within a ModelArts notebook instance or an on-premises virtual machine (VM). By using ma-cli commands, you can implement command auto-completion, authentication, image building, ModelArts training job submission, DLI Spark job submission, and OBS data replication. For details, see ModelArts CLI Command Reference.

MoXing

ModelArts Notebook features a built-in MoXing Framework module. ModelArts mox.file provides a set of APIs to access OBS, allowing you to operate OBS files using these APIs that mimic local file system operations. For details, see ModelArts MoXing Command Reference.