docstr: Transforms to apply to a whole batch (if possible use this for efficiency).
  
  .. note:: This option is mutually exclusive with :meth:`per_sample_transform_on_device`, since if both are
  specified, uncollation has to be applied.
docstr_tok: ["Transforms","to","apply","to","a","whole","batch","(","if","possible","use","this","for","efficiency",")",".","..","note",":",":","This","option","is","mutually","exclusive","with",":","meth",":","`","per_sample_transform_on_device","`",",","since","if","both","are","specified",",","uncollation","has","to","be","applied","."]
code: def _per_batch_transform(
      self, batch: Any, stage: RunningStage
  ) -> Any:
      """Transforms to apply to a whole batch (if possible use this for efficiency).
  
      .. note:: This option is mutually exclusive with :meth:`per_sample_transform_on_device`, since if both are
      specified, uncollation has to be applied.
  
      """
      return self.current_transform(
          stage=stage, current_fn="per_batch_transform"
      )(batch)
  
imports: import inspect
  from dataclasses import dataclass
  from functools import partial
  from typing import Any, Callable, Dict, List, Optional, Sequence, Tuple
  from pytorch_lightning.utilities import rank_zero_warn
  from pytorch_lightning.utilities.enums import LightningEnum
  from flash.core.data.callback import ControlFlow
  from flash.core.data.utilities.collate import default_collate
  from flash.core.data.utils import _STAGES_PREFIX
  from flash.core.utilities.stages import RunningStage
  from flash.core.utilities.types import INPUT_TRANSFORM_TYPE
label_desc: Use image node_id 34 for calling the InputTransform obj's underlying member method code with example usage: obj._per_batch_transform(batch, stage) and returns: self