安装torch2trt中遇到的报错:ModuleNotFoundError: No module named 'torch2trt.flattener'
这一个报错折腾了一整天,在这里记录一下方便他人可以快速解决问题:
首先说明一下本人的版本情况:
Linux系统
CUDA:11.8
Python:3.8
torch:2.0.0
torchvision:0.15.0
代码中报错的位置是:from torch2trt import torch2trt
报错的原因是:ModuleNotFoundError: No module named 'torch2trt.flattener'
本人解决步骤:
1.安装torchtrt:
第一步:git clone https://github.com/NVIDIA-AI-IOT/torch2trt
第二步:cd torch2trt
第三步:python setup.py install
2.将torch2trt添加到环境变量中:
第一步:pip show torch2trt 获得路径
第二步:(1)export PYTHONPATH=$PYTHONPATH: /home/hanzz/miniconda3/envs/pytorch/lib/python3.8/site-packages/torch2trt-0.4.0-py3.8.egg
(2)source ~/.bashrc
第三步:这时会进入bash环境,再通过(conda activate 环境名)重新进入项目的环境即可
第四步:检查是否完成添加,命令行输入 python -c "import sys; print(sys.path)" ,如果 torch2trt 路径在显示的路径里就成功了
3.如果遇到需要安装tensorrt,命令为:pip install nvidia-tensorrt 或者是 pip install tensorrt(我是nvidia-tensorrt和tensorrt这两个都直接通过命令行安装了)
4.如果在完成以上步骤后,运行代码还是报错,建议重新打开文件和环境,再次重新运行
最后给出我的torch2trt和tensorrt的版本:
torch2trt:0.4.0
tensorrt:8.6.1.post1
nvidia-tensorrt:99.0.0
祝大家快速解决问题!!!

浙公网安备 33010602011771号