class_docstr: The search space that is proposed in `AutoFormer <https://arxiv.org/abs/2107.00651>`__.
  There are four searchable variables: depth, embedding dimension, heads number and MLP ratio.
  
  Parameters
  ----------
  search_embed_dim
      The search space of embedding dimension. Use a list to specify search range.
  search_mlp_ratio
      The search space of MLP ratio. Use a list to specify search range.
  search_num_heads
      The search space of number of heads. Use a list to specify search range.
  search_depth
      The search space of depth. Use a list to specify search range.
  img_size
      Size of input image.
  patch_size
      Size of image patch.
  in_channels
      Number of channels of the input image.
  num_labels
      Number of classes for classifier.
  qkv_bias
      Whether to use bias item in the qkv embedding.
  drop_rate
      Drop rate of the MLP projection in MSA and FFN.
  attn_drop_rate
      Drop rate of attention.
  drop_path_rate
      Drop path rate.
  pre_norm
      Whether to use pre_norm. Otherwise post_norm is used.
  global_pooling
      Whether to use global pooling to generate the image representation. Otherwise the cls_token is used.
  absolute_position
      Whether to use absolute positional embeddings.
  qk_scale
      The scaler on score map in self-attention.
  rpe
      Whether to use relative position encoding.
docstr: Get the model space config proposed in paper.
docstr_tok: ["Get","the","model","space","config","proposed","in","paper","."]
code: def preset(cls, name: str):
      """Get the model space config proposed in paper."""
      name = name.lower()
      assert name in ["tiny", "small", "base"]
      if name == "tiny":
          init_kwargs = {
              "search_embed_dim": (192, 216, 240),
              "search_mlp_ratio": (3.0, 3.5, 4.0),
              "search_num_heads": (3, 4),
              "search_depth": (12, 13, 14),
          }
      elif name == "small":
          init_kwargs = {
              "search_embed_dim": (320, 384, 448),
              "search_mlp_ratio": (3.0, 3.5, 4.0),
              "search_num_heads": (5, 6, 7),
              "search_depth": (12, 13, 14),
          }
      elif name == "base":
          init_kwargs = {
              "search_embed_dim": (528, 576, 624),
              "search_mlp_ratio": (3.0, 3.5, 4.0),
              "search_num_heads": (8, 9, 10),
              "search_depth": (14, 15, 16),
          }
      else:
          raise ValueError(
              f"Unsupported architecture with name: {name}"
          )
      return init_kwargs
  
imports: from __future__ import annotations
  from typing import Tuple, cast, Any, Dict
  import torch
  import torch.nn
  import torch.nn.functional
  import nni
  from nni.mutable import Categorical, MutableExpression, frozen_context, ensure_frozen, Mutable
  from nni.nas.nn.pytorch import ParametrizedModule, ModelSpace, MutableModule, Repeat, MutableConv2d, MutableLinear, MutableLayerNorm
  from nni.nas.space import current_model
  from nni.nas.oneshot.pytorch.supermodule.operation import MixedOperation
  from nni.nas.profiler.pytorch.flops import FlopsResult
  from nni.nas.profiler.pytorch.utils import MutableShape, ShapeTensor, profiler_leaf_module
  from .utils.pretrained import load_pretrained_weight
  from .utils.nn import DropPath
label_desc: Use image node_id 3 for calling the AutoFormer obj's underlying member method code with example usage: obj.preset(cls, name) and returns: init_kwargs