Типичная проблема: у вас ML-проект, конфиги размножились, и вы передаёте гиперпараметры через argparse или хардкодите в скриптах. Hydra решает это элегантно.
Главная идея: конфиги — это YAML-файлы которые можно составлять, наследовать и переопределять прямо из командной строки.
Запуск с разными параметрами без изменения кода:
python train.py model=resnet dataset=imagenet lr=0.001
python train.py model=vit dataset=cifar10 lr=0.0001
Multirun — запуск сетки экспериментов одной командой:
python train.py -m lr=0.001,0.0001 model=resnet,vit
# запустит 4 эксперимента автоматически
Конфиги можно композировать из отдельных файлов:
configs/
model/
resnet.yaml
vit.yaml
dataset/
imagenet.yaml
cifar10.yaml
train.yaml ← собирает всё вместе
Популярные связки с Hydra:
— lightning-hydra-template — готовый шаблон PyTorch Lightning + Hydra для быстрого старта
— hydra-zen — Pythonic API для динамической генерации конфигов
— hydra-torch — type-safe конфиги для PyTorch компонентов
pip install hydra-core --upgrade
Если вы ещё управляете экспериментами через argparse или захардкоженные словари — Hydra стоит попробовать.
➡️ Git-hub
📍 Навигация: Вакансии • Задачи • Собесы
Библиотека питониста
#буст