Hi there!
Is it possible to move common attributes of different operations upwards?
For example, given the existing two operations for model
- model: model
operations:
train:
exec: python module/trainer.py fit --config config.yml
sourcecode:
- "module/*.py"
flags-dest: config:config.model.yml
flags-import: all
requires:
- config: config.model.yml
rename: config.model.yml config.yml
test_mac:
exec: python module/trainer.py fit --config config.yml
sourcecode:
- "module/*.py"
flags-dest: config:config.model.yml
flags-import: all
requires:
- config: config.model.yml
rename: config.model.yml config.yml
flags:
data.init_args.dataset.init_args.dataset_dir: "/Users/me/dir"
trainer.accelerator: "cpu"
trainer.fast_dev_run: True
I’d love to refactor it into:
- model: model
exec: python module/trainer.py fit --config config.yml
sourcecode:
- "module/*.py"
flags-dest: config:config.model.yml
flags-import: all
requires:
- config: config.model.yml
rename: config.model.yml config.yml
operations:
train:
test_mac:
flags:
data.init_args.dataset.init_args.dataset_dir: "/Users/me/dir"
trainer.accelerator: "cpu"
trainer.fast_dev_run: True
In general, what I am trying to achieve is to have a collection of configurations that are concise.
With that I can have multiple variations at hand without the need to overwrite the flags or have a hughe guild.yml
. If there are even better ways I’d love to hear them.
Cheers
Alessandro