-
Notifications
You must be signed in to change notification settings - Fork 17
build: bump customizer pytorch base images #1283
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -28,10 +28,10 @@ | |
| # Publish target: nmp-unsloth-training | ||
| # Default tag: `local` (override via BAKE_TAG at build time). | ||
|
|
||
| # NGC PyTorch base. 26.05-py3 ships PyTorch 2.12 + CUDA 13.2 + Python 3.12 (aligned with | ||
| # docker/automodel/Dockerfile.nmp-automodel-base). Override at build time: | ||
| # NGC PyTorch base, aligned with docker/automodel/Dockerfile.nmp-automodel-base. | ||
| # Override at build time: | ||
| # --set nmp-unsloth-training.args.PYTORCH_BASE=... | ||
| ARG PYTORCH_BASE=nvcr.io/nvidia/pytorch:26.05-py3 | ||
| ARG PYTORCH_BASE=nvcr.io/nvidia/pytorch:26.07-py3 | ||
|
|
||
| # Prebuilt CUDA-extension wheels (mamba-ssm + causal-conv1d), shared with | ||
| # docker/automodel/Dockerfile.nmp-automodel-base. The bake `nmp-unsloth-training` target | ||
|
|
@@ -124,7 +124,7 @@ RUN --mount=from=causal-conv1d-wheel-src,target=/tmp/causal-conv1d-wheel-src,rea | |
| /tmp/causal-conv1d-wheel-src/wheels/cu13.2/causal_conv1d-*cp312*.whl \ | ||
| /tmp/mamba-ssm-wheel-src/wheels/cu13.2/mamba_ssm-2.3.0-cp312*.whl | ||
|
|
||
| # TODO: Step 1d: Flash Attention 2 — compiled from source against the NGC 26.02 torch. | ||
| # TODO: Step 1d: Flash Attention 2 — compile from source against the active NGC torch. | ||
| # /usr/local/cuda symlinks to an older toolkit; use /usr/local/cuda-13.1 instead. | ||
|
Comment on lines
+127
to
128
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win 🧩 Analysis chain🏁 Script executed: docker run --rm --entrypoint /bin/bash nvcr.io/nvidia/pytorch:26.07-py3 \
-lc 'set -eu; readlink -f /usr/local/cuda; test -d /usr/local/cuda-13.1'Repository: NVIDIA-NeMo/nemo-platform Length of output: 207 🏁 Script executed: #!/bin/bash
set -eu
printf '%s\n' '--- Dockerfile context ---'
sed -n '1,180p' docker/Dockerfile.nmp-unsloth-training
printf '%s\n' '--- relevant repository references ---'
rg -n --hidden -S 'cuda-13\.1|/usr/local/cuda|nvcr\.io/nvidia/pytorch:26\.07-py3|Flash Attention' \
-g '!node_modules' -g '!dist' -g '!build' .Repository: NVIDIA-NeMo/nemo-platform Length of output: 11093 🌐 Web query:
💡 Result: The NVIDIA PyTorch container nvcr.io/nvidia/pytorch:26.07-py3 is based on NVIDIA CUDA 13.3.1, not CUDA 13.1 [1]. In NVIDIA NGC PyTorch containers, the CUDA Toolkit is typically not installed as a standalone package in the traditional /usr/local/cuda-xx.x directory found in full SDK installations [2][3]. Instead, the necessary CUDA libraries (such as cuBLAS, cuDNN, and NCCL) are pre-installed and configured within the container's environment to allow PyTorch to utilize GPU acceleration immediately without requiring additional toolkit installation or path configuration [2][3]. If you need to locate specific CUDA-related binaries or libraries within the container, they are generally found in standard system library paths (e.g., /usr/local/lib) or environment-specific locations managed by the container's Python environment [1][4]. Official NVIDIA documentation advises that no additional installation or dependency management is required for these containers [2][3]. Citations:
Use the toolkit provided by the base image. Do not hard-code 🤖 Prompt for AI Agents |
||
| # Cap parallel nvcc/ninja work — default uses all CPUs and OOMs typical build hosts. | ||
| # Put flash attention back in when we have a working wheel in a separate image. | ||
|
|
@@ -182,7 +182,7 @@ RUN --mount=type=cache,target=/root/.cache/uv \ | |
| "soupsieve>=2.8.4,<3" \ | ||
| "mlflow-skinny>=3.11.1,<3.12.0" | ||
|
|
||
| # Stale NGC system site-packages (verified on nvcr.io/nvidia/pytorch:26.05-py3). | ||
| # Stale NGC system site-packages inherited from the PyTorch base. | ||
| RUN apt-get update && \ | ||
| DEBIAN_FRONTEND=noninteractive apt-get install -y --only-upgrade openssl libssl3t64 && \ | ||
| rm -rf /var/lib/apt/lists/* | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
rg -n '26\.02|CUDA 13\.1|cuda-13\.1' \ docker/Dockerfile.nmp-unsloth-training \ docker/unsloth/README.mdRepository: NVIDIA-NeMo/nemo-platform
Length of output: 1000
🏁 Script executed:
Repository: NVIDIA-NeMo/nemo-platform
Length of output: 12868
Update the Unsloth compatibility documentation.
docker/unsloth/README.mdstill documents NGC 26.02/CUDA 13.1 andcu13.1.1wheels. Update its build steps, prerequisites, gotchas, architecture notes, and wheel-selection guidance for the Dockerfile’s NGC 26.07 base andcu13.2wheels.🤖 Prompt for AI Agents