Skip to main content
This page covers only the simplest deployment flow using the official container image. For the complete installation guide across all scenarios (source install, Docker build, system settings, version mapping, etc.), see SGLang installation with NPUs support.

Prerequisites

Supported Devices

  • Atlas 800I A2 inference series (Atlas 800I A2)
  • Atlas 800I A3 inference series (Atlas 800I A3)
To identify your device, run npu-smi info -l: A3 reports Chip Count: 2 per NPU, while A2 reports Chip Count: 1 per NPU. For hardware details, see the Ascend NPU Reference.

Docker

Ensure Docker is installed and the Docker daemon is running on your host machine. Verify with:
If Docker is not installed, follow the official Docker installation guide for your operating system.

Setup environment using container

Ensure sufficient disk space before proceeding. Run df -h to check the available disk space. The Docker image requires at least 30GB of free space. If you need to download model weights, check the model size at ModelScope to reserve enough space.
We publish both stable releases and daily builds. Choose a stable release tag (e.g., v0.5.13.post1-cann9.0.0-a3) if you prefer a validated version, or a daily build tag (e.g., main-cann9.0.0-a3) if you need the latest development changes.
If you have already downloaded model weights to a local path (e.g., /path/to/model), mount the path into the container by adding --volume /path/to/model:/path/to/model to the docker run command below.
Command

Usage

The SGLang server is installed in the container by default. You can use pip show sglang to check the version.

Start SGLang server

SGLang will automatically download the model from Hugging Face. If the model is already downloaded to a local path (and has been mounted into the container), use that path directly like --model-path /path/to/model.
Command
Server startup may take several minutes. Once you see output like the following, the server is running.
Output

Send a test request

You can do inference using the server:
Command
If the “text” field in the response contains “Paris”, the server is working as expected.

Stop server and exit container

The SGLang server is running as a background process. You can send a SIGINT signal to stop it.
Command
Wait a moment for the server to shut down gracefully. The output should be like the following:
Output
The server has now stopped. You can verify it with ps -ef | grep sglang — the expected output is nothing (no matching process), then exit the container by pressing Ctrl+D.