class_docstr: Internal class for representing validation result per metric.
  Not user facing, used for organizing metric failures and generating failure message
  more conveniently.
  :param metric_name: String representing the metric name
  :param candidate_metric_value: value of metric for candidate model
  :param metric_threshold: :py:class: `MetricThreshold<mlflow.models.validation.MetricThreshold>`
                           The MetricThreshold for the metric.
  :param baseline_metric_value: value of metric for baseline model
class_docstr_tok: ["Internal","class","for","representing","validation","result","per","metric",".","Not","user","facing",",","used","for","organizing","metric","failures","and","generating","failure","message","more","conveniently",".",":","param","metric_name",":","String","representing","the","metric","name",":","param","candidate_metric_value",":","value","of","metric","for","candidate","model",":","param","metric_threshold",":",":","py",":","class",":","`","MetricThreshold","<","mlflow.models.validation.MetricThreshold",">","`","The","MetricThreshold","for","the","metric",".",":","param","baseline_metric_value",":","value","of","metric","for","baseline","model"]
code: def __init__(
      self,
      metric_name,
      candidate_metric_value,
      metric_threshold,
      baseline_metric_value=None,
  ):
      self.metric_name = metric_name
      self.candidate_metric_value = candidate_metric_value
      self.baseline_metric_value = baseline_metric_value
      self.metric_threshold = metric_threshold
  
imports: from mlflow.exceptions import MlflowException
  from mlflow.protos.databricks_pb2 import BAD_REQUEST, INVALID_PARAMETER_VALUE
  from mlflow.utils.annotations import deprecated
label_desc: Use image node_id 1 to create a new _MetricValidationResult object  with example: obj = _MetricValidationResult(metric_name, candidate_metric_value, metric_threshold, baseline_metric_value)