class_docstr: Manages a TensorFlow model for training.
code: def save_model(
      self,
      filepath,
      overwrite,
      include_optimizer,
      save_format,
      signatures,
      options,
  ):
      file_name = os.path.basename(filepath)
      with tempfile.TemporaryDirectory() as temp_dir:
          temp_path = os.path.join(temp_dir, file_name)
          self.model.save(
              filepath=temp_path,
              overwrite=overwrite,
              save_format=save_format,
              include_optimizer=include_optimizer,
              signatures=signatures,
              options=options,
          )
          if self.rank == 0:
              if (
                  save_format == "h5"
                  or filepath.endswith(".h5")
                  or filepath.endswith(".keras")
              ):
                  # hdf5 format
                  put_local_file_to_remote(temp_path, filepath)
              else:
                  # savemodel format
                  put_local_dir_tree_to_remote(temp_path, filepath)
  
imports: import json
  import os
  import socket
  import shutil
  import tempfile
  import copy
  import ray
  from contextlib import closing
  from bigdl.dllib.utils import log4Error
  from bigdl.orca.data.utils import partitions_get_data_label, partitions_get_tf_dataset
  from bigdl.orca.data.file import is_file, get_remote_file_to_local, get_remote_dir_to_local, get_remote_files_with_prefix_to_local, put_local_file_to_remote, put_local_dir_tree_to_remote, put_local_files_with_prefix_to_remote
  from bigdl.orca.learn.utils import process_tensorboard_in_callbacks
  from bigdl.dllib.utils.log4Error import *
label_desc: Use image node_id 11 for calling the TFRunner obj's underlying member method code with example usage: obj.save_model(filepath, overwrite, include_optimizer, save_format, signatures, options) without return types