code: def _need_dataloader_type_transformation(model, dataloader):
      # get forward method's parameter number
      # forward_args = get_conditional_args(model, include="all", exclude=(bool, type(None)))
      forward_args = get_conditional_args(model, include="all")
      forward_args_len = len(forward_args)
  
      # if the model is a simple model(x) format
      # we don't need to transform the dataloader
      # a special case is 0, this means *args is used in
      # users' forward method, we will also skip it as well
      if forward_args_len <= 1:
          return False, forward_args_len
  
      # check if a dataloader has met inc format
      input_sample = next(iter(dataloader))
      if isinstance(input_sample, Sequence):
          if (
              len(input_sample) == 2
              and isinstance(input_sample[1], torch.Tensor)
              and len(input_sample[0]) <= forward_args_len
          ):
              return False, forward_args_len
          if len(input_sample[0]) == forward_args_len:
              return False, forward_args_len
      return True, forward_args_len
  
file_path: BigDL/python/nano/src/bigdl/nano/utils/pytorch/dataloader.py
imports: from typing import Sequence
  from copy import deepcopy
  import torch
  import warnings
  from bigdl.nano.utils.pytorch import get_conditional_args
label_desc: Use image node_id 3 for calling a global function with example usage: _need_dataloader_type_transformation(model, dataloader) and returns: True,  forward_args_len, False,  forward_args_len, False,  forward_args_len, False,  forward_args_len