Linux系统中PyTorch依赖管理
一 基础环境与隔离
python3 -m venv venv && source venv/bin/activatepython -m pip install --upgrade pipconda create -n torch-env python=3.10 -y && conda activate torch-env二 安装方式与版本匹配
pip install torch torchvision torchaudiopip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu118conda install pytorch torchvision torchaudio cpuonly -c pytorchconda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidianvidia-smi 右上角查看驱动支持的最高 CUDA 运行时;nvcc --version 确认当前工具包版本;三 依赖文件与锁定
pip freeze > requirements.txtpip install -r requirements.txtpip install pip-toolsrequirements.in(仅直接依赖)→ 生成锁定文件:pip-compile requirements.inpip-sync requirements.txt四 冲突排查与修复
ImportError: libcudart.so.xx 找不到、CUDA 初始化失败、torch.cuda.is_available() 为 False。python -c "import torch; print(torch.__version__)" 正常;python -c "import torch; print('CUDA:', torch.cuda.is_available())";nvidia-smi(驱动支持的最高 CUDA 运行时)nvcc --version(当前工具包版本)pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 --extra-index-url https://download.pytorch.org/whl/cu117;libopenblas-dev、libjpeg-dev 等基础库缺失导致编译/运行失败,按发行版安装;nvcc 指向旧版本,使用软链或 update-alternatives 管理多版本 CUDA。五 生产可复制实践
FROM python:3.10-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
CMD ["gunicorn", "app:app", "-b", "0.0.0.0:5000"]
docker run --gpus all -p 5000:5000 my-pytorch-apptorch.cuda.is_available() 与最小推理/训练冒烟测试,确保可复现部署。