2025年最新 PyTorch 与 PyTorch3D 安装指南 (官方推荐与最佳实践)
随着 PyTorch 官方正式宣布弃用其在 Anaconda 上的自有频道 (-c pytorch
),整个安装生态迎来了重要变化。本指南将为您提供当前最稳定、最高效的安装方法。
核心原则:理解变化
- 首选
pip
:对于获取官方最新、最稳定的 PyTorch 版本,pip
已成为无可争议的首选。 - Conda 用于环境,
conda-forge
用于包:Conda/Mamba 依然是管理复杂依赖和虚拟环境的最佳工具。但在安装 PyTorch 时,应依赖社区维护的conda-forge
频道。 - 告别
-c pytorch
:除非有特殊需求要安装非常旧的版本,否则请彻底忘记这个已弃用的官方频道。
第一部分:安装 PyTorch (二选一)
在安装任何东西之前,请务必创建并激活一个干净的虚拟环境。这是保证项目隔离和避免依赖冲突的最佳实践。
# 推荐:使用 Mamba/Conda 创建环境 (环境管理能力更强)
<NolebasePageProperties />
mamba create -n torch_env python=3.10
conda activate torch_env
方法一:使用 pip
(官方金标准)
这是最直接、最受官方支持的方法,能确保您安装到最新的官方编译版本。
- 访问 PyTorch 官网:打开 PyTorch 安装页面。
- 通过图形界面选择您的配置:
- PyTorch Build: Stable (稳定版)
- Your OS: Windows, Linux, or macOS
- Package: Pip
- Language: Python
- Compute Platform: 通过在终端运行
nvidia-smi
命令查看您的 CUDA 版本,然后选择对应的选项(如 CUDA 12.1 或 11.8)。如果没有 NVIDIA GPU,请选择 CPU。
- 复制并运行生成的命令。
示例命令 (适用于 CUDA 12.1):
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
- 说明:
--index-url
参数会直接指向 PyTorch 官方的软件包索引,确保了来源的权威性和兼容性。
方法二:使用 conda-forge
(Conda 生态首选)
如果您深度依赖 Conda 环境来管理所有包(包括 C++ 库和 CUDA 工具链),conda-forge
是当前正确的选择。推荐使用 mamba
,它的依赖解析速度远超 conda
。
# 激活您的环境
conda activate torch_env
# 推荐使用 mamba 从 conda-forge 频道安装 (以 CUDA 12.1 为例)
mamba install pytorch torchvision torchaudio pytorch-cuda=12.1 -c conda-forge -c nvidia
- 说明:
-c conda-forge
:指定从conda-forge
频道获取 PyTorch 主包。-c nvidia
:指定从nvidia
频道获取 CUDA 相关的底层库。pytorch-cuda=12.1
:这是一个元数据包,用于锁定环境所依赖的 CUDA 版本,确保兼容性。
第二部分:安装 PyTorch3D
前提: 必须确保您已经通过上述方法之一成功安装了兼容的 PyTorch 版本。
方法一:pip
安装预编译包 (最简单、成功率最高)
PyTorch3D 官方为绝大多数主流环境组合提供了预编译的 wheel
文件,可以避免本地编译的各种麻烦。
安装核心依赖:
bashpip install fvcore iopath
运行官方脚本自动安装: 这段 Python 代码会自动检测您的环境(PyTorch, Python, CUDA 版本),并下载对应的 PyTorch3D 包。
bash# 在您的终端中直接运行 pip install ... # 注意:请将 cu121 和 py310 替换为您的 CUDA 和 Python 版本 # 例如:CUDA 11.8, Python 3.9 -> cu118, py39 pip install pytorch3d -f https://dl.fbaipublicfiles.com/pytorch3d/packaging/wheels/py310_cu121_pyt2.3.0/download.html
- 小技巧:访问
https://dl.fbaipublicfiles.com/pytorch3d/packaging/wheels/
目录,可以手动查找适合您环境的 wheel 链接。
- 小技巧:访问
方法二:从源码编译 (当预编译包不可用时)
如果找不到适合您环境的预编译包,或者您需要最新的功能,从源码编译是最佳选择。
# 直接从 GitHub 安装最新的稳定版
pip install "git+https://github.com/facebookresearch/pytorch3d.git@stable"
最终方案:一键式环境创建与安装命令
对于追求效率的用户,可以使用 mamba
的强大能力,在创建环境的同时解析并安装所有依赖。这是管理复杂项目的最佳实践。
在运行前:请通过 nvidia-smi
确认您的 CUDA Driver Version,并选择一个兼容的 CUDA Toolkit 版本(通常比驱动版本低,例如驱动为 535.xx 可支持 12.1)。
一键安装命令 (GPU 版本)
下面的命令将创建一个名为 p3d_env
的新环境,使用 Python 3.10,并安装与 CUDA 12.1 兼容的 PyTorch, PyTorch3D 及其所有依赖。
# 将 pytorch-cuda=12.1 中的版本号替换为您需要的版本
mamba create -n p3d_env python=3.10 pytorch torchvision torchaudio pytorch-cuda=12.1 pytorch3d fvcore iopath -c pytorch3d -c conda-forge -c nvidia
- 命令解析:
mamba create -n p3d_env ...
: 创建一个新环境并安装所有列出的包。python=3.10
: 固定 Python 版本,保证环境可复现。pytorch-cuda=12.1
: 指定 CUDA 版本。-c pytorch3d -c conda-forge -c nvidia
: 指定频道的优先级。Mamba 会优先从pytorch3d
官方频道寻找包,然后是conda-forge
,最后是nvidia
。这确保了每个包都从最合适的来源获取。
一键安装命令 (CPU 版本)
如果您没有 NVIDIA GPU,可以使用以下命令:
mamba create -n p3d_env_cpu python=3.10 pytorch-cpu torchvision-cpu torchaudio-cpu pytorch3d fvcore iopath -c pytorch3d -c conda-forge
- 注意:
pytorch-cpu
等包明确指定了 CPU 版本,避免了下载不必要的 CUDA 库。
安装完成后,激活环境即可开始使用:
conda activate p3d_env
# 或者 conda activate p3d_env_cpu