Tous les produits
Search
Centre de documentation

Container Compute Service:training-nv-pytorch 26,07

Dernière mise à jour :Aug 28, 2026

training-nv-pytorch 26,07 est une image de conteneur destinée à l'entraînement et à l'inférence de modèles. Cette rubrique présente les points forts de cette version, les spécifications de l'image ainsi que la procédure de prise en main.

Points forts de la version

Fonctionnalités principales

  • Mise à niveau de PyTorch et des composants associés vers la version 2.12.1, et de Triton vers la version 3.7.1.

  • Composants d'entraînement : mise à niveau de Transformer Engine vers la version 2.16.1, de Megatron-Core vers la version 0.18.2 et de Transformers vers la version 5.12.1. Les fonctionnalités communautaires et les correctifs correspondants ont été intégrés.

  • Composants d'inférence : mise à niveau de vLLM vers la version 0.24.0 et de FlashInfer vers la version 0.6.12. Les fonctionnalités communautaires et les correctifs correspondants ont été intégrés.

Corrections de bugs

Aucune

Fonctionnalités clés et améliorations

Optimisation de la compilation PyTorch

Introduite avec PyTorch 2.0, la fonction torch.compile() offre souvent des gains significatifs pour les charges de travail à petite échelle sur un seul GPU. Toutefois, l'entraînement des LLM repose sur l'optimisation de la mémoire GPU et sur des frameworks distribués tels que FSDP ou DeepSpeed. Dans ce contexte, torch.compile() peut apporter des bénéfices limités, voire dégrader les performances.

  • Contrôle de la granularité des communications dans le framework DeepSpeed. Cette approche permet au compilateur de capturer un graphe de calcul plus complet et d'appliquer des optimisations de compilation plus larges.

  • Utilisation d'une build PyTorch optimisée :

    • Le frontend du compilateur PyTorch a été amélioré afin de garantir le succès de la compilation, même en cas de rupture de graphe (graph break) dans le graphe de calcul.

    • La correspondance de motifs (pattern matching) et la prise en charge des formes dynamiques ont été renforcées pour améliorer les performances après compilation.

Contrôle de la granularité des communications dans le framework DeepSpeed. Cette approche permet au compilateur de capturer un graphe de calcul plus complet et d'appliquer des optimisations de compilation plus larges.

Utilisation d'une build PyTorch optimisée :

  • Le frontend du compilateur PyTorch a été amélioré afin de garantir le succès de la compilation, même en cas de rupture de graphe (graph break) dans le graphe de calcul.

  • La correspondance de motifs (pattern matching) et la prise en charge des formes dynamiques ont été renforcées pour améliorer les performances après compilation.

ACCL

ACCL est la bibliothèque de communication haute performance d'Alibaba Cloud, conçue pour Lingjun. ACCL-N est la version dédiée aux GPU. Il s'agit d'une bibliothèque de communication haute performance personnalisée à partir de NVIDIA NCCL. Entièrement compatible avec NCCL, elle corrige les problèmes de la version amont de NCCL et intègre des améliorations de performance et de stabilité.

Spécifications de l'image

Le tableau suivant répertorie les spécifications de l'image training-nv-pytorch 26,07.

Élément

Valeur

Nom de l'image

training-nv-pytorch

Tag

26,07-serverless

Scénario

Entraînement et inférence

Framework

PyTorch

Prérequis pour le pilote NVIDIA

580 ou version ultérieure

Architectures prises en charge

amd64, aarch64

Composants principaux

amd64

  • Ubuntu : 24,04

  • Python : 3.12.7+gc

  • CUDA : 13.0.2

  • perf : 5.4.30

  • gdb : 15,1

  • torch : 2.12.1+ali.12.nv25.10

  • triton : 3.7.1

  • transformer_engine : 2.16.1+c9877beb

  • deepspeed : 0.18.8+ali

  • flash_attn : 2.8.3

  • flash_attn_3 : 3.0.0

  • transformers : 5.12.1

  • grouped_gemm : 1.1.4

  • accelerate : 1.11.0+ali

  • diffusers : 0.34.0

  • mmengine : 0.10.3

  • mmcv : 2.1.0

  • mmdet : 3.3.0

  • opencv-python-headless : 4.11.0.86

  • ultralytics : 8.3.96

  • timm : 1.0.28

  • vllm : 0.24.0

  • flashinfer-python : 0.6.12

  • peft : 0.19.1

  • megatron-core : 0.18.2

