code: def on_predict(self, data):
      if isinstance(data, list):
          if not all(isfile(p) for p in data):
              raise ValueError(
                  "The predict input data takes only a list of paths or a directory."
              )
          root_dir = split(data[0])[0]
      elif isinstance(data, str):
          if not isdir(data) and not isfile(data):
              raise ValueError(
                  "The predict input data takes only a list of paths or a directory."
              )
          if isdir(data):
              root_dir = data
              data = [
                  os.path.join(root_dir, f)
                  for f in os.listdir(root_dir)
                  if ".bin" in f
              ]
          elif isfile(data):
              root_dir = dirname(data)
              data = [data]
          else:
              raise ValueError(
                  "The predict input data takes only a list of paths or a directory."
              )
      else:
          raise ValueError(
              "The predict input data takes only a list of paths or a directory."
          )
  
      self.path_list = data
      self.split = "predict"
      self.load_meta(root_dir)
  
file_path: lightning-flash/src/flash/pointcloud/segmentation/open3d_ml/sequences_dataset.py
imports: import os
  from os.path import basename, dirname, exists, isdir, isfile, join, split
  import numpy
  import yaml
  from torch.utils.data import Dataset
  from flash.core.utilities.imports import _TOPIC_POINTCLOUD_AVAILABLE
label_desc: Use image node_id 6 for calling the SequencesDataset obj's underlying member method code with example usage: obj.on_predict(data) without return types