code: def get_network(
      name: str,
      input_shape: List[int],
      *,
      layout: Optional[str] = None,
      cache_dir: Optional[str] = None,
  ) -> Tuple[IRModule, Dict[str, NDArray], Tuple[str, List[int], str]]:
      """Get the symbol definition and random weight of a network
  
      Parameters
      ----------
      name : str
          The name of the network.
      input_shape : List[int]
          The shape of the input tensor.
      layout : Optional[str]
          The layout of the input tensor. For vision models, the layout is by default NHWC.
      cache_dir : Optional[str], optional
          The directory to cache the generated network.
          If not specified, the cache will be disabled.
  
      Returns
      -------
      mod : IRModule
          The IRModule representing the network.
      params : Dict[str, NDArray]
          The parameters of the networks.
      inputs : Tuple[str, List[int], str]
          The name, shape and dtype of the input tensor.
      """
      mod: IRModule
      params: Dict[str, NDArray]
      inputs: Tuple[str, List[int], str]
      params_bytearray: bytearray
  
      filename = f'relay-{name}-{layout}-{",".join(str(i) for i in input_shape)}.json'
      cached = _load_cache(cache_dir, filename)
      if cached is None:
          with multiprocessing.Pool(processes=1) as pool:
              result = pool.map(
                  _get_network, [(name, input_shape, layout)]
              )
          ((mod, params_bytearray, inputs),) = result
          cached = [mod, params_bytearray, inputs]
          _save_cache(cache_dir, filename, cached)
      mod, params_bytearray, inputs = cached
      params = load_param_dict(params_bytearray)
      return mod, params, inputs
  
file_path: tvm/python/tvm/meta_schedule/testing/relay_workload.py
imports: import logging
  import multiprocessing
  import os
  import pickle
  from typing import Any, Dict, List, Optional, Tuple
  import tvm
  import tvm.relay.testing
  from tvm import meta_schedule
  from tvm import relay
  from tvm.ir import IRModule
  from tvm.runtime import NDArray, load_param_dict, save_param_dict
  from tvm.target import Target
label_desc: Use image node_id 4 for calling a global function with example usage: get_network(name, input_shape) and returns: mod,  params,  inputs