为什么在 Python conda 环境下 pip 安装后却找不到模块 'ultralytics'?

问题描述 投票:0回答:4

在Python 3.8.15的conda环境中我做了

pip install ultralytics

安装成功...,ultralytics-8.0.4

但是运行时

from ultralytics import YOLO
,它说

ModuleNotFoundError:没有名为“ultralytics”的模块

python pip conda yolo modulenotfounderror
4个回答
2
投票

您使用的是 Jupyter 笔记本吗?如果是这样,jupyter 可能没有使用正确的 python 解释器。或者您使用的是安装在系统上的 jupyter,而不是安装在 conda 环境中的 jupyter。

要检查哪个 python jupyter 在单元格上使用此代码:

import sys
print(sys.executable)

列出所有已安装的可用 python 解释器。使用这个命令:

!which -a python

conda环境中的python应该位于这样的路径上:

~/.conda/envs/{myenv}/bin/python

要在 conda 环境中使用正确的解释器,您需要在 conda 环境中使用单独的 jupyter 安装。请参阅此答案:如何在 conda 环境中使用 Jupyter 笔记本?


1
投票

我使用 Colab 运行。 首先,我使用 pip 命令安装 Ultralytics

!pip install ultralytics

然后

from ultralytics import YOLO

并且成功了。


1
投票

您可以在笔记本内的单元中使用 magic

%pip install
,以确保安装发生在 Jupyter 笔记本内核正在使用的环境中。米哈埃尔的回答指出了真正确定如何处理这个问题并完全控制事情的彻底方法。然而,在尝试克服障碍时,有方便、快捷的替代方案是件好事。

对于那些在任何地方使用实际 Jupyter(不是 Google Colab)的人,安装命令是:

%pip install ultralytics

确保安装过程完全取决于您的系统和网络,这可能需要一些时间。 接下来,运行任何 magic install 命令后,您将看到一条重新启动内核的消息,并且最好在尝试 import 语句之前执行此操作。 最后,重新启动内核后,您可以运行 suggest import after of

from ultralytics import YOLO
希望现在不会遇到
ModuleNotFoundError: No module named 'ultralytics'

添加了 magic 命令以确保在找到支持笔记本的内核的环境中进行安装。有关 Jupyter 中现代魔法安装命令的更多信息,请参阅here。 (对于那些使用 conda/Anaconda/mamba 作为主要包管理器的人来说,当包具有 conda 安装配方时,有一个相关的

%conda install
变体,也可以确保安装到内核正在使用的正确环境中。)

请参阅 JATIN 的回答 如果您此时正在使用 Google Colab。因为我不相信 Google Colab 有魔力

pip install 
,遗憾的是他们没有跟上当前 Jupyter 的能力。

由于添加了 magic 命令,感叹号与

pip install
结合使用对于典型的 Jupyter 来说已经过时了。有时,感叹号不能确保安装发生在内核运行的同一环境中,可能会导致问题/混乱,因此几年前添加了 magic 命令以使安装更加方便。有关此特定任务的感叹号变体的缺点的更多信息,请参阅第一句here

事实上,现在在普通 Jupyter 笔记本中运行此类命令时,没有什么符号比

pip install
conda install
前面的感叹号更好了。现在没有比感叹号更好的符号了,因为大多数 Jupyter 安装默认启用了 automagics。因此,如果没有该符号,魔术命令变体将在幕后使用。通常,最好是明确地使用魔法符号,但您可能看不到任何符号起作用或被建议并想知道发生了什么。


0
投票

我遇到了同样的问题

Yolov5
,我重新安装了它并工作了。

pip install -r requirements.txt 
© www.soinside.com 2019 - 2024. All rights reserved.