code: def run(model: BaseModel, dataset, device, output_path):
      loaders = dataset.test_dataloaders
      predicted: Dict = {}
      for loader in loaders:
          loader.dataset.name
          with Ctq(loader) as tq_test_loader:
              for data in tq_test_loader:
                  with torch.no_grad():
                      model.set_input(data, device)
                      model.forward()
                  predicted = {
                      **predicted,
                      **dataset.predict_original_samples(
                          data, model.conv_type, model.get_output()
                      ),
                  }
  
      save(output_path, predicted)
  
file_path: torch-points3d/forward_scripts/forward.py
imports: import torch
  import hydra
  import logging
  from omegaconf import OmegaConf
  import os
  import sys
  import numpy
  from typing import Dict
  from torch_points3d.datasets.dataset_factory import instantiate_dataset, get_dataset_class
  from torch_points3d.models.model_factory import instantiate_model
  from torch_points3d.models.base_model import BaseModel
  from torch_points3d.datasets.base_dataset import BaseDataset
  from torch_points3d.metrics.colored_tqdm import Coloredtqdm
  from torch_points3d.metrics.model_checkpoint import ModelCheckpoint
  from torch_points3d.utils.colors import COLORS
label_desc: Use image node_id 2 for calling a global function with example usage: run(model, dataset, device, output_path) without return types