class_docstr: Create a Unet unwrapped generator
class_docstr_tok: ["Create","a","Unet","unwrapped","generator"]
code: def _collect_sampling_ids(self, list_data):
      def extract_matching_key(keys, start_token):
          for key in keys:
              if key.startswith(start_token):
                  return key
          return None
  
      d = {}
      if self.save_sampling_id:
          for idx, data in enumerate(list_data):
              key = extract_matching_key(data.keys, "sampling_id")
              if key:
                  d[key] = getattr(data, key)
      return d
  
imports: from torch import nn
  from torch_geometric.nn import global_max_pool, global_mean_pool, fps, radius, knn_interpolate
  from torch.nn import Linear, ReLU, LeakyReLU, BatchNorm1d, Dropout
  from omegaconf.listconfig import ListConfig
  from omegaconf.dictconfig import DictConfig
  import logging
  import copy
  from torch_points3d.datasets.base_dataset import BaseDataset
  from torch_points3d.models.base_model import BaseModel
  from torch_points3d.core.common_modules.base_modules import Identity
  from torch_points3d.utils.config import is_list
label_desc: Use image node_id 4 for calling the UnwrappedUnetBasedModel obj's underlying member method code with example usage: obj._collect_sampling_ids(list_data) and returns: d, None, key