Параметр pipenv для имитации параметра pip -f

В pip есть опция -f, которая делает следующее:

-f, --find-links: если URL-адрес или путь к файлу html, то выполнить синтаксический анализ на наличие ссылок на архивы. Если это локальный путь или file:// URL, это каталог, тогда поищите архивы в списке каталогов.

Это предпочтительный способ установки PyTorch, установив ссылку на их обзорный веб-сайт, например:

pip3 install torch===1.3.0 -f https://download.pytorch.org/whl/torch_stable.html

В своих виртуальных средах я использую pipenv, но я не нашел варианта, который работал бы так же, как -f. А пока я могу просто найти прямую ссылку на пакет, который имеет отношение к моей системе, но это обременительно.

Предоставляет ли pipenv способ делать то же самое, что и -f pip?


person Bram Vanroy    schedule 25.08.2019    source источник


Ответы (3)


В новой версии pipenv (я тестировал с версией 2020.11.15) вы можете устанавливать пакеты следующим образом:

pipenv install https://download.pytorch.org/whl/cpu/torch-1.3.0%2Bcpu-cp36-cp36m-linux_x86_64.whl

Ссылку можно найти на этой странице: https://download.pytorch.org/whl/torch_stable.html

Это также будет добавлено в Pipfile.

[packages]
torch = {file = "https://download.pytorch.org/whl/cpu/torch-1.3.0%2Bcpu-cp36-cp36m-linux_x86_64.whl"}

вам необходимо вручную проверить ссылку с вашей вычислительной платформой, операционной системой и версией Python.

person Wsine    schedule 09.02.2021
comment
pipenv install torch==1.8.0+cu111 -i https://download.pytorch.org/whl/torch_stable.html не работает - person Shamoon; 11.03.2021
comment
@Shamoon Вы уверены, что тестировали последнюю версию pipenv? - person Bram Vanroy; 16.03.2021
comment
@Shamoon Я обновил ответ. вы правы, потому что страница загрузки pytorch несовместима с PyPI. - person Wsine; 18.03.2021
comment
Поскольку в этом сообщении больше нет альтернативы параметру -f, я вернул подтверждение к своему собственному ответу. Весь смысл -f в том, что вам не нужно вручную находить точную ссылку. - person Bram Vanroy; 18.04.2021

Можно использовать переменные среды, распознаваемые pip, для настройки его поведения в процессе выполнения pipenv. Например.:

PIP_FIND_LINKS=https://download.pytorch.org/whl/torch_stable.html pipenv install torch==1.5.1+cu101

Видеть:

person Dmitry Kashtanov    schedule 05.10.2020
comment
Сохраняется ли этот параметр в pip-файле или вам нужно (пере) устанавливать его каждый раз, когда вы пытаетесь инициализировать его из pip-файла? - person claytond; 19.11.2020
comment
@claytond Я полагаю, это не сохранится в Pipfile. Но итоговая спецификация пакета должным образом сохраняется в Pipfile.lock. Также обратите внимание на конец раздела «Расширенное использование Pipenv - конфигурация с переменными среды» (см. Ссылку в ответе), чтобы получить рекомендации о том, как сохранять переменные env для каждого проекта. - person Dmitry Kashtanov; 18.01.2021

На данный момент я не нашел обходного пути. Что вы, конечно, можете сделать, так это включить оболочку pipenv и делать то, что вы должны, с помощью pip, например

pipenv shell
python -m pip install torch===1.3.0 -f https://download.pytorch.org/whl/torch_stable.html

Это установит torch в среду pipenv , но torch не будет добавлен ни в Pipfile (ни в файл блокировки).

person Bram Vanroy    schedule 03.10.2019