FIX_DEPENDENCIES.md 2.6 KB

修复 PyTorch 版本依赖冲突

问题描述

安装 torch-tensorrt 时,torch 被升级到 2.9.1,但 torchaudiotorchvision 仍需要 2.5.1+cu121,导致版本冲突。

解决方案

方案 1:重新安装匹配的版本(推荐)

# 1. 卸载所有冲突的包
pip uninstall -y torch torchvision torchaudio torch-tensorrt

# 2. 安装匹配的 PyTorch 版本(CUDA 12.1)
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

# 3. 安装 torch-tensorrt(会自动匹配 PyTorch 版本)
pip install torch-tensorrt

方案 2:使用批处理脚本(Windows)

直接运行:

fix_torch_dependencies.bat

方案 3:只安装 TensorRT(不安装 torch-tensorrt)

如果 torch-tensorrt 安装有问题,可以只安装 TensorRT 核心库:

# 卸载 torch-tensorrt
pip uninstall -y torch-tensorrt

# 只安装 TensorRT(用于 ONNX → TensorRT 方案)
pip install nvidia-tensorrt

然后使用 convert_to_tensorrt.py 脚本(ONNX 转换方案)。

验证安装

运行以下命令验证:

python -c "import torch; print(f'PyTorch: {torch.__version__}')"
python -c "import torchvision; print(f'TorchVision: {torchvision.__version__}')"
python -c "import torchaudio; print(f'TorchAudio: {torchaudio.__version__}')"
python -c "import torch_tensorrt; print('Torch-TensorRT: OK')"

所有版本应该匹配,且没有错误。

如果仍有问题

检查 CUDA 版本

nvidia-smi

确保 PyTorch 的 CUDA 版本与系统 CUDA 版本匹配。

清理并重新安装

# 完全清理
pip uninstall -y torch torchvision torchaudio torch-tensorrt tensorrt

# 重新安装
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
pip install torch-tensorrt

使用 conda(如果使用 conda 环境)

conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
pip install torch-tensorrt

注意事项

  1. 版本匹配很重要torchtorchvisiontorchaudio 必须版本匹配
  2. CUDA 版本:确保 PyTorch 的 CUDA 版本与系统 CUDA 版本匹配
  3. torch-tensorrt 版本:应该自动匹配 PyTorch 版本,如果不匹配需要手动指定

替代方案

如果 torch-tensorrt 安装一直有问题,可以使用:

  1. ONNX → TensorRT 方案(更稳定)

    • 只需要 nvidia-tensorrt
    • 不需要 torch-tensorrt
    • 使用 convert_to_tensorrt.py 脚本
  2. 只使用 PyTorch FP16(当前方案)

    • 已经达到 22 FPS
    • 不需要额外安装