Redesign dataloader re-instantiation context managers for Lite
#15.179 geöffnet am 18. Okt. 2022
Repository-Metriken
- Stars
- (26.687 Stars)
- PR-Merge-Metriken
- (Durchschn. Merge 9T 15h) (3 gemergte PRs in 30 T)
Beschreibung
Proposed refactor
Redesign the context managers that enable re-instantiations of DataLoader after #14992 deprecates the run method design.
Motivation
We currently have two context managers over the run method:
- _replace_dunder_methods(DataLoader, "dataset")
- _replace_dunder_methods(BatchSampler)
These get applied for the user if they implement the run method. However, this won't be the case anymore after #14992. We need to find an alternative approach.
Pitch
We probably need to call these methods at the start of the program, for example in LightningLite.__init__. But it is unclear how to undo the patching which is usually done in __exit__. Happy to hear suggestions.
cc @borda @justusschock @awaelchli @tchaton @carmocca @otaj