code: def __init__(self, config: DeepSpeedInferenceConfig):
      super(GELUGemmOp, self).__init__(config)
      try:
          if self.config.dtype in [torch.float16, torch.int8]:
              if (
                  deepspeed.HAS_TRITON
                  and self.config.use_triton
                  and self.config.dtype == torch.float16
              ):
                  from deepspeed.ops.transformer.inference.triton.ops import (
                      fused_gemm_gelu as _triton_fused_gemm_gelu,
                  )
  
                  self.fused_gemm_gelu = _triton_fused_gemm_gelu  # type: ignore
              else:
                  self.fused_gemm_gelu = self.inference_module.fused_gemm_gelu_fp16  # type: ignore
          elif self.config.dtype == torch.bfloat16:
              self.fused_gemm_gelu = self.inference_module.fused_gemm_gelu_bf16  # type: ignore
          else:
              self.fused_gemm_gelu = self.inference_module.fused_gemm_gelu_fp32  # type: ignore
      except AttributeError:
          self.fused_gemm_gelu = self.gelu_gemm_fallback
  
file_path: deepspeed/deepspeed/ops/transformer/inference/op_binding/gelu_gemm.py
imports: import torch
  from ..config import DeepSpeedInferenceConfig
  from .base import BaseOp
  import deepspeed
label_desc: Use image node_id 1 to create a new GELUGemmOp object from inherited base classes: BaseOp with example: obj = GELUGemmOp(config)