feat(base): add slim pytorch image (cuda13.0, py3.13, torch2.11)#7
Merged
feat(base): add slim pytorch image (cuda13.0, py3.13, torch2.11)#7
Conversation
Adds the build scaffolding for the new pytorch base image as a parallel to base/cuda-ml. Defines image-devel, image-devel-local, and image-devel-all targets with VERSION cuda13.0-torch2.11. The Dockerfile and CI integration follow in subsequent tasks.
Devel-only base image: CUDA 13.0.3 cuDNN devel, uv-managed Python 3.13,
venv at /opt/venv. Single uv resolve pins torch 2.11, torchvision 0.26,
torchaudio 2.11, xformers 0.0.35, triton 3.6 against the cu130 wheel
index, with constraints.txt emitted for downstream apps to inherit.
Build-time validation imports torch and xformers without requiring a GPU.
uv binary is pulled from ghcr.io/astral-sh/uv via a named build stage so
${UV_VERSION} can be expanded — Dockerfile syntax does not allow ARG
expansion in COPY --from=<image>:<tag>, only in FROM.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The build-bases (runtime) matrix previously iterated over every changed base directory unconditionally. Devel-only base images (no Dockerfile.runtime) like the new base/pytorch/ would fail at the bake-target lookup step. Add a changed-bases-runtime output to the prepare job that filters changed-bases to those with a Dockerfile.runtime, and switch build-bases to consume that filtered list. Devel-only bases are now skipped at the matrix level rather than failing. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Spec validates 9 requirements (Python 3.13, CUDA 13.0, PyTorch 2.11 cu130, cuDNN, NVRTC, cuSPARSELt, NVSHMEM, uv, devel variant) against the actual nvidia/cuda image and torch wheel METADATA. Plan covers scaffolding, Dockerfile, CI workflow gating, PR submission. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
base/pytorch/slim PyTorch base image: CUDA 13.0.3 + Python 3.13 (uv-managed) + PyTorch 2.11.0+cu130 + xformers + triton + utility deps. Devel-only (deployment target) — noDockerfile.runtime, since downstream apps need nvcc/NVRTC/CUPTI.release.yamlruntime-build matrix onDockerfile.runtimeexistence so devel-only bases don't break the matrix.Test plan
Build Base pytorch (devel)job succeeds and pushesghcr.io/arsac/pytorch:cuda13.0-torch2.11-devel,:devel, plus semver tags.Build Base pytorch(runtime) is skipped (noDockerfile.runtime).import torch; assert torch.version.cuda is not Noneandimport xformers./constraints.txtcontains pinned versions for torch ecosystem andnvidia-*-cu13transitive deps.Spec & plan
docs/superpowers/specs/2026-04-28-pytorch-base-image-design.mddocs/superpowers/plans/2026-04-28-pytorch-base-image.md🤖 Generated with Claude Code