code: def forward(
      self, input: torch.Tensor, reduce: bool = True
  ) -> torch.Tensor:
      out = super().forward(input)
      if self.process_group.size() > 1 and reduce:
          torch.distributed.all_reduce(out, group=self.process_group)
      return out
  
imports: import os
  import torch
  import torch.distributed
  from torch import nn
  from torch.nn import functional
  from typing import List
  from loguru import logger
  from functools import lru_cache
  from accelerate import init_empty_weights
  from text_generation_server.utils.gptq.quant_linear import QuantLinear
  from text_generation_server.utils.import_utils import IS_CUDA_SYSTEM, IS_ROCM_SYSTEM
  from text_generation_server.utils.log import log_once
label_desc: Use image node_id 3 for calling the TensorParallelRowLinear obj's underlying member method code with example usage: obj.forward(input, reduce) and returns: out