Ubuntu上如何管理PyTorch依赖项
导读:Ubuntu 上管理 PyTorch 依赖项的实用指南 一 环境隔离与基础准备 建议使用 Python 3.8+,并用虚拟环境隔离依赖: venv:sudo apt update && sudo apt install...
Ubuntu 上管理 PyTorch 依赖项的实用指南
一 环境隔离与基础准备
- 建议使用 Python 3.8+,并用虚拟环境隔离依赖:
- venv:
sudo apt update & & sudo apt install -y python3 python3-pip python3-venv python3 -m venv ~/venvs/pt310 source ~/venvs/pt310/bin/activate pip install -U pip - conda:
conda create -n pt310 python=3.10 -y conda activate pt310
- venv:
- 系统级依赖(编译/多媒体/线性代数常用库):
sudo apt update sudo apt install -y build-essential cmake git wget unzip yasm pkg-config \ libopenblas-dev liblapack-dev libjpeg-dev libpng-dev libtiff-dev \ libavcodec-dev libavformat-dev libswscale-dev python3-dev - 版本核对:
python --version pip --version
二 安装与选择 PyTorch 版本
- 选择策略:优先使用 pip 官方预编译包(含所需 CUDA 运行时),GPU 场景需确保 NVIDIA 驱动与所选 CUDA 版本兼容;CPU 场景直接安装 CPU 版即可。
- 常用安装命令(示例):
- CPU 版(Ubuntu 22.04/24.04 通用):
pip install torch==2.6.0 torchvision==0.17.0 torchaudio==2.6.0 --index-url https://download.pytorch.org/whl/cpu - GPU 版(CUDA 12.6,Ubuntu 22.04/24.04 常见):
pip install torch==2.6.0+cu126 torchvision==0.17.0+cu126 torchaudio==2.6.0+cu126 --index-url https://download.pytorch.org/whl/cu126 - GPU 版(CUDA 12.1,历史版本常见):
pip install torch==2.1.0+cu121 torchvision==0.16.0+cu121 torchaudio==2.1.0+cu121 --index-url https://download.pytorch.org/whl/cu121 - conda 方式(CPU):
conda install pytorch torchvision torchaudio cpuonly -c pytorch - conda 方式(GPU,指定 cudatoolkit):
conda install pytorch torchvision torchaudio cudatoolkit=11.8 -c pytorch -c nvidia
- CPU 版(Ubuntu 22.04/24.04 通用):
- 驱动与兼容性提示:
- 使用 GPU 版时,系统需安装与所选 CUDA 匹配的 NVIDIA 驱动;可通过
nvidia-smi查看驱动与 CUDA 运行时信息。 - 若遇到网络波动,可临时使用国内镜像源(如清华)安装其他 Python 包:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包名(PyTorch 官方 whl 建议直连)。 - 验证安装:
python - < < 'PY' import torch, sys print("torch:", torch.__version__, "cuda:", torch.version.cuda, "cudnn:", getattr(torch.backends.cudnn, "version", None)) print("cuda available:", torch.cuda.is_available()) print("device count:", torch.cuda.device_count()) PY
- 使用 GPU 版时,系统需安装与所选 CUDA 匹配的 NVIDIA 驱动;可通过
三 依赖项管理实践
- 使用 requirements.txt(便于复现与团队协作):
安装与升级:# requirements.txt torch==2.6.0+cu126 torchvision==0.17.0+cu126 torchaudio==2.6.0+cu126 numpy> =1.24 pandas> =2.0 scikit-learn matplotlibpip install -r requirements.txt pip install -U -r requirements.txt # 升级 pip check # 检查冲突 - 使用 Poetry(更完善的依赖解析与平台标记):
- 初始化与添加依赖(示例,按平台区分 CPU/GPU):
poetry init -n poetry add torch==2.6.0 --source pytorch-cpu # CPU 源示例 poetry add torchvision==0.17.0 poetry add torchaudio==2.6.0 - 若使用 GPU,可在
pyproject.toml中为不同平台设置源或版本标记(如markers区分x86_64/aarch64/darwin),便于一套配置多环境复用。
- 初始化与添加依赖(示例,按平台区分 CPU/GPU):
- 版本对齐与兼容矩阵:
torch与torchvision/torchaudio需保持小版本一致(如 2.6.x 对应 0.17.x),避免运行时 API 不匹配。- 如需从源码构建或扩展插件,需准备 gcc ≥ 7.3.0、cmake ≥ 3.12.0 等编译工具链。
四 常见问题与排查
- 版本冲突与解析失败:
- 使用独立虚拟环境;用
pip check与pipdeptree定位冲突包;必要时固定次要版本。
- 使用独立虚拟环境;用
- 驱动与 CUDA 不匹配:
nvidia-smi显示的 CUDA Runtime 需与 PyTorch 的 cu126/cu121 等标签匹配;不匹配会导致torch.cuda.is_available()为 False。
- 网络与下载失败:
- 安装 PyTorch 官方 whl 建议直连;其他包可临时使用镜像源(如清华源)提升稳定性。
- 旧版环境迁移:
- 若系统存在多版本 CUDA,优先使用 pip 预编译包(自带所需 CUDA 运行时),避免与系统 CUDA 产生库路径冲突。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu上如何管理PyTorch依赖项
本文地址: https://pptw.com/jishu/753144.html
