code: def prepare_config_and_inputs(self):
      # Set default quantizers before creating the model.
      import pytorch_quantization.nn as quant_nn
      from pytorch_quantization.tensor_quant import QuantDescriptor
  
      # The default tensor quantizer is set to use Max calibration method
      input_desc = QuantDescriptor(num_bits=8, calib_method="max")
      # The default tensor quantizer is set to be per-channel quantization for weights
      weight_desc = QuantDescriptor(num_bits=8, axis=((0,)))
      quant_nn.QuantLinear.set_default_quant_desc_input(input_desc)
      quant_nn.QuantLinear.set_default_quant_desc_weight(weight_desc)
      # For the test cases, since QDQBert model is tested in one run without calibration, the quantized tensors are set as fake quantized tensors which give float type tensors in the end.
      quant_nn.TensorQuantizer.use_fb_fake_quant = True
  
      input_ids = ids_tensor(
          [self.batch_size, self.seq_length], self.vocab_size
      )
  
      input_mask = None
      if self.use_input_mask:
          input_mask = random_attention_mask(
              [self.batch_size, self.seq_length]
          )
  
      token_type_ids = None
      if self.use_token_type_ids:
          token_type_ids = ids_tensor(
              [self.batch_size, self.seq_length], self.type_vocab_size
          )
  
      sequence_labels = None
      token_labels = None
      choice_labels = None
      if self.use_labels:
          sequence_labels = ids_tensor(
              [self.batch_size], self.type_sequence_label_size
          )
          token_labels = ids_tensor(
              [self.batch_size, self.seq_length], self.num_labels
          )
          choice_labels = ids_tensor(
              [self.batch_size], self.num_choices
          )
  
      config = self.get_config()
  
      return (
          config,
          input_ids,
          token_type_ids,
          input_mask,
          sequence_labels,
          token_labels,
          choice_labels,
      )
  
imports: import unittest
  from transformers import QDQBertConfig, is_torch_available
  from transformers.testing_utils import require_pytorch_quantization, require_torch, slow, torch_device
  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 2 for calling the QDQBertModelTester obj's underlying member method code with example usage: obj.prepare_config_and_inputs() and returns: config,  input_ids,  token_type_ids,  input_mask,  sequence_labels,  token_labels,  choice_labels