code: def _compute(
      self,
      predictions,
      references,
      suffix: bool = False,
      scheme: Optional[str] = None,
      mode: Optional[str] = None,
      sample_weight: Optional[List[int]] = None,
      zero_division: Union[str, int] = "warn",
  ):
      if scheme is not None:
          try:
              scheme_module = importlib.import_module("seqeval.scheme")
              scheme = getattr(scheme_module, scheme)
          except AttributeError:
              raise ValueError(
                  f"Scheme should be one of [IOB1, IOB2, IOE1, IOE2, IOBES, BILOU], got {scheme}"
              )
      report = classification_report(
          y_true=references,
          y_pred=predictions,
          suffix=suffix,
          output_dict=True,
          scheme=scheme,
          mode=mode,
          sample_weight=sample_weight,
          zero_division=zero_division,
      )
      report.pop("macro avg")
      report.pop("weighted avg")
      overall_score = report.pop("micro avg")
  
      scores = {
          type_name: {
              "precision": score["precision"],
              "recall": score["recall"],
              "f1": score["f1-score"],
              "number": score["support"],
          }
          for type_name, score in report.items()
      }
      scores["overall_precision"] = overall_score["precision"]
      scores["overall_recall"] = overall_score["recall"]
      scores["overall_f1"] = overall_score["f1-score"]
      scores["overall_accuracy"] = accuracy_score(
          y_true=references, y_pred=predictions
      )
  
      return scores
  
file_path: evaluate/metrics/seqeval/seqeval.py
imports: import importlib
  from typing import List, Optional, Union
  import datasets
  from seqeval.metrics import accuracy_score, classification_report
  import evaluate
label_desc: Use image node_id 2 for calling the Seqeval obj's underlying member method code with example usage: obj._compute(predictions, references, suffix, scheme, mode, sample_weight, zero_division) and returns: scores