Как установить Ultralytics YOLO с помощью Conda#
В этом руководстве описана настройка окружения Conda для проектов Ultralytics. Conda — это система управления пакетами и окружениями с открытым исходным кодом, которая служит отличной альтернативой pip для установки пакетов и зависимостей. Изолированные окружения делают Conda особенно подходящей для работы в области машинного обучения и науки о данных. Подробнее смотри на странице пакета Ultralytics Conda на Anaconda и в репозитории feedstock Ultralytics на GitHub, где публикуются обновления пакета.
В этом руководстве рассказывается, как создать окружение с Ultralytics, запускать инференс, использовать образ Docker с Conda и ускорить установку с помощью libmamba.
Предварительные требования#
На твоей системе должна быть установлена Anaconda или Miniconda. Если ее нет, скачай и установи Anaconda или Miniconda.
Установка Ultralytics#
Создай новое окружение Conda с Ultralytics из канала conda-forge, а затем активируй его. Установи Python, Ultralytics и torchvision (это не зависимость пакета из conda-forge) одной командой, чтобы conda совместно подобрала актуальные совместимые версии:
conda create --name ultralytics-env -c conda-forge python=3.11 ultralytics torchvision -y
conda activate ultralytics-envЕсли ты работаешь в среде с поддержкой CUDA, добавь метапакет conda-forge pytorch-gpu в ту же команду, чтобы conda подобрала сборку PyTorch с поддержкой CUDA:
conda create --name ultralytics-env -c conda-forge python=3.11 ultralytics torchvision pytorch-gpu -y
conda activate ultralytics-envПримечание об окружении ROCm (GPU AMD, Linux)#
Для ускорения вычислений на GPU AMD в Linux с помощью ROCm колеса PyTorch ROCm недоступны через Conda, поэтому их нужно установить с помощью pip. Используй окружение Conda для изоляции, а затем установи PyTorch ROCm и Ultralytics через pip:
conda create --name ultralytics-rocm python=3.12 -y
conda activate ultralytics-rocm
pip install "torch[device-all]" "torchvision[device-all]" --index-url https://stable.repo.amd.com/rocm/whl-next/
pip install ultralyticsСмотри страницу Начало работы с PyTorch, чтобы узнать о поддерживаемых версиях ROCm, и руководство по GPU AMD, чтобы настроить инференс MIGraphX, для которого требуется Python 3.11 или новее на Linux x86_64.
Использование Ultralytics#
После установки Ultralytics ты можешь использовать его широкие возможности для обнаружения объектов, сегментации экземпляров и других задач. Например, чтобы получить предсказание для изображения, выполни:
from ultralytics import YOLO
model = YOLO("yolo26n.pt") # инициализация модели
results = model("path/to/image.jpg") # выполнение инференса
results[0].show() # отображение результатов для первого изображенияОбраз Ultralytics Conda для Docker#
В Dockerfile для Conda используются PyTorch 2.13, torchvision 0.28 и CUDA 13.0 из conda-forge. Релизы conda-forge могут выходить позже релизов PyTorch для pip, используемых в стандартном образе для GPU. Автоматическая публикация latest-conda отключена, поэтому собери актуальный образ локально:
git clone https://github.com/ultralytics/ultralytics
cd ultralytics
t=ultralytics-conda:local
sudo docker build -f docker/Dockerfile-conda -t $t .Запусти образ:
# Run the Ultralytics image in a container with GPU support
sudo docker run -it --ipc=host --device nvidia.com/gpu=all $t # all GPUs
sudo docker run -it --ipc=host --device nvidia.com/gpu=2 --device nvidia.com/gpu=3 $t # specify GPUsВ Linux для запросов устройств CDI требуются Docker версии 28.2.0 или новее и NVIDIA Container Toolkit версии 1.18 или новее. Устаревший флаг --gpus all может лишить доступа к GPU после перезагрузки демона на хосте, поэтому обнови старые хосты Linux и вместо него используй --device. Подробнее смотри в руководстве по быстрому старту с Docker.
Ускорение установки с помощью Libmamba#
libmamba — это быстрый кроссплатформенный решатель, учитывающий зависимости и заменяющий классический решатель Conda. В Conda 23.10 и более поздних версиях libmamba уже используется по умолчанию, поэтому большинство установок сразу работают быстрее.
Если у тебя более старая версия Conda, можно вручную включить libmamba:
-
Сначала установи пакет
conda-libmamba-solver:conda install conda-libmamba-solver -
Затем настрой Conda на использование
libmambaв качестве решателя:conda config --set solver libmamba
Ты успешно настроил среду Conda и установил пакет Ultralytics — теперь можно изучить его возможности. Дополнительные руководства и примеры смотри в документации Ultralytics.
Часто задаваемые вопросы#
Настроить окружение Conda для проектов Ultralytics просто, и это обеспечивает удобное управление пакетами. Создай окружение с Python и Ultralytics из канала conda-forge одной командой, чтобы conda подобрала совместимые версии, а затем активируй его:
conda create --name ultralytics-env -c conda-forge python=3.11 ultralytics torchvision -y conda activate ultralytics-envConda — это надёжная система управления пакетами и средами, у которой есть несколько преимуществ перед pip. Она эффективно управляет зависимостями и гарантирует совместимость всех необходимых библиотек. Изолированные среды Conda предотвращают конфликты между пакетами, что особенно важно в проектах по науке о данных и машинному обучению. Кроме того, Conda поддерживает распространение бинарных пакетов, ускоряя установку.
Да, производительность можно повысить, используя среду с поддержкой CUDA. Создай окружение с
ultralyticsи метапакетом conda-forgepytorch-gpuодной командой, чтобы вместе с ними была подобрана сборка PyTorch с поддержкой CUDA:conda create --name ultralytics-env -c conda-forge python=3.11 ultralytics torchvision pytorch-gpu -y conda activate ultralytics-envТакая конфигурация включает ускорение на GPU, необходимое для ресурсоёмких задач, например обучения моделей глубокого обучения и инференса. Подробнее см. в руководстве по установке Ultralytics.
Dockerfile для Conda создаёт изолированную среду conda-forge с PyTorch и поддержкой CUDA. Следуй инструкциям по локальной сборке, а затем запусти образ с указанными там параметрами GPU. Стандартный опубликованный образ для GPU и другие варианты перечислены в руководстве по Docker.
В Conda 23.10 и более поздних версиях по умолчанию уже используется быстрый решатель
libmamba. В более старых версиях Conda его можно включить вручную: сначала установи пакетconda-libmamba-solver:conda install conda-libmamba-solverЗатем настрой Conda на использование
libmambaв качестве решателя:conda config --set solver libmambaТакая конфигурация обеспечивает более быстрое и эффективное управление пакетами. Другие советы по оптимизации среды см. в разделе об установке libmamba.