Python виртуальное окружение anaconda

Использование Anaconda и создание собственных Python окружений

Для выполнения расчетов с помощью Python, как правило, требуются дополнительные библиотеки. Оптимальным способом загрузки дополнительных библиотек на вычислительном кластере НИУ ВШЭ является использование программного пакета Anaconda. Это удобный менеджер пакетов Python, предназначенный для создания изолированных окружений Python и автоматического разрешения зависимостей. На суперкомпьютере уже имеется базовое окружение Anaconda, которое можно подключить следующей командой:

module load Python

После подключения этого модуля становятся доступными для использования большинство наиболее популярных библиотек Python, включенных в состав базового набора Anaconda.
Полный список библиотек в окружении можно посмотреть командой conda list
Установка других пакетов или обновление версий в базовом окружении невозможна.

Также доступны дополнительные окружения с пакетами PyTorch, TensorFlow и аналогом Google Colab: module available Python

Если вам необходимо установить пакеты или версии пакетов, которых нет в базовом окружении, то потребуется создать своё собственное изолированное окружение и установить в него необходимые модули:

Например, для создания окружения «my_py_env1» на базе последней версии Python 3 воспользуйтесь следующей командой:

conda create -n my_py_env1 python=3

На запрос об установке новых пакетов ответьте «y».

Читайте также:  Knigi html skachat besplatno

Далее необходимо задействовать созданное окружение:

source activate my_py_env1

После активации в приглашении терминала появится префикс с именем окружения:

(my_py_env1) [anaconda@sms ~]$ python -V

Для вывода списка доступных окружений используйте команду conda env list

Для установки необходимых пакетов используйте команду conda install, например, для установки последней версии NumPy:

Для установки пакетов из файла requirements.txt можно использовать команду conda install —file requirements.txt

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

С помощью команды conda search выполняется поиск пакетов в репозиториях Anaconda. Также поиск можно осуществлять на сайте https://anaconda.org/anaconda/

Отключить окружение (например, для выбора другого): conda deactivate

