| " Utils for modifying what is displayed in notebooks and command line" | |
| import fastai | |
| import fastprogress | |
| from ..basic_train import * | |
| from ..core import * | |
| __all__ = ['progress_disabled_ctx'] | |
| class progress_disabled_ctx(): | |
| "Context manager to disable the progress update bar and Recorder print." | |
| def __init__(self,learn:Learner): | |
| self.learn = learn | |
| def __enter__(self): | |
| #silence progress bar | |
| fastprogress.fastprogress.NO_BAR = True | |
| fastai.basic_train.master_bar,fastai.basic_train.progress_bar = fastprogress.force_console_behavior() | |
| self.orig_callback_fns = copy(self.learn.callback_fns) | |
| rec_name = [x for x in self.learn.callback_fns if hasattr(x, 'func') and x.func == Recorder] | |
| if len(rec_name): | |
| rec_idx = self.learn.callback_fns.index(rec_name[0]) | |
| self.learn.callback_fns[rec_idx] = partial(Recorder, add_time=True, silent=True) #silence recorder | |
| return self.learn | |
| def __exit__(self, *args): | |
| fastai.basic_train.master_bar,fastai.basic_train.progress_bar = master_bar,progress_bar | |
| self.learn.callback_fns = self.orig_callback_fns | |