class_docstr: Generates candidates towers for Phoenix via search algorithms.
class_docstr_tok: ["Generates","candidates","towers","for","Phoenix","via","search","algorithms","."]
code: def _create_new_architecture(
      self,
      architecture,
      run_config,
      my_id,
      is_training,
      hparams,
      logits_dimension,
      dropout_rate,
      prev_trial,
      trials,
  ):
      logging.info("Creating new architecture: ")
      logging.info(architecture)
  
      self._save_architecture(architecture, run_config.model_dir, my_id)
      tower_ = tower.Tower(
          phoenix_spec=self._phoenix_spec,
          tower_name=self.generator_name() + "_0",
          architecture=architecture,
          is_training=is_training,
          logits_dimension=logits_dimension,
          is_frozen=False,
          hparams=hparams,
          model_directory=run_config.model_dir,
          dropout_rate=dropout_rate,
          allow_auxiliary_head=self._allow_auxiliary_head,
      )
  
      apply_snapshot = (
          self._phoenix_spec.transfer_learning_spec.transfer_learning_type
          == transfer_learning_spec_pb2.TransferLearningSpec.SNAPSHOT_TRANSFER_LEARNING
      )
      if prev_trial and prev_trial > 0 and apply_snapshot:
          architecture_utils.init_variables(
              checkpoint=tf.train.latest_checkpoint(
                  architecture_utils.DirectoryHandler.trial_dir(
                      self._get_trial_from_id(prev_trial, trials)
                  )
              ),
              original_scope="Phoenix/{}_0".format(
                  self.generator_name()
              ),
              new_scope="Phoenix/{}_0".format(self.generator_name()),
          )
  
      architecture_utils.set_number_of_towers(self.generator_name(), 1)
      return [tower_]
  
imports: import functools
  from absl import logging
  from model_search import block_builder
  from model_search import search
  from model_search.architecture import architecture_utils
  from model_search.architecture import tower
  from model_search.generators import base_tower_generator
  from model_search.generators import trial_utils
  from model_search.proto import phoenix_spec_pb2
  from model_search.proto import transfer_learning_spec_pb2
  import numpy
  import tensorflow.compat.v2
label_desc: Use image node_id 4 for calling the SearchCandidateGenerator obj's underlying member method code with example usage: obj._create_new_architecture(architecture, run_config, my_id, is_training, hparams, logits_dimension, dropout_rate, prev_trial, trials) and returns: list