code: def __init__(self, config, **kwargs):
      super().__init__(config)
      if config.model.max_decode_length is not None:
          self.max_length = min(
              config.model.max_decode_length,
              config.dataset.max_len - config.dataset.max_video_len - 3,
          )
      else:
          self.max_length = (
              config.dataset.max_len - config.dataset.max_video_len - 3
          )
      self.gen_param = (
          config.gen_param if config.gen_param is not None else {}
      )
  
file_path: fairseq/examples/MMPT/mmpt/models/mmfusionnlg.py
imports: import torch
  from torch.nn import functional
  from typing import Optional, Iterable
  from .mmfusion import MMFusion
  from .transformermodel import MMBertModel
  from ..modules import VideoTokenMLP
label_desc: Use image node_id 1 to create a new MMFusionNLG object from inherited base classes: MMFusion with example: obj = MMFusionNLG(config)