class_docstr: A class for saving graphs and split in OGB-compatible manner
  Create submission_datasetname/ directory, and output the following two files:
      - datasetname.zip (OGB-compatible zipped dataset folder)
      - meta_dict.pt (torch files storing all the necessary dataset meta-information)
class_docstr_tok: ["A","class","for","saving","graphs","and","split","in","OGB-compatible","manner","Create","submission_datasetname\/","directory",",","and","output","the","following","two","files",":","-","datasetname.zip","(","OGB-compatible","zipped","dataset","folder",")","-","meta_dict.pt","(","torch","files","storing","all","the","necessary","dataset","meta-information",")"]
code: def save_graph_list(self, graph_list):
      if not all_numpy(graph_list):
          raise RuntimeError(
              "graph_list must only contain list/dict of numpy arrays, int, or float"
          )
  
      if self.dataset_prefix == "ogbn" or self.dataset_prefix == "ogbl":
          if len(graph_list) > 1:
              raise RuntimeError(
                  "Multiple graphs not supported for node/link property prediction."
              )
  
      if self.is_hetero:
          self._save_graph_list_hetero(graph_list)
          self.has_node_attr = ("node_feat_dict" in graph_list[0]) and (
              graph_list[0]["node_feat_dict"] is not None
          )
          self.has_edge_attr = ("edge_feat_dict" in graph_list[0]) and (
              graph_list[0]["edge_feat_dict"] is not None
          )
      else:
          self._save_graph_list_homo(graph_list)
          self.has_node_attr = ("node_feat" in graph_list[0]) and (
              graph_list[0]["node_feat"] is not None
          )
          self.has_edge_attr = ("edge_feat" in graph_list[0]) and (
              graph_list[0]["edge_feat"] is not None
          )
  
      # later used for checking the shape of target_label
      if self.dataset_prefix == "ogbg":
          self.num_data = len(graph_list)  # number of graphs
      elif self.dataset_prefix == "ogbn":
          if self.is_hetero:
              self.num_data = graph_list[0][
                  "num_nodes_dict"
              ]  # number of nodes
          else:
              self.num_data = graph_list[0][
                  "num_nodes"
              ]  # number of nodes
      else:
          self.num_data = None
  
      self._save_graph_list_done = True
  
imports: import torch
  import pandas
  import os
  import os.path
  from datetime import date
  import shutil
  from tqdm.auto import tqdm
  import numpy
  from ogb.io.read_graph_raw import read_binary_graph_raw, read_binary_heterograph_raw
  from ogb.utils.torch_util import all_numpy
label_desc: Use image node_id 6 for calling the DatasetSaver obj's underlying member method code with example usage: obj.save_graph_list(graph_list) without return types