code: def _check_metrics(
      self, metric_names: Union[str, List[str]]
  ) -> List[str]:
      if isinstance(metric_names, str):
          metric_names = [metric_names]
  
      if any(
          [
              metric not in self._allowed_metrics
              for metric in metric_names
          ]
      ):
          raise ValueError(
              f"Metrics allowed for question {self._question_name}: {list(self._allowed_metrics.keys())}"
          )
      return metric_names
  
imports: from abc import ABC, abstractmethod
  from typing import TYPE_CHECKING, Any, Callable, Dict, Hashable, List, Tuple, Union
  import pandas
  from argilla.client.feedback.schemas.remote.shared import RemoteSchema
  from argilla.pydantic_v1 import BaseModel
label_desc: Use image node_id 4 for calling the MetricBase obj's underlying member method code with example usage: obj._check_metrics(metric_names) and returns: metric_names