Сначала я думал, что смогу сделать это с одним «главным» конвейер, который циклически обрабатывает каждый эксперимент:
dvc.yaml
Код: Выделить всё
stages:
prepare_data:
foreach: ${experiment_names}
do:
cmd: python stages/prepare_data.py "${item}"
deps:
- source_data
- stages/prepare_data.py
params:
- prepare_data
outs:
- input_data
run_simulations:
foreach: ${experiment_names}
do:
...
Я борюсь с тем, как зарегистрировать зависимости в этом dvc. yaml, чтобы при изменении только одного файла исходных данных повторно запускались только те симуляции, которые используют этот файл.
Очевидно, что это невозможно сделать в приведенном выше файле dvc.yaml. потому что это относится ко всем экспериментам.
Нужно ли мне создавать отдельный конвейер для каждого эксперимента, чтобы регистрировать конкретные зависимости? Если да, то можно ли это сделать программно или мне нужно собрать их все вручную?
Подробнее здесь: https://stackoverflow.com/questions/788 ... c-pipeline