class_docstr: Reporter implementations write reports about trained models. They should at least produce human readable reports,
  but can additionally produce reports that are easily machine-parsable.
docstr: report the results of an experiment
  :param experiment_name: the name of the experiment.
  :param experiment: the completed experiment.
  :param report_dir: the directory in which to write the report
  :return: the key metric value, it's assumed higher is better.
docstr_tok: ["report","the","results","of","an","experiment",":","param","experiment_name",":","the","name","of","the","experiment",".",":","param","experiment",":","the","completed","experiment",".",":","param","report_dir",":","the","directory","in","which","to","write","the","report",":","return",":","the","key","metric","value",",","it","'s","assumed","higher","is","better","."]
code: def report(
      self,
      experiment_name: str,
      experiment: ExperimentConfig,
      report_dir: Path,
  ) -> Any:
      """
      report the results of an experiment
      :param experiment_name: the name of the experiment.
      :param experiment: the completed experiment.
      :param report_dir: the directory in which to write the report
      :return: the key metric value, it's assumed higher is better.
      """
  
      pass
  
imports: from abc import ABC
  from pathlib import Path
  from typing import Any, Dict
  from transfer_nlp.plugins.config import ExperimentConfig
label_desc: Use image node_id 1 for calling the ReporterABC obj's underlying member method code with example usage: obj.report(experiment_name, experiment, report_dir) without return types