gt4sd-core
gt4sd-core copied to clipboard
Disentangle properties from algorithms
Is your feature request related to a problem? Please describe.
Currently, the properties submodule imports stuff from algorithms.core
and thus also from that __init__
.
In the init, we registry all the training pipelines and thus, one needs to have all those dependencies installed, including torchdrug
, guacamol_baselines
and other vcs-requirements
Describe the solution you'd like
Creating a submodule gt4sd.core
that specifies base classes used by multiple submodules like gt4sd.algorithms
or gt4sd.properties
Describe alternatives you've considered
Do the imports only when someone calls list_available_algorithms
NOTE: When creating gt4sd.core
we have to make sure that all the rest remains functional, including relative imports, jupyter notebooks (should be fine since we barely import from algorithms.core
directly) and in particular also documentation