code: def _quantize_static(
      model: Module, input_data: DataManager
  ) -> GraphModule:
      with TemporaryDirectory() as tmp_dir:
          config_file_qt = _prepare_quantization_config(
              model, tmp_dir, "post_training_static_quant"
          )
          quantizer = Quantization(str(config_file_qt))
          quantizer.model = model
          quantizer.calib_dataloader = _get_dataloader(input_data)
          quantizer.eval_dataloader = _get_dataloader(input_data)
          compressed_model = quantizer()
  
      return compressed_model
  
file_path: nebuly/optimization/nebullvm/nebullvm/operations/optimizations/compilers/quantizations/intel_neural_compressor.py
imports: from pathlib import Path
  from tempfile import TemporaryDirectory
  from typing import Any
  import yaml
  from nebullvm.core.models import QuantizationType
  from nebullvm.optional_modules.neural_compressor import MixedPrecision, Quantization
  from nebullvm.optional_modules.torch import DataLoader, Module, GraphModule
  from nebullvm.tools.data import DataManager, PytorchDataset
  from nebullvm.tools.transformations import MultiStageTransformation, HalfPrecisionTransformation
label_desc: Use image node_id 4 for calling a global function with example usage: _quantize_static(model, input_data) and returns: compressed_model