class_docstr: run get
class_docstr_tok: ["run","get"]
code: def extract_cases(self, collection):
      collection_name = (
          collection["collection_name"]
          if "collection_name" in collection
          else None
      )
      (
          data_type,
          collection_size,
          dimension,
          metric_type,
      ) = parser.collection_parser(collection_name)
      ni_per = collection["ni_per"]
      vector_type = utils.get_vector_type(data_type)
      other_fields = (
          collection["other_fields"]
          if "other_fields" in collection
          else None
      )
      ids_length_list = collection["ids_length_list"]
      collection_info = {
          "dimension": dimension,
          "metric_type": metric_type,
          "dataset_name": collection_name,
          "collection_size": collection_size,
          "other_fields": other_fields,
          "ni_per": ni_per,
      }
      index_field_name = utils.get_default_field_name(vector_type)
      index_type = collection["index_type"]
      index_param = collection["index_param"]
      index_info = {
          "index_type": index_type,
          "index_param": index_param,
      }
      flush = True
      if "flush" in collection and collection["flush"] == "no":
          flush = False
      self.init_metric(
          self.name, collection_info, index_info, search_info=None
      )
      case_metrics = list()
      case_params = list()
      for ids_length in ids_length_list:
          ids = get_ids(ids_length, collection_size)
          case_metric = copy.deepcopy(self.metric)
          # set metric type as case
          case_metric.set_case_metric_type()
          # case_params = list()
          case_metric.run_params = {"ids_length": ids_length}
          case_metrics.append(case_metric)
          case_param = {
              "collection_name": collection_name,
              "data_type": data_type,
              "dimension": dimension,
              "collection_size": collection_size,
              "ni_per": ni_per,
              "metric_type": metric_type,
              "vector_type": vector_type,
              "other_fields": other_fields,
              "flush_after_insert": flush,
              "index_field_name": index_field_name,
              "index_type": index_type,
              "index_param": index_param,
              "ids": ids,
          }
          case_params.append(case_param)
      return case_params, case_metrics
  
file_path: milvus/tests/benchmark/milvus_benchmark/runners/get.py
imports: import time
  import copy
  import logging
  from milvus_benchmark import parser
  from milvus_benchmark.runners import utils
  from milvus_benchmark.runners.base import BaseRunner
label_desc: Use image node_id 2 for calling the GetRunner obj's underlying member method code with example usage: obj.extract_cases(collection) and returns: case_params,  case_metrics