如何在无NVIDIA环境下直接安装Torch以缩减Docker镜像体积
直接安装不带NVIDIA组件的PyTorch以缩减Docker镜像体积
要避免安装PyTorch的NVIDIA相关组件(节省镜像体积、下载时间和带宽),直接安装CPU-only版本的PyTorch即可,无需先安装再卸载NVIDIA依赖。
最简Dockerfile示例
FROM python:3.12.5 RUN pip install torch --index-url https://download.pytorch.org/whl/cpu
效果对比
- 基础镜像
python:3.12.5:1.02GB - 安装默认PyTorch后:8.98GB
- 安装CPU-only版PyTorch后:约2.2GB(具体数值随PyTorch版本略有波动)
原理说明
默认情况下,pip install torch 会下载带有CUDA支持的PyTorch包,该包依赖大量NVIDIA相关组件(如nvidia-cudnn-cu12、nvidia-cublas-cu12等),这些组件是GPU加速所需,但对纯CPU场景完全无用。
通过指定--index-url https://download.pytorch.org/whl/cpu,pip会从PyTorch的CPU专属包仓库拉取仅支持CPU的版本,该版本不包含任何NVIDIA相关依赖,仅安装PyTorch运行所需的核心依赖(如sympy、networkx、jinja2等)。
额外说明
- 如果需要指定PyTorch版本,直接在命令后添加版本号即可:
pip install torch==2.1.0 --index-url https://download.pytorch.org/whl/cpu - 此方法无需手动维护依赖列表,所有必要的传递依赖会被自动安装,且不会随PyTorch版本变动而需要手动调整。
内容的提问来源于stack exchange,提问作者Tobias Hermann
相关产品推荐
相关产品推荐

