code: def recover_parameter_id(self, data) -> int:
      # this is for handling the resuming of the interrupted data: parameters
      if not isinstance(data, list):
          data = [data]
  
      previous_max_param_id = 0
      for trial in data:
          # {'parameter_id': 0, 'parameter_source': 'resumed', 'parameters': {'batch_size': 128, ...}
          if isinstance(trial, str):
              trial = nni.load(trial)
          if not isinstance(trial["parameter_id"], int):
              # for dealing with user customized trials
              # skip for now
              continue
          self.recovered_trial_params[trial["parameter_id"]] = trial[
              "parameters"
          ]
          if previous_max_param_id < trial["parameter_id"]:
              previous_max_param_id = trial["parameter_id"]
      self.recovered_max_param_id = previous_max_param_id
      return previous_max_param_id
  
file_path: nni/nni/recoverable.py
imports: from __future__ import annotations
  import os
  import nni
label_desc: Use image node_id 5 for calling the Recoverable obj's underlying member method code with example usage: obj.recover_parameter_id(data) and returns: previous_max_param_id