Настройка окружения

Настраиваем окружение: Miniconda + DeepLabCut

Прежде чем мы сможем запустить DeepLabCut, нужно подготовить для него правильную среду. Это самый технический этап во всём модуле, но мы пройдём его медленно и с пояснениями. В конце у вас будет работающее окружение с установленным DLC.

Зачем вообще нужна изоляция?

DeepLabCut — довольно требовательный инструмент. Ему нужны конкретные версии Python и десятка разных библиотек. Если вы просто установите DLC в систему, он может:

  • сломать другие ваши проекты, обновив важные зависимости;
  • сломаться сам, если какая-то библиотека уже стоит и не подходит по версии.

Для решения этой задачи придуманы виртуальные окружения — изолированные «песочницы», где у каждого проекта свой набор пакетов со своими версиями.

Во вводном модуле курса мы уже познакомились с venv, а сейчас научимся использовать conda.

Что выбрать: venv, Anaconda или Miniconda?

Вот краткое сравнение трёх популярных инструментов:

Инструмент Что это Плюсы Минусы
venv Встроенный в Python модуль для виртуальных окружений Не надо ничего ставить дополнительно кроме Python, лёгкий Работает только с pip, неудобен для пакетов вне системы Python
Anaconda Готовая платформа с Python и 1500+ предустановленных пакетов Всё включено, удобно для новичков, есть графический интерфейс Занимает >3 ГБ, много лишних пакетов, которые вы никогда не будете использовать в своей работе
Miniconda Минимальная версия Anaconda: только менеджер пакетов conda и Python Занимает <200 МБ, вы устанавливаете только то, что реально нужно, работает и с conda, и с pip Требует установки вручную, нужно разбираться с командами (спойлер: для начала хватит трёх)

Для DLC мы будем использовать Miniconda. Она даёт всю мощь conda без гигантского «хвоста» из тысяч пакетов, которые вам скорее всего не понадобятся.

А что такое pip?

pip — это менеджер пакетов для Python. Если conda и venv занимаются окружениями и изоляцией, то задача pip — скачивать и устанавливать сами пакеты (библиотеки) из официального репозитория PyPI (Python Package Index).

Проще говоря:

  • venv создаёт «песочницу» (чистую комнату)
  • pip приносит в неё игрушки (библиотеки)
  • conda умеет делать и то, и другое + может ставить пакеты, не являющиеся Python-библиотеками (например, CUDA или FFmpeg)

В нашем уроке мы используем conda для создания окружения, а pip — для установки самого DeepLabCut. Так рекомендовано в официальной документации, и это нормальная практика: никто не мешает использовать оба инструмента вместе.

×