class_docstr: Base class for seq2seq models with embeddings
    
code: def __init__(self, params, mode, name):
      super(Seq2SeqModel, self).__init__(params, mode, name)
  
      self.source_vocab_info = None
      if "vocab_source" in self.params and self.params["vocab_source"]:
          self.source_vocab_info = vocab.get_vocab_info(
              self.params["vocab_source"]
          )
  
      self.target_vocab_info = None
      if "vocab_target" in self.params and self.params["vocab_target"]:
          self.target_vocab_info = vocab.get_vocab_info(
              self.params["vocab_target"]
          )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from __future__ import unicode_literals
  import collections
  import tensorflow
  from seq2seq import graph_utils
  from seq2seq import losses
  from seq2seq.contrib.seq2seq.decoder import _transpose_batch_time
  from seq2seq.data import vocab
  from seq2seq.graph_utils import templatemethod
  from seq2seq.decoders.beam_search_decoder import BeamSearchDecoder
  from seq2seq.inference import beam_search
  from seq2seq.models.model_base import ModelBase, _flatten_dict
label_desc: Use image node_id 1 to create a new Seq2SeqModel object from inherited base classes: ModelBase with example: obj = Seq2SeqModel(params, mode, name)