class_docstr: Task class for text sequence to sequence.
class_docstr_tok: ["Task","class","for","text","sequence","to","sequence","."]
code: def __init__(self, config, mode):
      super().__init__(config, mode)
  
      self.src_paths = self.data_config[mode]["paths"]["source"]
      self.tgt_paths = self.data_config[mode]["paths"]["target"]
  
      self.vocab_min_frequency = self.task_config["vocab_min_frequency"]
      self.text_vocab_file_path = self.task_config["text_vocab"]
      self.label_vocab_file_paths = self.task_config["label_vocab"]
      if not isinstance(self.label_vocab_file_paths, list):
          self.label_vocab_file_paths = [self.label_vocab_file_paths]
      self.use_label_vocab = self.task_config["use_label_vocab"]
  
      self.max_enc_len = self.task_config["max_enc_len"]
      self.max_dec_len = self.task_config["max_dec_len"]
  
      self.src_paths_after_pre_process = [
          one_path + ".after" for one_path in self.src_paths
      ]
      self.tgt_paths_after_pre_process = [
          one_path + ".after" for one_path in self.tgt_paths
      ]
      self.infer_no_label = self.config["data"][utils.INFER].get(
          "infer_no_label", False
      )
      self.infer_without_label = bool(
          mode == utils.INFER and self.infer_no_label
      )
  
      self.prepare()
  
imports: import collections
  import os
  import delta.compat
  from absl import logging
  from delta import utils
  from delta.data.preprocess.text_ops import tokenize_sentence
  from delta.data.preprocess.utils import load_vocab_dict
  from delta.data.task.base_text_task import TextTask
  from delta.data.preprocess.text_ops import load_textline_dataset
  from delta.data.utils.common_utils import get_file_len
  from delta.layers.utils import compute_sen_lens
  from delta.utils.register import registers
label_desc: Use image node_id 1 to create a new TextS2STask object from inherited base classes: TextTask with example: obj = TextS2STask(config, mode)