code: def ae(
      self,
      ae_config,
      custom_encoder,
      custom_decoder,
      custom_discriminator,
      request,
  ):
      # randomized
  
      alpha = request.param
  
      if alpha < 0.125:
          model = Adversarial_AE(ae_config)
  
      elif 0.125 <= alpha < 0.25:
          model = Adversarial_AE(ae_config, encoder=custom_encoder)
  
      elif 0.25 <= alpha < 0.375:
          model = Adversarial_AE(ae_config, decoder=custom_decoder)
  
      elif 0.375 <= alpha < 0.5:
          model = Adversarial_AE(
              ae_config, discriminator=custom_discriminator
          )
  
      elif 0.5 <= alpha < 0.625:
          model = Adversarial_AE(
              ae_config, encoder=custom_encoder, decoder=custom_decoder
          )
  
      elif 0.625 <= alpha < 0:
          model = Adversarial_AE(
              ae_config,
              encoder=custom_encoder,
              discriminator=custom_discriminator,
          )
  
      elif 0.750 <= alpha < 0.875:
          model = Adversarial_AE(
              ae_config,
              decoder=custom_decoder,
              discriminator=custom_discriminator,
          )
  
      else:
          model = Adversarial_AE(
              ae_config,
              encoder=custom_encoder,
              decoder=custom_decoder,
              discriminator=custom_discriminator,
          )
  
      return model
  
imports: import os
  from copy import deepcopy
  import pytest
  import torch
  from pythae.models import Adversarial_AE, Adversarial_AE_Config
  from pythae.trainers import AdversarialTrainer, AdversarialTrainerConfig
  from tests.data.custom_architectures import *
label_desc: Use image node_id 6 for calling the Test_Main_Training obj's underlying member method code with example usage: obj.ae(ae_config, custom_encoder, custom_decoder, custom_discriminator, request) and returns: model