Replies: 1 comment 6 replies
-
Just a few things to add here (some I already mentioned on discord, but let me put them here just for completeness).
In general the topic of configuration (usually in relation to catalog entries rather than parameters) is quite a hot topic in kedro and there's lots of different opinions on it, e.g. kedro-org/kedro#1076, kedro-org/kedro#891, kedro-org/kedro#770, kedro-org/kedro#1011. So chances are if you need to do something a bit out of the ordinary here, someone has considered how to do it already at some point. |
Beta Was this translation helpful? Give feedback.
6 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Representation
Kedro parameters are configured project
config/base
/config/local
and are located relative to there or to project root (searched in orderlocal
,base
, then project root). Parameters are stored in yaml files.Kedro allows parameters to be consumed directly in python code. Or they can be consumed as node inputs. Credentials are managed separately, and can be used in the data catalog. Secure credentials are intended to be placed in
config/local/credentials
(config/local
should be in.gitignore
).Kedro parameters are by default inside the configuration environment (typically in
conf/base
orconf/local
). They are referenced in inputs using the syntaxparams:<key>
to reference individual parameters. (Unlike DVC, it would seem that the key is not a dottedname, but references a top-level entity in parameters.DVC supports a wide range of formats for parameter specification. They are referenced in pipeline files. Credentials are not tracked, as reading and writing of files is not modelled by dvc.
DVC specifies parameters in two different manners -- in
params
section in each stage, and via templatesvars
section, which can be ether global to pipeline, or local to stage.DVC has a default
params
file (params.yaml
, but other formats are also supported). The stageparams
section is a list of parameters, keys may be specified directly, or they may be specified as a dictionary entry:In either case,
<key>
is a dotted name referencing a possibly nested value in the parameter file.In
dvc.yaml
templates, parameters can be used not only as inputs to stage execution, but also can vary other stage metadata.Implementation
Only parameters used as node inputs can be tied to experiments. Kedro-DVC will include parameters referenced by nodes using the
params:<key>
syntax indvc.yaml
stage definitions.Beta Was this translation helpful? Give feedback.
All reactions