      def __init__(self, parent: ttk.Frame, data, ylabel: str) -> None:
          logger.debug("Initializing %s", self.__class__.__name__)
          super().__init__(parent)
          style.use("ggplot")
  
          self._calcs = data
          self._ylabel = ylabel
 
</s> remove     def __init__(self, parent, hide_status=False):
 </s> add     def __init__(self, parent: ttk.Frame, hide_status: bool = False) -> None: </s> remove     def save(self, is_exit: bool = False, force_save_optimizer: bool = False) -> None:
 </s> add     def save(self,
             is_exit: bool = False,
             force_save_optimizer: bool = False) -> None: </s> remove             retval = KModel(model_inputs, model, name=f"{saved_model.name}_inference")
 </s> add             retval = keras.models.Model(model_inputs, model, name=f"{saved_model.name}_inference")
        matplotlib.use("TkAgg")  # Can't be at module level as breaks Github CI
      def __init__(self, parent: ttk.Frame, data, ylabel: str) -> None:
          logger.debug("Initializing %s", self.__class__.__name__)
          super().__init__(parent)
        matplotlib.use("TkAgg")  # Can't be at module level as breaks Github CI
          style.use("ggplot")
  
          self._calcs = data
          self._ylabel = ylabel
keep keep add keep keep keep keep
 Learning Rate finder (#1341)

* Add LR Finder support structure

* Move trainer.Feeder to lib.training.generator

* Expose model.io

* Add lr_finder

* Update docs and locales

* Pre-PR fixups
  - Fix training graph not displaying
  - CI fixes
  - Switch lr finder progress to tqdm
  - Exit lr finder early on NaN
  - Display lr finder progress in GUI 
lib/gui/display_graph.py