def __init__(
        self,
        data_dir: str,
        input_list_file: str = "input_list.txt",
        relative_input_paths: bool = False,
        annotations_file: str = None,
        batch_size: int = None,
    ):
        """Initialize FileListProcessedDataLoader.

        :param data_dir: directory containing processed data.
        :param input_list_file: file containing input list. Expected to be a file in the data directory if not an
            absolute path.
        :param relative_input_paths: whether input paths in the input list file are relative to the data directory.
        :param annotations_file: npy file containing annotations. Expected to be a file in the data directory if not
            an absolute path. If None, no annotations are loaded.
        :param batch_size: number of inputs per chunked input list file for batch processing. If None, all inputs are
            loaded as a single chunk.
        """
        data_dir = Path(data_dir).resolve()

        # change input paths in input list file to absolute paths
        input_list_temp_dir = tempfile.TemporaryDirectory("olive_tmp_")  # pylint: disable=consider-using-with
        input_list = input_list_utils.resolve_input_list(
            data_dir,
            data_dir / input_list_file,
            input_list_temp_dir.name,
            input_path_parent=None if relative_input_paths else data_dir,
        )

        annotations = None
        if annotations_file is not None:
            annotations_path = Path(data_dir) / annotations_file
            if not annotations_path.is_file():
                raise FileNotFoundError(f"{annotations_file} not found in data directory {data_dir}")
            if annotations_path.suffix == ".npy":
                annotations = np.load(annotations_path)
            else:
                raise ValueError(f"Unsupported annotations file format {annotations_path.suffix}")

        super().__init__(str(data_dir), input_list, annotations, batch_size)
        # save a reference to the temp_data_dir so that it persists with the object
        self.temp_data_dir = input_list_temp_dir
Initialize FileListProcessedDataLoader.

        :param data_dir: directory containing processed data.
        :param input_list_file: file containing input list. Expected to be a file in the data directory if not an
            absolute path.
        :param relative_input_paths: whether input paths in the input list file are relative to the data directory.
        :param annotations_file: npy file containing annotations. Expected to be a file in the data directory if not
            an absolute path. If None, no annotations are loaded.
        :param batch_size: number of inputs per chunked input list file for batch processing. If None, all inputs are
            loaded as a single chunk.
        
olive/platform_sdk/qualcomm/utils/data_loader.py