从零到一,装好 Python 和 PyTorch,GPU 跑通深度学习代码
Python 深度学习环境搭建
从零到一,装好 Python 和 PyTorch,GPU 跑通深度学习代码
适用平台:macOS / Windows / Linux
前置条件:
- NVIDIA GPU(Windows/Linux)或 Apple Silicon Mac(macOS)
- 没有 GPU 也能走通,但用 CPU 训练较慢
写在前面
分享下自己的Github开源项目,换电脑 → 搭环境 → 写代码。一个仓库就够了。
每次换系统都要重搜一遍"怎么装 Python"“怎么配 CUDA”“怎么跑 Docker”?
dev-notes 把完整搭建链路整理好了,从零到一,一条龙走到底。
项目地址:https://github.com/Step3N/dev-notes
Step 1: 安装 Miniconda
macOS请先安装包管理工具Homebrew,安装参考笔记:新机配置/macOS
# macOS
brew install --cask miniconda
# Linux
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh
# 按提示完成,最后选择 yes 运行 conda init
# Windows — 从 https://docs.anaconda.com/miniconda/ 下载 exe 安装
初始化 conda(如果安装时未自动执行):
conda init "$(basename "$SHELL")"
重启终端后验证:
conda --version
Step 2: 检查 GPU 并安装 CUDA
⚠️ macOS 用户请跳过此步。Apple Silicon 不支持 CUDA,PyTorch 会使用 MPS 加速(Step 5 验证)
检查 NVIDIA 驱动和 CUDA 版本:
nvidia-smi
输出示例:
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 545.23.08 Driver Version: 545.23.08 CUDA Version: 12.3 |
+---------------------------------------------------------------------------------------+
关键信息:CUDA Version。如果 >= 12.x,驱动已满足需求,只需安装 CUDA Toolkit。
如果 nvidia-smi: command not found → 先装 NVIDIA 驱动。
如果 CUDA Version 偏低(< 11.8)→ 升级驱动。
安装 CUDA Toolkit
# 访问 https://developer.nvidia.com/cuda-downloads 选择系统版本
# 以下以 Ubuntu 22.04 + CUDA 12.4 为例:
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt update
sudo apt install cuda-toolkit-12-4 -y
# Windows — 从 https://developer.nvidia.com/cuda-downloads 下载 exe
# 选择对应版本,默认安装即可
验证:
nvcc --version
# 输出: Cuda compilation tools, release 12.4, V12.4.xxx
Step 3: 创建 conda 环境并配置 pip 源
创建专门用于深度学习的 conda 环境,并配置国内镜像源加速下载。
conda create -n dl python=3.12 -y
conda activate dl
验证:
python --version # 预期: Python 3.12.x
which python # 预期路径应在 miniconda3/envs/dl/bin
为什么用 conda 环境?
- 隔离依赖:不同项目可以用不同 Python / 包版本
- 深度学习包经常依赖特定版本,conda 能自动管理
- 切换项目时
conda deactivate再conda activate <新环境>即可
激活环境后配置 pip 清华源,后续所有 pip install 都会走国内镜像:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
pip config list # 验证
Step 4: 安装 PyTorch
去 pytorch.org 获取最新安装命令,或从下方选择。
CUDA 12.x(推荐):
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
CUDA 11.8:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
CPU only / Apple Silicon MPS:
pip install torch torchvision torchaudio
Step 5: 验证 GPU 可用
python -c "
import torch
print(f'PyTorch: {torch.__version__}')
print(f'CUDA: {torch.cuda.is_available()}')
if torch.cuda.is_available():
print(f'GPU: {torch.cuda.get_device_name(0)}')
x = torch.rand(3, 3).cuda()
print(f'Tensor on GPU: {x}')
print(f'MPS: {torch.backends.mps.is_available()}')
"
预期输出(NVIDIA GPU):
PyTorch: 2.4.0
CUDA: True
GPU: NVIDIA GeForce RTX 4090
Tensor on GPU: tensor([[0.123, 0.456, 0.789], ...], device='cuda:0')
MPS: False
预期输出(Apple Silicon Mac):
PyTorch: 2.4.0
CUDA: False
MPS: True
如果 CUDA: False 且你有 NVIDIA GPU → 看下方常见问题。
Step 6: 安装常用深度学习包
pip install torch torchvision torchaudio # 如 Step 6 已装可跳过
pip install transformers datasets # HuggingFace 生态
pip install tensorboard # 训练可视化
pip install jupyter scikit-learn matplotlib # 数据处理与探索
pip install accelerate # 分布式训练工具
pip install einops # 张量运算语法糖
批量验证:
python -c "
import transformers, datasets, tensorboard, sklearn, accelerate
print('All packages imported successfully')
"
最终验证:跑一个完整的训练测试
保存为 test_dl.py:
import torch
import torch.nn as nn
device = torch.device(
'cuda' if torch.cuda.is_available()
else 'mps' if torch.backends.mps.is_available()
else 'cpu'
)
print(f'Using: {device}')
model = nn.Sequential(
nn.Linear(784, 256),
nn.ReLU(),
nn.Linear(256, 10),
).to(device)
x = torch.randn(64, 784).to(device)
y = model(x)
print(f'Forward pass: {y.shape}') # Expected: torch.Size([64, 10])
loss_fn = nn.CrossEntropyLoss()
target = torch.randint(0, 10, (64,)).to(device)
loss = loss_fn(y, target)
loss.backward()
print(f'Loss: {loss.item():.4f}')
print('✅ 深度学习环境搭建成功!')
运行:
python test_dl.py
预期输出(任意平台):
Using: cuda (或 mps / cpu)
Forward pass: torch.Size([64, 10])
Loss: 2.30xx
✅ 深度学习环境搭建成功!
常见问题
| 问题 | 原因 | 解决 |
|---|---|---|
torch.cuda.is_available() 返回 False |
装了 CPU 版 PyTorch | pip uninstall torch torchvision torchaudio,重新安装 CUDA 版 |
nvidia-smi: command not found |
未装 NVIDIA 驱动 | 去 nvidia.com/drivers 下载对应驱动 |
| 安装 PyTorch 下载慢 | 未配置镜像 / 用了 conda 默认源 | pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple |
| conda 环境占用空间大(~3GB) | conda 包含大量预编译包 | 改用 micromamba 或 pip + venv |
| macOS 训练速度慢 | 无独立 GPU | 使用 MPS 加速;或使用云 GPU(Colab、AutoDL) |
CUDA driver version is insufficient |
驱动版本低于 PyTorch 要求 | 升级驱动,或安装低 CUDA 版 PyTorch |
更多推荐



所有评论(0)