Rename RibResults to RibBuildResults for consistency with RibBuildConfig
Make RibBuildResults a pydantic model instead of a typed dict. This makes it easier to initialise new configs and objects from parts of RibBuildResults and be sure that the serialisation and deserialisation went smoothly (as opposed to deserialising with a TypedDict and serialising with a pydantic model.
Return an actual model config object rather than model_config_dict. In implementing this, we changed load_sequential_transformer so that it no longer returns a model_config_dict object (which used to actually be a transformerlens dict config that we never really used).
Also made DistributedInfo a pydantic model.
Move combine_edges function to its own file rib/edge_combiner.py
Move REPO_ROOT variable to its own file rib/settings.py
Add a config_type discriminator field for all Configs.
Related Issue
261
Breaking Changes
Changed DistributedInfo.local_comm to take a default argument and to not output anything during serialisation.
Renamed model_config_dict to raw_model_config_dict in RibResults
Make RibResults a pydantic model
Description
Related Issue
261
Breaking Changes