code: def get_config(self):
      return PerceiverConfig(
          num_latents=self.num_latents,
          d_latents=self.d_latents,
          qk_channels=self.d_latents,
          v_channels=self.d_latents,
          num_blocks=self.num_blocks,
          num_self_attends_per_block=self.num_self_attends_per_block,
          num_self_attention_heads=self.num_self_attention_heads,
          num_cross_attention_heads=self.num_cross_attention_heads,
          self_attention_widening_factor=self.self_attention_widening_factor,
          cross_attention_widening_factor=self.cross_attention_widening_factor,
          vocab_size=self.vocab_size,
          hidden_act=self.hidden_act,
          attention_probs_dropout_prob=self.attention_probs_dropout_prob,
          initializer_range=self.initializer_range,
          max_position_embeddings=self.max_position_embeddings,
          image_size=self.image_size,
          train_size=self.train_size,
          num_frames=self.num_frames,
          audio_samples_per_frame=self.audio_samples_per_frame,
          samples_per_patch=self.samples_per_patch,
          num_labels=self.num_labels,
      )
  
imports: import copy
  import inspect
  import math
  import tempfile
  import unittest
  import warnings
  from typing import Dict, List, Tuple
  import numpy
  from datasets import load_dataset
  from transformers import PerceiverConfig
  from transformers.models.auto import get_values
  from transformers.testing_utils import require_torch, require_torch_multi_gpu, require_vision, slow, torch_device
  from transformers.utils import is_torch_available, is_vision_available
  from ...test_configuration_common import ConfigTester
  from ...test_modeling_common import ModelTesterMixin, floats_tensor, ids_tensor, random_attention_mask
label_desc: Use image node_id 3 for calling the PerceiverModelTester obj's underlying member method code with example usage: obj.get_config() and returns: PerceiverConfig