Для подключения окружения к ноутбукам в JupyterHub установите соответствующее ядро (см. https://github.com/jupyter/jupyter/wiki/Jupyter-kernels).
Например, для Python необходимо установить ядро ipykernel:

После установки ядра это окружение появится в списке на главной странице JupyterLab:

Переключить используемое окружение и ядро можно в уже запущенном ноутбуке, кликнув по названию ядра в правом верхнем углу или в меню Kernel -> Change Kernel.

Настройка окружения Python для работы с GPU на вычислительных узлах

Для работы с GPU на вычислительных узлах необходимо предварительно настроить изолированное окружение Python на логин-сервере (sms) вычислительного кластера НИУ ВШЭ:

    1. Выгрузить все загруженные модули и активировать модуль Anaconda:
      module purge; module load Python
    2. Создать и активировать новое изолированное окружение Anaconda:
      conda create -n my_py_env
      source activate my_py_env
      Если вы часто запускаете задачи с использованием srun, то рекомендуется в файл ~/.bashrc добавить строчку source activate my_py_env. В этом случае будет автоматически активироваться созданное окружение.
    3. Установить необходимые пакеты Python, например для PyTorch:
      conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
      Большие фреймворки, такие как PyTorch или TensorFlow, рекомендуется устанавливать в первую очередь и в новое пустое окружение. Это позволит установить версии пакетов с поддержкой GPU без возможного влияния ранее установленных модулей.
    4. Пакеты, которым для установки необходимо наличие GPU, необходимо предварительно скачать, затем выделить вычислительный узел с GPU и установить пакет с локального каталога. Например, для установки пакета pytorch_scatter из git-репозитория следует выполнить следующие команды:
      git clone https://github.com/rusty1s/pytorch_scatter
      srun —pty —cpus-per-task 1 —gpus 1 bash
      cd pytorch_scatter
      pip install -e .
      Здесь точка в конце команды означает указание на текущий каталог — будет выполнена сборка и установка модуля из текущей директории.
    5. Провести проверочный запуск на 1 GPU и подготовить скрипт-файл для sbatch по примеру из инструкции по запуску задач на суперкомпьютере. Пример sbatch-скрипта:
    #!/bin/bash #SBATCH --job-name=test #SBATCH --gpus=1 module purge module load Python source deactivate source activate my_py_env nvidia-smi which python python -V python -c 'import torch; print(torch.cuda.is_available())'

    Важно: о выводе результатов в консоль

    По умолчанию python использует буфферизованный вывод (т.е. вывод НЕ мгновенно передается в результирующий файл).
    Например, в случае такого кода:

    from time import sleep print('Start') for i in range(60): sleep(1) print('Done')

    Начальный вывод «Start» появится в файле вывода (slurm-.out) только спустя 60 итераций (одновременно с «Done»).
    Для задач, результаты которых оцениваются в процессе выполнения (выводятся промежуточные значения и тп), это не подходит (например, в случае, когда задача завершится по таймауту, вывода в файле не будет).
    Для мгновенного отображения результатов предлагается 2 варианта:

    1. Добавлять аргумент flush=True в функцию print: print(‘Start’, flush=True) (это работает только при версии python >= v3.3).
    2. Добавить аргумент -u при запуске задачи к самому интерпретатору: например, python3 -u myprog.py (изменений в коде в данном случае не понадобится).

    Нашли опечатку ?
    Выделите её, нажмите Ctrl+Enter и отправьте нам уведомление. Спасибо за участие!
    Сервис предназначен только для отправки сообщений об орфографических и пунктуационных ошибках.

    • О ВЫШКЕ
    • Цифры и факты
    • Руководство и структура
    • Преподаватели и сотрудники
    • Корпуса и общежития
    • Закупки
    • Обращения граждан в НИУ ВШЭ
    • Фонд целевого капитала
    • Противодействие коррупции
    • Сведения о доходах, расходах, об имуществе и обязательствах имущественного характера
    • Сведения об образовательной организации
    • Людям с ограниченными возможностями здоровья
    • Единая платежная страница
    • Работа в Вышке
    • ОБРАЗОВАНИЕ
    • Лицей
    • Довузовская подготовка
    • Олимпиады
    • Прием в бакалавриат
    • Вышка+
    • Прием в магистратуру
    • Аспирантура
    • Дополнительное образование
    • Центр развития карьеры
    • Бизнес-инкубатор ВШЭ
    • НАУКА
    • Научные подразделения
    • Исследовательские проекты
    • Мониторинги
    • Диссертационные советы
    • Защиты диссертаций
    • Академическое развитие
    • Конкурсы и гранты
    • Научно-образовательный портал IQ.hse.ru
    • XXIV Ясинская (Апрельская) международная научная конференция по проблемам развития экономики и общества
    • РЕСУРСЫ
    • Библиотека
    • Издательский дом ВШЭ
    • Книжный магазин «БукВышка»
    • Типография
    • Медиацентр
    • Журналы ВШЭ
    • Публикации
    • Единый архив экономических и социологических данных
    • Полезные ссылки
    • Министерство науки и высшего образования РФ
    • Министерство просвещения РФ
    • Федеральный портал «Российское образование»
    • Массовые открытые онлайн-курсы

    Шрифты HSE Sans и HSE Slab разработаны в Школе дизайна НИУ ВШЭ

    Источник

    Python виртуальное окружение anaconda

    Для установки pipenv пользователи Windows могут ввести следующую команду:

    1.2. Создание виртуального окружения

    Для создания виртуального окружения воспользуемся командой:

    Как создать виртуальное окружение в Python и перестать думать о зависимостях

    1.3. Установка и удаление пакетов

    В качестве примера установим пакеты requests и flask :

    Как создать виртуальное окружение в Python и перестать думать о зависимостях

    В качестве примера удалим пакет flask :

    1.4. Выход из виртуального окружения

    Для деактивации текущего окружения применим команду exit

    2. Anaconda

    У Anaconda свой менеджер разрешения зависимостей – conda, заменяющий стандартный менеджер пакетов pip . Также есть возможность создавать несколько изолированных окружений, чем сейчас и займемся.

    2.1. Установка Anaconda

    На сайте Anaconda выберите нужную ОС, версию Python, скачайте дистрибутив и установите Anaconda.

    Забегая чуть вперед, если необходимо обновить Anaconda, откройте Anaconda Promt и введите команду conda update conda .

    Существует два варианта запуска виртуального окружения:

    В этом руководстве используется ОС Windows, но в других ОС процесс создания виртуального окружения такой же.

    2.2. Создание окружения в Anaconda Prompt

    Нажмите на иконку Windows, в поле поиска введите Anaconda Prompt , а затем нажмите Enter , чтобы открыть ее.

    Введите команду conda , чтобы проверить успешность установки и ознакомиться с основными командами.

    Как создать виртуальное окружение в Python и перестать думать о зависимостях

    2.2.1. Создание виртуального окружения

    В следующей команде -n – флаг, создающий новое окружение с именем env и определенной версией Python 3.7

    conda create -n env python=3.7

    2.2.2. Активация окружения

    Как создать виртуальное окружение в Python и перестать думать о зависимостях

    2.2.3. Установка пакетов

    Установим numpy через менеджер conda:

    conda install -n env numpy

    2.2.4. Список установленных пакетов

    Посмотрим, какие пакеты установлены в виртуальном окружении:

    Как создать виртуальное окружение в Python и перестать думать о зависимостях

    2.2.5. Список всех виртуальных окружений

    Список всех созданных окружений выводится командой conda env list :

    Как создать виртуальное окружение в Python и перестать думать о зависимостях

    2.2.6. Деактивация виртуального окружения

    Следующая команда деактивирует текущее окружение env и изменит его на base :

    2.2.7. Удаление виртуального окружения

    Удалим виртуальное окружение env со всеми его пакетами:

    Как создать виртуальное окружение в Python и перестать думать о зависимостях

    Убедимся, что окружение удалено, открыв список окружений:

    Как создать виртуальное окружение в Python и перестать думать о зависимостях

    2.3. Создание окружения в Anaconda Navigator

    Повторите шаги по установке виртуальной среды env

    1. Нажмите на иконку Windows, в поле поиска введите Anaconda Navigator , а затем нажмите Enter .

    2. Выберите вкладку Environments , где показано виртуальное окружение по умолчанию — base и созданная нами env .

    Как создать виртуальное окружение в Python и перестать думать о зависимостях

    3. Нажмите Create и заполните поля, как показано на картинке ниже.

    Как создать виртуальное окружение в Python и перестать думать о зависимостях

    4. Перейдите в new-env , выберете All и установите нужный пакет. В нашем случае — numpy .

    Как создать виртуальное окружение в Python и перестать думать о зависимостях

    5. Поменяйте текущее виртуальное окружение, например, на env .

    Как создать виртуальное окружение в Python и перестать думать о зависимостях

    Мы разобрали два способа создания виртуального окружения: через компактный pipenv и с помощью среды Anaconda. Научились создавать, активировать и деактивировать виртуальные окружения и ставить в них пакеты. Теперь есть где писать чистый код!

    Больше полезной информации вы можете получить на нашем телеграм-канале «Библиотека питониста». Рекомендуем также обратить внимание на учебный курс по Python от «Библиотеки программиста».

    Источники

    Источник

Оцените статью