class_docstr: MMT TXT Model
  Args:
      txt_bert (nn.Module): Bert model using for text
      tokenizer (Any): Tokenizer for input text
      max_length (int): text max length
      modalities (List): modalities name list
      add_special_tokens (bool): whether use special tokens
      add_dot (bool): add dot in the end of text
      same_dim (int): same dim in the dimension of output of GatedEmbeddingUnit
      dout_prob (float): dropout prob
code: def __init__(
      self,
      txt_bert: nn.Module,
      tokenizer: Any,
      max_length: int = 30,
      modalities: List = None,
      add_special_tokens: bool = True,
      add_dot: bool = True,
      same_dim: int = 512,
      dout_prob: float = 0.1,
  ):
      super().__init__()
  
      self.orig_mmt_comaptible = int(
          os.environ.get("ORIG_MMT_COMPAT", 0)
      )
      if self.orig_mmt_comaptible:
          print("ORIG_MMT_COMPAT")
      self.add_dot = add_dot
      self.add_special_tokens = add_special_tokens
      self.modalities = modalities
      self.max_length = max_length
      self.tokenizer = tokenizer
      self.txt_bert = txt_bert
      text_dim = self.txt_bert.config.hidden_size
  
      self.text_gu = nn.ModuleDict()
      for mod in self.modalities:
          self.text_gu[mod] = GatedEmbeddingUnit(
              text_dim, same_dim, use_bn=True, normalize=True
          )
      self.moe_fc_txt = nn.ModuleDict()
      self.moe_txt_dropout = nn.Dropout(dout_prob)
      for mod in self.modalities:
          self.moe_fc_txt[mod] = nn.Linear(text_dim, 1)
  
imports: import os
  import torch
  import torch.nn.functional
  from typing import Any, List, Dict
  from collections import OrderedDict
  from torch import nn
  from towhee.models.mdmmt.bert_mmt import BertMMT
label_desc: Use image node_id 1 to create a new MMTTXT object from inherited base classes: nn with example: obj = MMTTXT(txt_bert, tokenizer, max_length, modalities, add_special_tokens, add_dot, same_dim, dout_prob)