This PR refactores current tracking with Wieghts and Biases to be more abstract:
from now, all calls for logging are realised with additional abstract class TrackingBackend
implemented specialisation of TrackingBackend for wandb and mlflow,
avaiable launch arguments for --track are now dynamicaly generated from avaiable packages (attempts to import wandb and import mlflow)
In addition:
extended tracking information with more tags with packages version (rl-zoo3, sb3-contrib),
all git repositories within working dir are validated - there should be no uncommitted changes.
all commit hashes are logged as the run tag.
Motivation and Context
[ ] I have raised an issue to propose this change (required for new features and bug fixes)
Ongoing research in CEAI is focused on logging everything internally to a self-hosted MLflow instance.
Types of changes
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
Description
This PR refactores current tracking with
Wieghts and Biases
to be more abstract:TrackingBackend
TrackingBackend
forwandb
andmlflow
,--track
are now dynamicaly generated from avaiable packages (attempts toimport wandb
andimport mlflow
)In addition:
rl-zoo3
,sb3-contrib
),Motivation and Context
Types of changes
Checklist:
make format
(required)make check-codestyle
andmake lint
(required)make pytest
andmake type
both pass. (required)Note: we are using a maximum length of 127 characters per line