Создать среду conda из файла yml без зависимостей пакетов - PullRequest
0 голосов
/ 08 июля 2019

У меня есть файл среды conda, который я использую для создания новой среды:

conda env create -f environment.yml

Это устанавливает все мои пакеты conda и pip.Один из моих пакетов pip, turicreate, устанавливает mxnet в качестве зависимости.Это проблема, потому что правильный пакет для моего приложения - mxnet-cu80, а наличие mxnet нарушает работу приложения.Я могу удалить mxnet вручную, но я бы предпочел, чтобы указанная выше команда установила только перечисленные пакеты (без зависимостей).Возможно ли это?

Флаг --no-deps применяется только к conda create, а не conda env create.

1 Ответ

0 голосов
/ 09 июля 2019

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

Смешивание пакетов из conda и pip всегда является потенциальной проблемой. Если вы сделаете это, conda вызовет pip, но pip не знает, как удовлетворить недостающие зависимости с помощью пакетов из репозиториев Anaconda.

Я рекомендую вам разбить список пакетов на environment.yml для conda и require.txt для pip. Добавьте mxnet-cu80 и любые другие зависимости, которые вы предпочитаете от conda, в environment.yml. Создайте среду только с пакетами conda, затем установите остальные пакеты с помощью pip на втором шаге.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...