class_docstr: NOTE: If you are using this feature with a container that
  also inherits from `HybridEngineContainer`, ensure that `MetaTensorContainer`
  is inherited before `HybridEngineContainer` in the class definition.
class_docstr_tok: ["NOTE",":","If","you","are","using","this","feature","with","a","container","that","also","inherits","from","`","HybridEngineContainer","`",",","ensure","that","`","MetaTensorContainer","`","is","inherited","before","`","HybridEngineContainer","`","in","the","class","definition","."]
code: def apply_tensor_parallelism(self, mp_replace, **kwargs):
      if self.is_meta:
          if self.qkvb is None:
              self.module.attention.attn_qkvb = None
          if self.dense_b is None:
              self.module.attention.attn_ob = None
      else:
          super().apply_tensor_parallelism(mp_replace, **kwargs)
  
file_path: DeepSpeed/deepspeed/module_inject/containers/features/meta_tensor.py
imports: from abc import ABC, abstractmethod
  from packaging import version
  import torch
label_desc: Use image node_id 3 for calling the MetaTensorContainer obj's underlying member method code with example usage: obj.apply_tensor_parallelism(mp_replace) without return types