code: def __init__(
      self,
      iterable_dataset: Union[Iterable[Tuple], List[Tuple]],
      input_names: List[str],
  ):
      self.iterable_dataset = iter(
          [
              {
                  input_name: value
                  for inputs in iterable_dataset
                  for input_name, value in zip(input_names, inputs)
              }
          ]
      )
  
file_path: nebuly/optimization/nebullvm/nebullvm/operations/optimizations/compilers/quantizations/onnx.py
imports: from pathlib import Path
  from typing import Union, Iterable, Tuple, List
  import cpuinfo
  import numpy
  from nebullvm.core.models import QuantizationType, Device, DeviceType
  from nebullvm.optional_modules.onnx import onnx, convert_float_to_float16_model_path
  from nebullvm.optional_modules.onnxruntime import CalibrationDataReader, QuantType, quantize_dynamic, quantize_static
  from nebullvm.optional_modules.torch import DataLoader
  from nebullvm.tools.onnx import get_input_names
  from nebullvm.tools.transformations import MultiStageTransformation, HalfPrecisionTransformation
label_desc: Use image node_id 1 to create a new _IterableCalibrationDataReader object from inherited base classes: CalibrationDataReader with example: obj = _IterableCalibrationDataReader(iterable_dataset, input_names)