code: def __init__(self, config: Dict, pre_quant_layer: nn.Linear) -> None:
      super(QuantizedLinear, self).__init__(
          in_features=pre_quant_layer.in_features,
          out_features=pre_quant_layer.out_features,
          bias=pre_quant_layer.bias is not None,
          device=pre_quant_layer.weight.device,
          dtype=pre_quant_layer.weight.dtype,
      )
      self.config = config
  
      self.quantizer = Quantizer(config=config)
      self.bias = pre_quant_layer.bias
      self.weight = get_quantized_weight_wrapper(
          self,
          pre_quant_layer.weight,
          get_quantize_weight_fn(
              self.quantizer, pre_quant_layer.weight
          ),
      )
  
      self.weight.dequantizer = DeQuantizer(
          config, pre_quant_layer.weight.dtype
      )
  
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 1 to create a new QuantizedLinear object from inherited base classes: nn with example: obj = QuantizedLinear(config, pre_quant_layer)