code: def __init__(
      self,
      trace_act_ckpt: bool = False,
      bias_addition_split: bool = False,
      *args,
      **kwargs,
  ):
      super().__init__(*args, **kwargs)
      self.disable_module_getattr = False
      self.proxy_buffer_attributes = True
  
      # whether the tracer will record the usage of torch.utils.checkpoint
      self.trace_act_ckpt = trace_act_ckpt
      self.ckpt_regions = []
      self.ckpt_idx = 0
  
      self.mod_dir = ""
  
      # whether the tracer should split the bias_add ops into two ops
      self.bias_addition_split = bias_addition_split
  
imports: import functools
  import inspect
  from contextlib import contextmanager
  from typing import Any, Callable, Dict, Iterable, Optional, Set, Tuple, Type, Union
  import torch
  import torch.nn
  from torch.fx import Graph, Node, Proxy, Tracer
  from torch.utils._pytree import tree_map
  from colossalai._analyzer._subclasses import _TensorPropertyMethod, _TorchFactoryMethod
  from ..node_util import MetaInfo
  from .proxy import ColoProxy
label_desc: Use image node_id 1 to create a new ColoTracer object from inherited base classes: Tracer with example: obj = ColoTracer(trace_act_ckpt, bias_addition_split)