code: def forward(self, input: Tensor) -> Tensor:
      quantized_weight, quant_scale, quant_min = self.weight.deconcat(
          self.weight
      )
      temp_dequantized_weight = self.weight.dequantizer.dequantize(
          quantized_weight.view(torch.uint8), quant_scale, quant_min
      )
  
      # !!! Do not use torch.functional.linear(input, temp_dequantized_weight, self.bias) here as in zero3 torch.functional.linear is
      # replaced by LinearFunctionForZeroStage3. Which assume weight is non-temporary.
      # If weight is temp buffer there will be memory leak.
      return torch._C._nn.linear(
          input, temp_dequantized_weight, self.bias
      )
  
file_path: DeepSpeed/deepspeed/inference/quantization/layers.py
imports: import torch
  from torch import nn
  from torch import Tensor
  from torch.nn import functional
  from .utils import Quantizer, DeQuantizer, concat_to_compat_param
  from typing import Tuple, Callable, Dict
  from deepspeed.runtime.zero import register_external_parameter
label_desc: Use image node_id 2 for calling the QuantizedLinear obj's underlying member method code with example usage: obj.forward(input) and returns: torch