          Saves the serialized model, with weights, to the folder location specified when
          initializing the plugin. If loss has dropped on both sides of the model, then
          a backup is taken.
          """
          self._io.save()  # pylint:disable=protected-access
  
      def snapshot(self) -> None:
          """ Creates a snapshot of the model folder to the models parent folder, with the number
          of iterations completed appended to the end of the model name. """
          self._io.snapshot()
 
</s> remove     def save(self) -> None:
 </s> add     def save(self, is_exit: bool = False) -> None: </s> remove     def __call__(self, y_true: tf.Tensor, y_pred: tf.Tensor) -> tf.Tensor:
 </s> add     def call(self, y_true: tf.Tensor, y_pred: tf.Tensor) -> tf.Tensor:
        self._io.save(is_exit=is_exit)
          Saves the serialized model, with weights, to the folder location specified when
          initializing the plugin. If loss has dropped on both sides of the model, then
          a backup is taken.
          """
        self._io.save(is_exit=is_exit)
  
      def snapshot(self) -> None:
          """ Creates a snapshot of the model folder to the models parent folder, with the number
          of iterations completed appended to the end of the model name. """
          self._io.snapshot()
keep keep keep keep replace keep keep keep keep keep
 Training: Add setting option to save optimizer weights 
plugins/train/model/_base/model.py