You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently DVC implicitly derives dependencies based on command line args. $ dvc run python mycode.py data/input.csv data/output.p
It goes like this:
If arg (let say data/output.p) looks like data file (in data dir) we assume it is an input parameter.
If a data file was changed we change our mind and say the arg is an output.
Also, we have a special args like --input or -i and --output or -o for explicit input\output definition.
Should we keep auto\implicit dependency calculation or we should hide this logic behind, let say --auto-dag or -a option?
Result will be: $ dvc run --auto-dag python mycode.py data/input.csv data/output.p
or explicitly: $ dvc run -i data/input.csv -o data/output.p python mycode.py data/input.csv data/output.p
The text was updated successfully, but these errors were encountered:
Repository state based (before and after command run).
Both of them make DVC logic quite fragile.
To make DVC more persistent we should probably turn off both of the options by default. New parameters --auto-args, --auto-git or combined --auto-dag will include one of these.
And best practice should be - specify your inputs and outputs explicitly.
Currently DVC implicitly derives dependencies based on command line args.
$ dvc run python mycode.py data/input.csv data/output.p
It goes like this:
data/output.p
) looks like data file (indata
dir) we assume it is an input parameter.Also, we have a special args like
--input
or-i
and--output
or-o
for explicit input\output definition.Should we keep auto\implicit dependency calculation or we should hide this logic behind, let say
--auto-dag
or-a
option?Result will be:
$ dvc run --auto-dag python mycode.py data/input.csv data/output.p
or explicitly:
$ dvc run -i data/input.csv -o data/output.p python mycode.py data/input.csv data/output.p
The text was updated successfully, but these errors were encountered: