// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: google/cloud/automl/v1beta1/model_evaluation.proto

package com.google.cloud.automl.v1beta1;

public interface ModelEvaluationOrBuilder
    extends
    // @@protoc_insertion_point(interface_extends:google.cloud.automl.v1beta1.ModelEvaluation)
    com.google.protobuf.MessageOrBuilder {

  /**
   *
   *
   * <pre>
   * Model evaluation metrics for image, text, video and tables
   * classification.
   * Tables problem is considered a classification when the target column
   * has either CATEGORY or ARRAY(CATEGORY) DataType.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.ClassificationEvaluationMetrics classification_evaluation_metrics = 8;
   * </code>
   */
  boolean hasClassificationEvaluationMetrics();
  /**
   *
   *
   * <pre>
   * Model evaluation metrics for image, text, video and tables
   * classification.
   * Tables problem is considered a classification when the target column
   * has either CATEGORY or ARRAY(CATEGORY) DataType.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.ClassificationEvaluationMetrics classification_evaluation_metrics = 8;
   * </code>
   */
  com.google.cloud.automl.v1beta1.ClassificationProto.ClassificationEvaluationMetrics
      getClassificationEvaluationMetrics();
  /**
   *
   *
   * <pre>
   * Model evaluation metrics for image, text, video and tables
   * classification.
   * Tables problem is considered a classification when the target column
   * has either CATEGORY or ARRAY(CATEGORY) DataType.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.ClassificationEvaluationMetrics classification_evaluation_metrics = 8;
   * </code>
   */
  com.google.cloud.automl.v1beta1.ClassificationProto.ClassificationEvaluationMetricsOrBuilder
      getClassificationEvaluationMetricsOrBuilder();

  /**
   *
   *
   * <pre>
   * Model evaluation metrics for Tables regression.
   * Tables problem is considered a regression when the target column
   * has FLOAT64 DataType.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.RegressionEvaluationMetrics regression_evaluation_metrics = 24;
   * </code>
   */
  boolean hasRegressionEvaluationMetrics();
  /**
   *
   *
   * <pre>
   * Model evaluation metrics for Tables regression.
   * Tables problem is considered a regression when the target column
   * has FLOAT64 DataType.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.RegressionEvaluationMetrics regression_evaluation_metrics = 24;
   * </code>
   */
  com.google.cloud.automl.v1beta1.RegressionProto.RegressionEvaluationMetrics
      getRegressionEvaluationMetrics();
  /**
   *
   *
   * <pre>
   * Model evaluation metrics for Tables regression.
   * Tables problem is considered a regression when the target column
   * has FLOAT64 DataType.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.RegressionEvaluationMetrics regression_evaluation_metrics = 24;
   * </code>
   */
  com.google.cloud.automl.v1beta1.RegressionProto.RegressionEvaluationMetricsOrBuilder
      getRegressionEvaluationMetricsOrBuilder();

  /**
   *
   *
   * <pre>
   * Model evaluation metrics for translation.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.TranslationEvaluationMetrics translation_evaluation_metrics = 9;
   * </code>
   */
  boolean hasTranslationEvaluationMetrics();
  /**
   *
   *
   * <pre>
   * Model evaluation metrics for translation.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.TranslationEvaluationMetrics translation_evaluation_metrics = 9;
   * </code>
   */
  com.google.cloud.automl.v1beta1.TranslationEvaluationMetrics getTranslationEvaluationMetrics();
  /**
   *
   *
   * <pre>
   * Model evaluation metrics for translation.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.TranslationEvaluationMetrics translation_evaluation_metrics = 9;
   * </code>
   */
  com.google.cloud.automl.v1beta1.TranslationEvaluationMetricsOrBuilder
      getTranslationEvaluationMetricsOrBuilder();

  /**
   *
   *
   * <pre>
   * Model evaluation metrics for image object detection.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.ImageObjectDetectionEvaluationMetrics image_object_detection_evaluation_metrics = 12;
   * </code>
   */
  boolean hasImageObjectDetectionEvaluationMetrics();
  /**
   *
   *
   * <pre>
   * Model evaluation metrics for image object detection.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.ImageObjectDetectionEvaluationMetrics image_object_detection_evaluation_metrics = 12;
   * </code>
   */
  com.google.cloud.automl.v1beta1.ImageObjectDetectionEvaluationMetrics
      getImageObjectDetectionEvaluationMetrics();
  /**
   *
   *
   * <pre>
   * Model evaluation metrics for image object detection.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.ImageObjectDetectionEvaluationMetrics image_object_detection_evaluation_metrics = 12;
   * </code>
   */
  com.google.cloud.automl.v1beta1.ImageObjectDetectionEvaluationMetricsOrBuilder
      getImageObjectDetectionEvaluationMetricsOrBuilder();

  /**
   *
   *
   * <pre>
   * Evaluation metrics for text sentiment models.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.TextSentimentEvaluationMetrics text_sentiment_evaluation_metrics = 11;
   * </code>
   */
  boolean hasTextSentimentEvaluationMetrics();
  /**
   *
   *
   * <pre>
   * Evaluation metrics for text sentiment models.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.TextSentimentEvaluationMetrics text_sentiment_evaluation_metrics = 11;
   * </code>
   */
  com.google.cloud.automl.v1beta1.TextSentimentProto.TextSentimentEvaluationMetrics
      getTextSentimentEvaluationMetrics();
  /**
   *
   *
   * <pre>
   * Evaluation metrics for text sentiment models.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.TextSentimentEvaluationMetrics text_sentiment_evaluation_metrics = 11;
   * </code>
   */
  com.google.cloud.automl.v1beta1.TextSentimentProto.TextSentimentEvaluationMetricsOrBuilder
      getTextSentimentEvaluationMetricsOrBuilder();

  /**
   *
   *
   * <pre>
   * Evaluation metrics for text extraction models.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.TextExtractionEvaluationMetrics text_extraction_evaluation_metrics = 13;
   * </code>
   */
  boolean hasTextExtractionEvaluationMetrics();
  /**
   *
   *
   * <pre>
   * Evaluation metrics for text extraction models.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.TextExtractionEvaluationMetrics text_extraction_evaluation_metrics = 13;
   * </code>
   */
  com.google.cloud.automl.v1beta1.TextExtractionEvaluationMetrics
      getTextExtractionEvaluationMetrics();
  /**
   *
   *
   * <pre>
   * Evaluation metrics for text extraction models.
   * </pre>
   *
   * <code>
   * .google.cloud.automl.v1beta1.TextExtractionEvaluationMetrics text_extraction_evaluation_metrics = 13;
   * </code>
   */
  com.google.cloud.automl.v1beta1.TextExtractionEvaluationMetricsOrBuilder
      getTextExtractionEvaluationMetricsOrBuilder();

  /**
   *
   *
   * <pre>
   * Output only.
   * Resource name of the model evaluation.
   * Format:
   * `projects/{project_id}/locations/{location_id}/models/{model_id}/modelEvaluations/{model_evaluation_id}`
   * </pre>
   *
   * <code>string name = 1;</code>
   */
  java.lang.String getName();
  /**
   *
   *
   * <pre>
   * Output only.
   * Resource name of the model evaluation.
   * Format:
   * `projects/{project_id}/locations/{location_id}/models/{model_id}/modelEvaluations/{model_evaluation_id}`
   * </pre>
   *
   * <code>string name = 1;</code>
   */
  com.google.protobuf.ByteString getNameBytes();

  /**
   *
   *
   * <pre>
   * Output only.
   * The ID of the annotation spec that the model evaluation applies to. The
   * The ID is empty for the overall model evaluation.
   * For Tables classification these are the distinct values of the target
   * column at the moment of the evaluation; for this problem annotation specs
   * in the dataset do not exist.
   * NOTE: Currently there is no way to obtain the display_name of the
   * annotation spec from its ID. To see the display_names, review the model
   * evaluations in the UI.
   * </pre>
   *
   * <code>string annotation_spec_id = 2;</code>
   */
  java.lang.String getAnnotationSpecId();
  /**
   *
   *
   * <pre>
   * Output only.
   * The ID of the annotation spec that the model evaluation applies to. The
   * The ID is empty for the overall model evaluation.
   * For Tables classification these are the distinct values of the target
   * column at the moment of the evaluation; for this problem annotation specs
   * in the dataset do not exist.
   * NOTE: Currently there is no way to obtain the display_name of the
   * annotation spec from its ID. To see the display_names, review the model
   * evaluations in the UI.
   * </pre>
   *
   * <code>string annotation_spec_id = 2;</code>
   */
  com.google.protobuf.ByteString getAnnotationSpecIdBytes();

  /**
   *
   *
   * <pre>
   * Output only. The value of [AnnotationSpec.display_name][google.cloud.automl.v1beta1.AnnotationSpec.display_name] when the model
   * was trained. Because this field returns a value at model training time,
   * for different models trained using the same dataset, the returned value
   * could be different as model owner could update the display_name between
   * any two model training.
   * The display_name is empty for the overall model evaluation.
   * </pre>
   *
   * <code>string display_name = 15;</code>
   */
  java.lang.String getDisplayName();
  /**
   *
   *
   * <pre>
   * Output only. The value of [AnnotationSpec.display_name][google.cloud.automl.v1beta1.AnnotationSpec.display_name] when the model
   * was trained. Because this field returns a value at model training time,
   * for different models trained using the same dataset, the returned value
   * could be different as model owner could update the display_name between
   * any two model training.
   * The display_name is empty for the overall model evaluation.
   * </pre>
   *
   * <code>string display_name = 15;</code>
   */
  com.google.protobuf.ByteString getDisplayNameBytes();

  /**
   *
   *
   * <pre>
   * Output only.
   * Timestamp when this model evaluation was created.
   * </pre>
   *
   * <code>.google.protobuf.Timestamp create_time = 5;</code>
   */
  boolean hasCreateTime();
  /**
   *
   *
   * <pre>
   * Output only.
   * Timestamp when this model evaluation was created.
   * </pre>
   *
   * <code>.google.protobuf.Timestamp create_time = 5;</code>
   */
  com.google.protobuf.Timestamp getCreateTime();
  /**
   *
   *
   * <pre>
   * Output only.
   * Timestamp when this model evaluation was created.
   * </pre>
   *
   * <code>.google.protobuf.Timestamp create_time = 5;</code>
   */
  com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder();

  /**
   *
   *
   * <pre>
   * Output only.
   * The number of examples used for model evaluation, i.e. for
   * which ground truth from time of model creation is compared against the
   * predicted annotations created by the model.
   * For overall ModelEvaluation (i.e. with annotation_spec_id not set) this is
   * the total number of all examples used for evaluation.
   * Otherwise, this is the count of examples that according to the ground
   * truth were annotated by the
   * [annotation_spec_id][google.cloud.automl.v1beta1.ModelEvaluation.annotation_spec_id].
   * </pre>
   *
   * <code>int32 evaluated_example_count = 6;</code>
   */
  int getEvaluatedExampleCount();

  public com.google.cloud.automl.v1beta1.ModelEvaluation.MetricsCase getMetricsCase();
}
