class_docstr: A trainable interface for a simple, generic encoder + decoder model
  
  # Arguments
  encoder: an encoder object
  decoder: a decoder object
  input_shape: shape of encoder input, for variable length, please use -1 as seq len
  output_shape: shape of decoder input, for variable length, please use -1 as seq len
  bridge: connect encoder and decoder
  generator: Feeding decoder output to generator to generate final result, `None` is supported
  
  >>> encoder = RNNEncoder.initialize("LSTM", 1, 4)
  creating: createZooKerasLSTM
  creating: createZooKerasRNNEncoder
  >>> decoder = RNNDecoder.initialize("LSTM", 1, 4)
  creating: createZooKerasLSTM
  creating: createZooKerasRNNDecoder
  >>> bridge = Bridge.initialize("dense", 4)
  creating: createZooKerasBridge
  >>> seq2seq = Seq2seq(encoder, decoder, [2, 4], [2, 4], bridge)
  creating: createZooKerasInput
  creating: createZooKerasInput
  creating: createZooKerasSelectTable
  creating: createZooKerasModel
  creating: createZooSeq2seq
code: def set_checkpoint(self, path, over_write=True):
      callZooFunc(
          self.bigdl_type,
          "seq2seqSetCheckpoint",
          self.value,
          path,
          over_write,
      )
  
imports: from bigdl.nn.layer import Layer
  from zoo.pipeline.api.keras.layers import *
  from zoo.models.common import ZooModel
  from zoo.common.utils import callZooFunc
  from zoo.pipeline.api.keras.engine import ZooKerasLayer
  from zoo.pipeline.api.keras.models import Model
label_desc: Use image node_id 3 for calling the Seq2seq obj's underlying member method code with example usage: obj.set_checkpoint(path, over_write) without return types