code: def __getattr__(self, name):
      # We only support tf's `predict`, `evaluate`, `compile`,
      # and user custom attributes which are not in `tf.keras.Model`
      if name in self.support_operations:
          return getattr(self.target_obj, name)
      elif not hasattr(Model, name):
          try:
              return getattr(self.target_obj, name)
          except AttributeError as _e:
              pass
          return getattr(self.source_obj, name)
      else:
          invalidOperationError(
              False,
              f"This optimized model does not support {name} method !",
          )
  
file_path: BigDL/python/nano/src/bigdl/nano/utils/tf/attributes.py
imports: import inspect
  from functools import partial
  from tensorflow.keras import Model
  from bigdl.nano.utils.common import invalidOperationError
label_desc: Use image node_id 2 for calling the _ModuleWrapper obj's underlying member method code with example usage: obj.__getattr__(name) and returns: getattr, getattr, getattr