code: def logged_results_to_HBS_result(directory):
      """
      function to import logged 'live-results' and return a HB_result object
  
      You can load live run results with this function and the returned
      HB_result object gives you access to the results the same way
      a finished run would.
  
      Parameters
      ----------
      directory: str
              the directory containing the results.json and config.json files
  
      Returns
      -------
      hpbandster.core.result.Result: :object:
              TODO
  
      """
      data = {}
      time_ref = float("inf")
      budget_set = set()
  
      with open(os.path.join(directory, "configs.json")) as fh:
          for line in fh:
              line = json.loads(line)
  
              if len(line) == 3:
                  config_id, config, config_info = line
              if len(line) == 2:
                  (
                      config_id,
                      config,
                  ) = line
                  config_info = "N/A"
  
              data[tuple(config_id)] = Datum(
                  config=config, config_info=config_info
              )
  
      with open(os.path.join(directory, "results.json")) as fh:
          for line in fh:
              (
                  config_id,
                  budget,
                  time_stamps,
                  result,
                  exception,
              ) = json.loads(line)
  
              id = tuple(config_id)
  
              data[id].time_stamps[budget] = time_stamps
              data[id].results[budget] = result
              data[id].exceptions[budget] = exception
  
              budget_set.add(budget)
              time_ref = min(time_ref, time_stamps["submitted"])
  
      # infer the hyperband configuration from the data
      budget_list = sorted(list(budget_set))
  
      HB_config = {
          "eta": None
          if len(budget_list) < 2
          else budget_list[1] / budget_list[0],
          "min_budget": min(budget_set),
          "max_budget": max(budget_set),
          "budgets": budget_list,
          "max_SH_iter": len(budget_set),
          "time_ref": time_ref,
      }
      return Result([data], HB_config)
  
imports: import copy
  import os
  import json
  from hpbandster.core.base_iteration import Datum
label_desc: Use image node_id 2 for calling a global function with example usage: logged_results_to_HBS_result(directory) and returns: Result