class_docstr: 注意 metrics 的输入只支持：Dict[str, Metric]；
  并且通过对 update() , reset() , get_metric() 函数的封装，实现支持 fastNLP 的 metric 以及 torchmetrics 或者更多。
docstr: 调用各个 metric 得到 metric 的结果。并使用 {'metric_name1': metric_results, 'metric_name2': metric_results} 的形式
      返回。
  
  :return:
code: def get_metric(self) -> Dict:
      """
      调用各个 metric 得到 metric 的结果。并使用 {'metric_name1': metric_results, 'metric_name2': metric_results} 的形式
          返回。
  
      :return:
      """
      results = {}
      for metric_name, metric in zip(self._metric_names, self._metrics):
          if isinstance(metric, Metric):
              _results = metric.get_metric()
          elif _is_allennlp_metric(metric):
              _results = metric.get_metric(reset=False)
          elif _is_torchmetrics_metric(metric):
              _results = metric.compute()
          elif _is_paddle_metric(metric):
              _results = metric.accumulate()
          else:
              raise RuntimeError(
                  f"Not support `{type(metric)}` for now."
              )
          if _results is not None:
              results[metric_name] = _results
          else:
              logger.warning_once(
                  f"Metric:{metric_name} returns None when getting metric results."
              )
      return results
  
imports: from typing import Union, List, Optional, Dict, Callable, BinaryIO
  import os
  from pathlib import Path
  import io
  from dataclasses import is_dataclass
  from fastNLP.core.drivers import Driver, TorchDriver
  from ..drivers.choose_driver import choose_driver
  from .loops import Loop, EvaluateBatchLoop
  from fastNLP.core.utils import auto_param_call, dataclass_to_dict, match_and_substitute_params, f_rich_progress, flat_nest_dict, f_tqdm_progress
  from fastNLP.core.metrics import Metric
  from fastNLP.core.metrics.utils import _is_torchmetrics_metric, _is_paddle_metric, _is_allennlp_metric
  from fastNLP.core.controllers.utils.utils import _TruncatedDataLoader
  from fastNLP.core.utils.utils import _check_valid_parameters_number
  from fastNLP.core.log import logger
  from fastNLP.envs import FASTNLP_MODEL_FILENAME
label_desc: Use image node_id 4 for calling the _MetricsWrapper obj's underlying member method code with example usage: obj.get_metric() and returns: results