code: def __init__(
      self,
      parent,
      num_classes=1,
      num_atoms=32 * 9,
      num_edges=32 * 3,
      num_in_degree=32,
      num_out_degree=32,
      num_spatial=32,
      num_edge_dis=16,
      multi_hop_max_dist=5,  # sometimes is 20
      spatial_pos_max=32,
      edge_type="multi_hop",
      init_fn=None,
      max_nodes=32,
      share_input_output_embed=False,
      num_hidden_layers=2,
      embedding_dim=32,
      ffn_embedding_dim=32,
      num_attention_heads=4,
      dropout=0.1,
      attention_dropout=0.1,
      activation_dropout=0.1,
      layerdrop=0.0,
      encoder_normalize_before=False,
      pre_layernorm=False,
      apply_graphormer_init=False,
      activation_fn="gelu",
      embed_scale=None,
      freeze_embeddings=False,
      num_trans_layers_to_freeze=0,
      traceable=False,
      q_noise=0.0,
      qn_block_size=8,
      kdim=None,
      vdim=None,
      bias=True,
      self_attention=True,
      batch_size=10,
      graph_size=20,
      is_training=True,
  ):
      self.parent = parent
      self.num_classes = num_classes
      self.num_labels = num_classes
      self.num_atoms = num_atoms
      self.num_in_degree = num_in_degree
      self.num_out_degree = num_out_degree
      self.num_edges = num_edges
      self.num_spatial = num_spatial
      self.num_edge_dis = num_edge_dis
      self.edge_type = edge_type
      self.multi_hop_max_dist = multi_hop_max_dist
      self.spatial_pos_max = spatial_pos_max
      self.max_nodes = max_nodes
      self.num_hidden_layers = num_hidden_layers
      self.embedding_dim = embedding_dim
      self.hidden_size = embedding_dim
      self.ffn_embedding_dim = ffn_embedding_dim
      self.num_attention_heads = num_attention_heads
      self.dropout = dropout
      self.attention_dropout = attention_dropout
      self.activation_dropout = activation_dropout
      self.layerdrop = layerdrop
      self.encoder_normalize_before = encoder_normalize_before
      self.pre_layernorm = pre_layernorm
      self.apply_graphormer_init = apply_graphormer_init
      self.activation_fn = activation_fn
      self.embed_scale = embed_scale
      self.freeze_embeddings = freeze_embeddings
      self.num_trans_layers_to_freeze = num_trans_layers_to_freeze
      self.share_input_output_embed = share_input_output_embed
      self.traceable = traceable
      self.q_noise = q_noise
      self.qn_block_size = qn_block_size
      self.init_fn = init_fn
      self.kdim = kdim
      self.vdim = vdim
      self.self_attention = self_attention
      self.bias = bias
      self.batch_size = batch_size
      self.graph_size = graph_size
      self.is_training = is_training
  
imports: import copy
  import inspect
  import os
  import tempfile
  import unittest
  from transformers import GraphormerConfig, is_torch_available
  from transformers.testing_utils import require_torch, slow, torch_device
  from ...test_configuration_common import ConfigTester
  from ...test_modeling_common import ModelTesterMixin, _config_zero_init, ids_tensor
  from ...test_pipeline_mixin import PipelineTesterMixin
label_desc: Use image node_id 1 to create a new GraphormerModelTester object  with example: obj = GraphormerModelTester(parent, num_classes, num_atoms, num_edges, num_in_degree, num_out_degree, num_spatial, num_edge_dis, multi_hop_max_dist, spatial_pos_max, edge_type, init_fn, max_nodes, share_input_output_embed, num_hidden_layers, embedding_dim, ffn_embedding_dim, num_attention_heads, dropout, attention_dropout, activation_dropout, layerdrop, encoder_normalize_before, pre_layernorm, apply_graphormer_init, activation_fn, embed_scale, freeze_embeddings, num_trans_layers_to_freeze, traceable, q_noise, qn_block_size, kdim, vdim, bias, _attention, batch_size, graph_size, is_training)