Debian系统下PyTorch的安装步骤
小樊
40
2025-12-27 00:02:21
Debian 下安装 PyTorch 的标准流程
一 环境准备与基础依赖
- 更新系统并安装基础工具与编译依赖:
- sudo apt update && sudo apt install -y build-essential cmake git python3-dev python3-pip
- 确认 Python 与 pip 版本:
- python3 --version
- pip3 --version
- 升级 pip,避免二进制包安装报错:
- python3 -m pip install --upgrade pip
- 说明:以上为后续安装 PyTorch 与常见深度学习依赖的通用基础环境。
二 创建虚拟环境与安装 PyTorch
- 方式一 使用 venv(系统级 Python)
- 创建并激活虚拟环境:
- python3 -m venv pytorch_env
- source pytorch_env/bin/activate
- 安装 PyTorch(CPU 版):
- pip install torch torchvision torchaudio
- 安装 PyTorch(GPU 版,需已配置好 CUDA/cuDNN,并将 cu118 替换为你的 CUDA 版本号):
- pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu118
- 方式二 使用 conda(Miniconda/Anaconda)
- 创建并激活环境(示例 Python 3.9):
- conda create -n pytorch_env python=3.9
- conda activate pytorch_env
- 安装 PyTorch(CPU 版):
- conda install pytorch torchvision torchaudio cpuonly -c pytorch
- 安装 PyTorch(GPU 版,cudatoolkit 版本与驱动匹配):
- conda install pytorch torchvision torchaudio cudatoolkit=11.8 -c pytorch -c nvidia
- 提示:GPU 版本需提前安装并验证 NVIDIA 驱动、CUDA、cuDNN 的版本匹配,再选择对应的 PyTorch CUDA 轮子或 conda cudatoolkit。
三 GPU 支持与 CUDA 配置
- 安装与匹配版本
- 安装与显卡匹配的 NVIDIA 驱动,再安装 CUDA Toolkit 与对应 cuDNN,确保版本互相兼容。
- 设置环境变量(示例路径,按实际安装路径调整)
- export PATH=/usr/local/cuda/bin:$PATH
- export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
- 验证驱动与 CUDA
- nvidia-smi(查看驱动与 GPU 信息)
- nvcc --version(查看 CUDA 编译器版本)
- 在 PyTorch 中验证
- python3 - <<‘PY’
import torch
print(“torch:”, torch.version)
print(“cuda available:”, torch.cuda.is_available())
if torch.cuda.is_available():
print(“device count:”, torch.cuda.device_count())
print(“current device:”, torch.cuda.current_device())
print(“device name:”, torch.cuda.get_device_name(0))
PY
- 注意:若使用 conda 的 cudatoolkit,通常无需手动设置 CUDA 环境变量;若使用系统 CUDA,上述环境变量是必需的。
四 验证安装与最小示例
- 验证安装
- python3 -c “import torch; print(‘torch:’, torch.version); print(‘cuda:’, torch.cuda.is_available())”
- 最小训练示例(MNIST,CPU/GPU 通用)
- python3 - <<‘PY’
import torch, torch.nn as nn, torch.nn.functional as F
from torch.utils.data import DataLoader
from torchvision import datasets, transforms
transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.5,), (0.5,))])
train_ds = datasets.MNIST(root=‘./data’, train=True, download=True, transform=transform)
train_loader = DataLoader(train_ds, batch_size=64, shuffle=True)
model = nn.Sequential(
nn.Flatten(),
nn.Linear(28*28, 128),
nn.ReLU(),
nn.Linear(128, 10)
)
criterion = nn.CrossEntropyLoss()
optimizer = torch.optim.SGD(model.parameters(), lr=0.01)
model.train()
for epoch in range(2):
for xb, yb in train_loader:
optimizer.zero_grad()
pred = model(xb)
loss = criterion(pred, yb)
loss.backward()
optimizer.step()
print(“训练完成”)
PY
- 运行输出应显示 PyTorch 版本与 CUDA 可用性,并完成少量训练迭代。
五 IDE 配置与常见问题
- IDE 配置
- PyCharm:Settings → Project → Python Interpreter → Add → 选择虚拟环境的解释器路径(如:…/pytorch_env/bin/python)
- VS Code:Ctrl+Shift+P → Python: Select Interpreter → 选择虚拟环境解释器
- 常见问题与建议
- 版本不匹配:驱动、CUDA、cuDNN 与 PyTorch 版本需匹配;不确定时优先用 conda 的 cudatoolkit,或参考 PyTorch 官网命令生成器选择命令。
- 权限与缓存:优先在用户目录安装依赖(pip install --user 或虚拟环境),定期清理缓存(pip cache purge)。
- 国内网络:可使用国内镜像源加速 pip(如 -i https://pypi.tuna.tsinghua.edu.cn/simple),但 GPU 版本建议优先使用官方源或 conda 通道 以确保轮子正确。
- 旧系统/旧驱动:若无法升级驱动或 CUDA,可先使用 CPU 版 进行开发与调试,再在具备 GPU 的环境进行训练。