Appearance
环境搭建:安装与验证
本章所有命令标注了执行环境。教程基于 Python 3.10 ~ 3.12 + PyTorch 2.x。强烈建议使用虚拟环境——深度学习项目依赖复杂,混在全局 Python 里迟早互相污染。
第一步:创建虚拟环境
任选其一。conda 方案(推荐装过 Anaconda/Miniconda 的用户):
powershell
# 终端(PowerShell 或 CMD 均可)
conda create -n torch python=3.12 -y
conda activate torchvenv 方案(只有纯 Python 的用户,Python 3.4+ 自带 venv):
powershell
# Windows PowerShell
python -m venv .venv
.\.venv\Scripts\Activate.ps1bash
# macOS / Linux 终端
python3 -m venv .venv
source .venv/bin/activate激活成功的标志:提示符前出现
(torch)或(.venv)。此后所有 pip/python 命令都在这个隔离环境里执行。为什么这么做:PyTorch、CUDA 驱动、torchvision 之间有严格的版本搭配关系,虚拟环境让你可以随时推倒重来而不污染系统。
第二步:安装 PyTorch
先确认你的硬件,不同硬件装法完全不同(这是新手装不上的第一原因——默认 pip install torch 在 Windows 上装的是 CPU 版):
| 硬件 | 安装命令 |
|---|---|
| NVIDIA GPU(Windows/Linux) | 见下方 CUDA 安装 |
| Apple Silicon(M1/M2/M3/M4) | pip install torch torchvision(默认包内置 MPS 加速) |
| 无独显 / Intel 显卡 / AMD 显卡* | pip install torch torchvision(CPU 版) |
* AMD 显卡在 Windows 上有 ROCm 预览支持、Linux 上有成熟方案,但安装路径特殊,本教程不展开;AMD 用户可先用 CPU 版完成学习。
NVIDIA GPU 用户:先查驱动支持的最高 CUDA 版本
powershell
# 终端(PowerShell / CMD)
nvidia-smi输出右上角的 CUDA Version: 12.4 这类数字是驱动支持的上限,不是已安装的 CUDA Toolkit 版本。安装命令里的 cu121/cu124 必须 ≤ 这个数字(PyTorch 自带所需 CUDA 运行时,不需要单独安装 CUDA Toolkit)。
powershell
# 以 CUDA 12.1 为例(绝大多数近 3 年的 N 卡都兼容):
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu121国内网络下载慢/超时的,加清华镜像(CPU 版):
powershell
pip install torch torchvision -i https://pypi.tuna.tsinghua.edu.cn/simple版本对应关系提醒
- PyTorch 2.x 各小版本 API 高度兼容,本教程代码 2.1 ~ 2.x 均可运行。
torch与torchvision版本必须配套(如 2.5 ↔ 0.20),同一条 pip 命令安装会自动配对,不要分别pip install两次旧版本。- 老项目锁定过
torch==1.x的话,注意 1.x → 2.x 有些 API 移除(如torch.load的weights_only默认值变化,2.6 起加载本地可信模型文件建议显式传参,FAQ 有详述)。
第三步:验证安装
python
# 终端执行(一行):
python -c "import torch; import torchvision; print('torch:', torch.__version__); print('cuda可用:', torch.cuda.is_available()); print('mps可用:', torch.backends.mps.is_available())"预期输出(版本号会有差异):
text
torch: 2.5.1+cu121
cuda可用: True
mps可用: False判断标准:
cuda可用: True→ GPU 版安装成功,可以开始 GPU 训练。- 有 N 卡但显示
False→ 装成了 CPU 版,或驱动太旧。重跑nvidia-smi确认驱动正常,再按上表重装对应 CUDA 版本的 wheel。 - Mac 用户看
mps可用: True即为正常(Apple Silicon 加速走 MPS 后端,不是 CUDA)。
再跑一个真实张量运算确认 GPU 真的能算:
python
import torch
device = torch.device("cuda" if torch.cuda.is_available() else
"mps" if torch.backends.mps.is_available() else "cpu")
print(f"使用设备: {device}")
x = torch.rand(1000, 1000, device=device)
y = x @ x # 1000x1000 矩阵乘
print("运算成功:", y.shape, y.device)本教程后续统一使用
device三选一写法:cuda(NVIDIA)、mps(Apple)、cpu(兜底)。所有.to(device)的代码在纯 CPU 环境同样能跑通,没有 GPU 不影响学习。
常见问题
Q:pip install 报 No matching distribution found? 检查 Python 版本(python --version)是否过新或过旧,PyTorch 官方 wheel 对 Python 版本有支持窗口(当前 3.9~3.12 最稳)。
Q:Windows 上 nvidia-smi 不是内部或外部命令? 驱动未装或未加入 PATH。去 NVIDIA 官网装最新 Game Ready/Studio 驱动后重试。
Q:conda activate 报错? 新版 conda 需要先初始化 shell:conda init powershell,重开终端后再 activate。
Q:Colab / 实验室服务器已有环境,还要装吗? 不用,跳过本章,直接看最小可运行示例。
环境就绪,下一步跑通你的第一个 PyTorch 程序。