class_docstr: Builder is the base class to build extensions for PyTorch.
  
  Args:
      name (str): the name of the kernel to be built
      prebuilt_import_path (str): the path where the extension is installed during pip install
code: def __init__(self, name: str, prebuilt_import_path: str):
      self.name = name
      self.prebuilt_import_path = prebuilt_import_path
      self.version_dependent_macros = [
          "-DVERSION_GE_1_1",
          "-DVERSION_GE_1_3",
          "-DVERSION_GE_1_5",
      ]
  
      # we store the op as an attribute to avoid repeated building and loading
      self.cached_op_module = None
  
      assert prebuilt_import_path.startswith(
          "colossalai._C"
      ), f"The prebuilt_import_path should start with colossalai._C, but got {self.prebuilt_import_path}"
  
imports: import importlib
  import os
  import time
  from abc import ABC, abstractmethod
  from pathlib import Path
  from typing import List, Optional, Union
  from .utils import check_cuda_availability, check_system_pytorch_cuda_match, print_rank_0
label_desc: Use image node_id 1 to create a new Builder object from inherited base classes: ABC with example: obj = Builder(name, prebuilt_import_path)