# Тяжёлая половина всех GPU-окружений: torch с CUDA, и больше ничего.
#
# colloq: gpu
#
# Строка выше — не комментарий, а директива: комната на этом окружении получает
# срез из KERNEL_GPUS на всё время жизни своего контейнера, а если свободных
# срезов нет — честно не открывается. Отката на процессор здесь нет и быть не
# может: колёса ниже собраны под CUDA. Признак наследуется, поэтому окружениям
# поверх этого повторять его не нужно.
#
# Отдельным окружением, а не строками в каждом GPU-списке, ровно по одной
# причине. Слой окружения один, и любая правка списка ставит его целиком
# заново: добавить timm или поднять версию transformers стоило трёх гигабайт
# колёс и девяти минут — каждый раз. Здесь они лежат один раз, а окружения
# сверху (`# colloq: from base-gpu`) собираются за секунды.
#
# Обычный индекс pypi, а не .../whl/cpu, как в cv: именно там колёса с CUDA.
# Драйвер приходит с хоста через nvidia-container-toolkit, ставить его в образ
# не надо. Первая сборка идёт долго, дальше образ лежит в кеше docker.
#
# Pinned since 13 Oct 2026: an unpinned torch followed PyPI to CUDA 13.0 wheels
# (torch 2.14.1+cu130), which need an NVIDIA driver of at least 580, while the
# rental scripts still took hosts with CUDA 12 drivers, where torch imports and
# never sees the card. A pin moves only on purpose, together with the driver
# floor in scripts/vast-vm.sh and the kaggle-gpu pins checked on a card.
torch==2.14.1
torchvision==0.29.1
