【问题标题】:Conda - ModuleNotFoundError: No module named 'torch'Conda - ModuleNotFoundError:没有名为“火炬”的模块
【发布时间】:2021-06-08 10:58:06
【问题描述】:

重现步骤:

我在 Windows 上使用 Anaconda 来设置这个 repo 的环境。

conda create --name pytorch-yolo

然后我用conda install --file requirements.txt安装所有依赖项

返回

PackagesNotFoundError: The following packages are not available from current channels:
- torch[version='>=1.2']

所以我用conda install pytorch torchvision cudatoolkit=10.2 -c pytorch安装pytorch

当我尝试从以下 repo 评估模型时:https://github.com/eriklindernoren/PyTorch-YOLOv3python3 test.py --weights_path weights/yolov3.weights 在 conda 环境中,它返回以下错误 ModuleNotFoundError: No module named 'torch'

如果我运行 Jupyter 实验室或笔记本,或者甚至在 conda 终端中使用 python,torch 很容易导入。

我已经尝试过的:

这个帖子的几乎所有内容:No module named "Torch"

具体来说,创建一个新的 conda 环境,将 python 设置为 3.8.2,将 torch 安装到基础,然后安装到环境。

我也在使用 pyenv 将全局 python 设置为 3.8.2,但这根本没有帮助。

conda list 表示我安装了 pytorch

无法解决这个问题。

【问题讨论】:

    标签: python anaconda pytorch conda


    【解决方案1】:

    您可能使用了错误的 python 二进制文件。可以试试python test.py --weights_path weights/yolov3.weights吗?

    我不熟悉 Windows 终端,但您可以使用where 命令(Linux 为which)获取二进制文件的路径:

    (pytorch-yolo) C:\Users\RemiChauvenne>where python3
    C:\Users\RemiChauvenne\AppData\Local\Microsoft\WindowsApps\python3.exe
    
    (pytorch-yolo) C:\Users\RemiChauvenne>where python
    C:\Users\RemiChauvenne\miniconda3\envs\pytorch-yolo\python.exe
    C:\Users\RemiChauvenne\AppData\Local\Microsoft\WindowsApps\python.exe
    

    我们可以看到python3 没有进入conda 环境中的python 二进制文件,而python 正确链接到pytorch-yolo。

    【讨论】:

    • 哇,这很明显,但我花了很多时间在别处寻找答案。谢谢你。是的,我真的应该切换到 Linux 了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-06
    • 2021-08-26
    • 2019-11-23
    • 1970-01-01
    • 2020-09-26
    • 2023-02-17
    • 2021-09-22
    相关资源
    最近更新 更多