aarch64

  • Ubuntu : 24,04

  • Python : 3.12.7+gc

  • CUDA : 13.0.2

  • gdb : 15,1

  • torch : 2.12.1+ali.12.nv25.10

  • triton : 3.7.1

  • transformer_engine : 2.16.1+c9877beb

  • deepspeed : 0.18.8+ali

  • flash_attn : 2.8.3

  • transformers : 5.12.1

  • grouped_gemm : 1.1.4

  • accelerate : 1.11.0+ali

  • diffusers : 0.34.0

  • mmengine : 0.10.3

  • mmcv : 2.1.0

  • mmdet : 3.3.0

  • opencv-python-headless : 4.11.0.86

  • ultralytics : 8.3.96

  • timm : 1.0.28

  • vllm : 0.24.0

  • flashinfer-python : 0.6.12

  • peft : 0.19.1

  • megatron-core : 0.18.2

Prérequis pour le pilote

Images

Images publiques

CUDA 13.0.2 (pilote 580 ou version ultérieure, amd64 et aarch64)

  • egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:26.07-serverless

Images VPC

Pour extraire rapidement les images de conteneur ACS AI dans un VPC, remplacez l'URI d'actif de l'image de conteneur AI spécifiée egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/{image:tag} par acs-registry-vpc.{region-id}.cr.aliyuncs.com/egslingjun/{image:tag}.

  • {region-id} : ID de région du produit ACS. Par exemple, cn-beijing et cn-wulanchabu.

  • {image:tag} : nom et tag de l'image de conteneur AI. Par exemple, inference-nv-pytorch:25.10-vllm0.11.0-pytorch2.8-cu128-20251028-serverless et training-nv-pytorch:25.10-serverless.

Les images portant le tag yy.mm-serverless (par exemple, 26.07-serverless) sont adaptées aux déploiements Alibaba Cloud Container Compute Service (ACS) et Lingjun multi-locataires. Pour les déploiements Lingjun mono-locataires, utilisez les images avec le tag yy.mm (par exemple, 26.07).

Démarrage rapide

Pour utiliser l'image training-nv-pytorch dans ACS (recommandé), sélectionnez l'image depuis la page Artifact Center lors de la création d'une charge de travail dans la console, ou spécifiez l'image dans un fichier YAML.

L'exemple suivant montre comment extraire l'image training-nv-pytorch à l'aide de Docker, démarrer un conteneur et exécuter des exemples d'entraînement.

Avant de commencer, assurez-vous que le pilote NVIDIA 580 ou une version ultérieure est installé. Pour plus d'informations, consultez la section Prérequis pour le pilote.

1. Extraire l'image

Remplacez [tag] par le tag d'image correspondant à votre produit : 26.07-serverless pour ACS et le produit Lingjun multi-locataire, ou 26.07 pour le produit Lingjun mono-locataire.

docker pull egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:[tag]

2. Démarrer le conteneur

L'image inclut des outils d'entraînement de modèles intégrés. L'exemple suivant démarre un conteneur et exécute des tâches d'entraînement.

Charges de travail LLM

# Start the container and enter
docker run -it --gpus=all --ipc=host --net=host egslingjun-registry.cn-wulanchabu.cr.aliyuncs.com/egslingjun/training-nv-pytorch:[tag]

# Dense: Qwen3.5-4B LoRA smoke test
NPROC_PER_NODE=2 CUDA_VISIBLE_DEVICES=0,1 \
swift sft --model Qwen/Qwen3.5-4B --tuner_type lora \
    --dataset 'AI-ModelScope/alpaca-gpt4-data-zh#500' \
    --split_dataset_ratio 0.01 --num_train_epochs 1 \
    --target_modules all-linear --attn_impl flash_attn \
    --deepspeed zero2 --max_length 2048 --output_dir output

# MoE example: Qwen/Qwen3.5-35B-A3B
NPROC_PER_NODE=8 CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 \
megatron sft --model Qwen/Qwen3.5-35B-A3B \
    --dataset 'AI-ModelScope/alpaca-gpt4-data-zh#500' \
    --split_dataset_ratio 0.01 --num_train_epochs 1 --finetune true \
    --expert_model_parallel_size 8 --moe_grouped_gemm true \
    --micro_batch_size 1 --global_batch_size 8 \
    --recompute_granularity full --recompute_method uniform --recompute_num_layers 1 \
    --attention_backend flash --max_length 2048 \
    --output_dir megatron_output/Qwen3.5-35B-A3B

3. Recommandations d'utilisation

  • L'image contient des versions modifiées de bibliothèques telles que PyTorch et DeepSpeed. Ne réinstallez pas ces bibliothèques.

  • Dans la configuration DeepSpeed, laissez zero_optimization.stage3_prefetch_bucket_size vide ou définissez-la sur auto.

Problèmes connus

Aucun