Действия по воспроизведению:
Я использую Anaconda в Windows для настройки среды для этого репо.
conda create --name pytorch-yolo
Затем я устанавливаю все зависимости с помощью conda install --file requirements.txt
Что возвращается
PackagesNotFoundError: The following packages are not available from current channels:
- torch[version='>=1.2']
Поэтому я устанавливаю pytorch с conda install pytorch torchvision cudatoolkit=10.2 -c pytorch
Когда я пытаюсь оценить модель из следующего репо: https://github.com/eriklindernoren/PyTorch-YOLOv3 с python3 test.py --weights_path weights/yolov3.weights
внутри среды conda возвращает следующую ошибку ModuleNotFoundError: No module named 'torch'
Если я запускаю лабораторию или ноутбук Jupyter, или даже использую python внутри терминала conda, torch легко импортируется.
Что я уже пробовал:
Почти все из этого потока: Нет модуля с именем Torch
В частности, создание новой среды conda с python, установленным на 3.8.2, установка torch на базу, а затем в среду.
Я также использую pyenv для установки глобального python на 3.8.2, но это совершенно не помогает.
conda list
показывает, что у меня установлен pytorch
Не могу осмыслить эту проблему.
Вероятно, вы используете неправильный двоичный файл Python. Вы можете попробовать
python test.py --weights_path weights/yolov3.weights
?Я не знаком с терминалом Windows, но вы можете получить путь к двоичным файлам с помощью команды
where
(which
для Linux):Мы видим, что
python3
не переходит в двоичный файл python внутри среды conda, тогда какpython
правильно связан с pytorch-yolo.Вау, это было довольно очевидно, но я потратил так много времени на поиски ответа в другом месте. Спасибо. И да, я действительно должен уже перейти на Linux. — person Nik Ska; 10.03.2021