cloud.google.com/go/aiplatform@v1.106.0/apiv1beta1/aiplatformpb/model_monitoring.pb.go (about)

     1  // Copyright 2025 Google LLC
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by protoc-gen-go. DO NOT EDIT.
    16  // versions:
    17  // 	protoc-gen-go v1.35.2
    18  // 	protoc        v4.25.7
    19  // source: google/cloud/aiplatform/v1beta1/model_monitoring.proto
    20  
    21  package aiplatformpb
    22  
    23  import (
    24  	_ "google.golang.org/genproto/googleapis/api/annotations"
    25  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    26  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    27  	reflect "reflect"
    28  	sync "sync"
    29  )
    30  
    31  const (
    32  	// Verify that this generated code is sufficiently up-to-date.
    33  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    34  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    35  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    36  )
    37  
    38  // The storage format of the predictions generated BatchPrediction job.
    39  type ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat int32
    40  
    41  const (
    42  	// Should not be set.
    43  	ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PREDICTION_FORMAT_UNSPECIFIED ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat = 0
    44  	// Predictions are in JSONL files.
    45  	ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_JSONL ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat = 2
    46  	// Predictions are in BigQuery.
    47  	ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_BIGQUERY ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat = 3
    48  )
    49  
    50  // Enum value maps for ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat.
    51  var (
    52  	ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat_name = map[int32]string{
    53  		0: "PREDICTION_FORMAT_UNSPECIFIED",
    54  		2: "JSONL",
    55  		3: "BIGQUERY",
    56  	}
    57  	ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat_value = map[string]int32{
    58  		"PREDICTION_FORMAT_UNSPECIFIED": 0,
    59  		"JSONL":                         2,
    60  		"BIGQUERY":                      3,
    61  	}
    62  )
    63  
    64  func (x ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat) Enum() *ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat {
    65  	p := new(ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat)
    66  	*p = x
    67  	return p
    68  }
    69  
    70  func (x ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat) String() string {
    71  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    72  }
    73  
    74  func (ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat) Descriptor() protoreflect.EnumDescriptor {
    75  	return file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_enumTypes[0].Descriptor()
    76  }
    77  
    78  func (ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat) Type() protoreflect.EnumType {
    79  	return &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_enumTypes[0]
    80  }
    81  
    82  func (x ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat) Number() protoreflect.EnumNumber {
    83  	return protoreflect.EnumNumber(x)
    84  }
    85  
    86  // Deprecated: Use ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat.Descriptor instead.
    87  func (ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat) EnumDescriptor() ([]byte, []int) {
    88  	return file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescGZIP(), []int{1, 3, 0, 0}
    89  }
    90  
    91  // The model monitoring configuration used for Batch Prediction Job.
    92  type ModelMonitoringConfig struct {
    93  	state         protoimpl.MessageState
    94  	sizeCache     protoimpl.SizeCache
    95  	unknownFields protoimpl.UnknownFields
    96  
    97  	// Model monitoring objective config.
    98  	ObjectiveConfigs []*ModelMonitoringObjectiveConfig `protobuf:"bytes,3,rep,name=objective_configs,json=objectiveConfigs,proto3" json:"objective_configs,omitempty"`
    99  	// Model monitoring alert config.
   100  	AlertConfig *ModelMonitoringAlertConfig `protobuf:"bytes,2,opt,name=alert_config,json=alertConfig,proto3" json:"alert_config,omitempty"`
   101  	// YAML schema file uri in Cloud Storage describing the format of a single
   102  	// instance that you want Tensorflow Data Validation (TFDV) to analyze.
   103  	//
   104  	// If there are any data type differences between predict instance and TFDV
   105  	// instance, this field can be used to override the schema.
   106  	// For models trained with Vertex AI, this field must be set as all the
   107  	// fields in predict instance formatted as string.
   108  	AnalysisInstanceSchemaUri string `protobuf:"bytes,4,opt,name=analysis_instance_schema_uri,json=analysisInstanceSchemaUri,proto3" json:"analysis_instance_schema_uri,omitempty"`
   109  	// A Google Cloud Storage location for batch prediction model monitoring to
   110  	// dump statistics and anomalies.
   111  	// If not provided, a folder will be created in customer project to hold
   112  	// statistics and anomalies.
   113  	StatsAnomaliesBaseDirectory *GcsDestination `protobuf:"bytes,5,opt,name=stats_anomalies_base_directory,json=statsAnomaliesBaseDirectory,proto3" json:"stats_anomalies_base_directory,omitempty"`
   114  }
   115  
   116  func (x *ModelMonitoringConfig) Reset() {
   117  	*x = ModelMonitoringConfig{}
   118  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[0]
   119  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   120  	ms.StoreMessageInfo(mi)
   121  }
   122  
   123  func (x *ModelMonitoringConfig) String() string {
   124  	return protoimpl.X.MessageStringOf(x)
   125  }
   126  
   127  func (*ModelMonitoringConfig) ProtoMessage() {}
   128  
   129  func (x *ModelMonitoringConfig) ProtoReflect() protoreflect.Message {
   130  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[0]
   131  	if x != nil {
   132  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   133  		if ms.LoadMessageInfo() == nil {
   134  			ms.StoreMessageInfo(mi)
   135  		}
   136  		return ms
   137  	}
   138  	return mi.MessageOf(x)
   139  }
   140  
   141  // Deprecated: Use ModelMonitoringConfig.ProtoReflect.Descriptor instead.
   142  func (*ModelMonitoringConfig) Descriptor() ([]byte, []int) {
   143  	return file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescGZIP(), []int{0}
   144  }
   145  
   146  func (x *ModelMonitoringConfig) GetObjectiveConfigs() []*ModelMonitoringObjectiveConfig {
   147  	if x != nil {
   148  		return x.ObjectiveConfigs
   149  	}
   150  	return nil
   151  }
   152  
   153  func (x *ModelMonitoringConfig) GetAlertConfig() *ModelMonitoringAlertConfig {
   154  	if x != nil {
   155  		return x.AlertConfig
   156  	}
   157  	return nil
   158  }
   159  
   160  func (x *ModelMonitoringConfig) GetAnalysisInstanceSchemaUri() string {
   161  	if x != nil {
   162  		return x.AnalysisInstanceSchemaUri
   163  	}
   164  	return ""
   165  }
   166  
   167  func (x *ModelMonitoringConfig) GetStatsAnomaliesBaseDirectory() *GcsDestination {
   168  	if x != nil {
   169  		return x.StatsAnomaliesBaseDirectory
   170  	}
   171  	return nil
   172  }
   173  
   174  // The objective configuration for model monitoring, including the information
   175  // needed to detect anomalies for one particular model.
   176  type ModelMonitoringObjectiveConfig struct {
   177  	state         protoimpl.MessageState
   178  	sizeCache     protoimpl.SizeCache
   179  	unknownFields protoimpl.UnknownFields
   180  
   181  	// Training dataset for models. This field has to be set only if
   182  	// TrainingPredictionSkewDetectionConfig is specified.
   183  	TrainingDataset *ModelMonitoringObjectiveConfig_TrainingDataset `protobuf:"bytes,1,opt,name=training_dataset,json=trainingDataset,proto3" json:"training_dataset,omitempty"`
   184  	// The config for skew between training data and prediction data.
   185  	TrainingPredictionSkewDetectionConfig *ModelMonitoringObjectiveConfig_TrainingPredictionSkewDetectionConfig `protobuf:"bytes,2,opt,name=training_prediction_skew_detection_config,json=trainingPredictionSkewDetectionConfig,proto3" json:"training_prediction_skew_detection_config,omitempty"`
   186  	// The config for drift of prediction data.
   187  	PredictionDriftDetectionConfig *ModelMonitoringObjectiveConfig_PredictionDriftDetectionConfig `protobuf:"bytes,3,opt,name=prediction_drift_detection_config,json=predictionDriftDetectionConfig,proto3" json:"prediction_drift_detection_config,omitempty"`
   188  	// The config for integrating with Vertex Explainable AI.
   189  	ExplanationConfig *ModelMonitoringObjectiveConfig_ExplanationConfig `protobuf:"bytes,5,opt,name=explanation_config,json=explanationConfig,proto3" json:"explanation_config,omitempty"`
   190  }
   191  
   192  func (x *ModelMonitoringObjectiveConfig) Reset() {
   193  	*x = ModelMonitoringObjectiveConfig{}
   194  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[1]
   195  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   196  	ms.StoreMessageInfo(mi)
   197  }
   198  
   199  func (x *ModelMonitoringObjectiveConfig) String() string {
   200  	return protoimpl.X.MessageStringOf(x)
   201  }
   202  
   203  func (*ModelMonitoringObjectiveConfig) ProtoMessage() {}
   204  
   205  func (x *ModelMonitoringObjectiveConfig) ProtoReflect() protoreflect.Message {
   206  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[1]
   207  	if x != nil {
   208  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   209  		if ms.LoadMessageInfo() == nil {
   210  			ms.StoreMessageInfo(mi)
   211  		}
   212  		return ms
   213  	}
   214  	return mi.MessageOf(x)
   215  }
   216  
   217  // Deprecated: Use ModelMonitoringObjectiveConfig.ProtoReflect.Descriptor instead.
   218  func (*ModelMonitoringObjectiveConfig) Descriptor() ([]byte, []int) {
   219  	return file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescGZIP(), []int{1}
   220  }
   221  
   222  func (x *ModelMonitoringObjectiveConfig) GetTrainingDataset() *ModelMonitoringObjectiveConfig_TrainingDataset {
   223  	if x != nil {
   224  		return x.TrainingDataset
   225  	}
   226  	return nil
   227  }
   228  
   229  func (x *ModelMonitoringObjectiveConfig) GetTrainingPredictionSkewDetectionConfig() *ModelMonitoringObjectiveConfig_TrainingPredictionSkewDetectionConfig {
   230  	if x != nil {
   231  		return x.TrainingPredictionSkewDetectionConfig
   232  	}
   233  	return nil
   234  }
   235  
   236  func (x *ModelMonitoringObjectiveConfig) GetPredictionDriftDetectionConfig() *ModelMonitoringObjectiveConfig_PredictionDriftDetectionConfig {
   237  	if x != nil {
   238  		return x.PredictionDriftDetectionConfig
   239  	}
   240  	return nil
   241  }
   242  
   243  func (x *ModelMonitoringObjectiveConfig) GetExplanationConfig() *ModelMonitoringObjectiveConfig_ExplanationConfig {
   244  	if x != nil {
   245  		return x.ExplanationConfig
   246  	}
   247  	return nil
   248  }
   249  
   250  // The alert config for model monitoring.
   251  type ModelMonitoringAlertConfig struct {
   252  	state         protoimpl.MessageState
   253  	sizeCache     protoimpl.SizeCache
   254  	unknownFields protoimpl.UnknownFields
   255  
   256  	// Types that are assignable to Alert:
   257  	//
   258  	//	*ModelMonitoringAlertConfig_EmailAlertConfig_
   259  	Alert isModelMonitoringAlertConfig_Alert `protobuf_oneof:"alert"`
   260  	// Dump the anomalies to Cloud Logging. The anomalies will be put to json
   261  	// payload encoded from proto
   262  	// [google.cloud.aiplatform.logging.ModelMonitoringAnomaliesLogEntry][].
   263  	// This can be further sinked to Pub/Sub or any other services supported
   264  	// by Cloud Logging.
   265  	EnableLogging bool `protobuf:"varint,2,opt,name=enable_logging,json=enableLogging,proto3" json:"enable_logging,omitempty"`
   266  	// Resource names of the NotificationChannels to send alert.
   267  	// Must be of the format
   268  	// `projects/<project_id_or_number>/notificationChannels/<channel_id>`
   269  	NotificationChannels []string `protobuf:"bytes,3,rep,name=notification_channels,json=notificationChannels,proto3" json:"notification_channels,omitempty"`
   270  }
   271  
   272  func (x *ModelMonitoringAlertConfig) Reset() {
   273  	*x = ModelMonitoringAlertConfig{}
   274  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[2]
   275  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   276  	ms.StoreMessageInfo(mi)
   277  }
   278  
   279  func (x *ModelMonitoringAlertConfig) String() string {
   280  	return protoimpl.X.MessageStringOf(x)
   281  }
   282  
   283  func (*ModelMonitoringAlertConfig) ProtoMessage() {}
   284  
   285  func (x *ModelMonitoringAlertConfig) ProtoReflect() protoreflect.Message {
   286  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[2]
   287  	if x != nil {
   288  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   289  		if ms.LoadMessageInfo() == nil {
   290  			ms.StoreMessageInfo(mi)
   291  		}
   292  		return ms
   293  	}
   294  	return mi.MessageOf(x)
   295  }
   296  
   297  // Deprecated: Use ModelMonitoringAlertConfig.ProtoReflect.Descriptor instead.
   298  func (*ModelMonitoringAlertConfig) Descriptor() ([]byte, []int) {
   299  	return file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescGZIP(), []int{2}
   300  }
   301  
   302  func (m *ModelMonitoringAlertConfig) GetAlert() isModelMonitoringAlertConfig_Alert {
   303  	if m != nil {
   304  		return m.Alert
   305  	}
   306  	return nil
   307  }
   308  
   309  func (x *ModelMonitoringAlertConfig) GetEmailAlertConfig() *ModelMonitoringAlertConfig_EmailAlertConfig {
   310  	if x, ok := x.GetAlert().(*ModelMonitoringAlertConfig_EmailAlertConfig_); ok {
   311  		return x.EmailAlertConfig
   312  	}
   313  	return nil
   314  }
   315  
   316  func (x *ModelMonitoringAlertConfig) GetEnableLogging() bool {
   317  	if x != nil {
   318  		return x.EnableLogging
   319  	}
   320  	return false
   321  }
   322  
   323  func (x *ModelMonitoringAlertConfig) GetNotificationChannels() []string {
   324  	if x != nil {
   325  		return x.NotificationChannels
   326  	}
   327  	return nil
   328  }
   329  
   330  type isModelMonitoringAlertConfig_Alert interface {
   331  	isModelMonitoringAlertConfig_Alert()
   332  }
   333  
   334  type ModelMonitoringAlertConfig_EmailAlertConfig_ struct {
   335  	// Email alert config.
   336  	EmailAlertConfig *ModelMonitoringAlertConfig_EmailAlertConfig `protobuf:"bytes,1,opt,name=email_alert_config,json=emailAlertConfig,proto3,oneof"`
   337  }
   338  
   339  func (*ModelMonitoringAlertConfig_EmailAlertConfig_) isModelMonitoringAlertConfig_Alert() {}
   340  
   341  // The config for feature monitoring threshold.
   342  type ThresholdConfig struct {
   343  	state         protoimpl.MessageState
   344  	sizeCache     protoimpl.SizeCache
   345  	unknownFields protoimpl.UnknownFields
   346  
   347  	// Types that are assignable to Threshold:
   348  	//
   349  	//	*ThresholdConfig_Value
   350  	Threshold isThresholdConfig_Threshold `protobuf_oneof:"threshold"`
   351  }
   352  
   353  func (x *ThresholdConfig) Reset() {
   354  	*x = ThresholdConfig{}
   355  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[3]
   356  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   357  	ms.StoreMessageInfo(mi)
   358  }
   359  
   360  func (x *ThresholdConfig) String() string {
   361  	return protoimpl.X.MessageStringOf(x)
   362  }
   363  
   364  func (*ThresholdConfig) ProtoMessage() {}
   365  
   366  func (x *ThresholdConfig) ProtoReflect() protoreflect.Message {
   367  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[3]
   368  	if x != nil {
   369  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   370  		if ms.LoadMessageInfo() == nil {
   371  			ms.StoreMessageInfo(mi)
   372  		}
   373  		return ms
   374  	}
   375  	return mi.MessageOf(x)
   376  }
   377  
   378  // Deprecated: Use ThresholdConfig.ProtoReflect.Descriptor instead.
   379  func (*ThresholdConfig) Descriptor() ([]byte, []int) {
   380  	return file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescGZIP(), []int{3}
   381  }
   382  
   383  func (m *ThresholdConfig) GetThreshold() isThresholdConfig_Threshold {
   384  	if m != nil {
   385  		return m.Threshold
   386  	}
   387  	return nil
   388  }
   389  
   390  func (x *ThresholdConfig) GetValue() float64 {
   391  	if x, ok := x.GetThreshold().(*ThresholdConfig_Value); ok {
   392  		return x.Value
   393  	}
   394  	return 0
   395  }
   396  
   397  type isThresholdConfig_Threshold interface {
   398  	isThresholdConfig_Threshold()
   399  }
   400  
   401  type ThresholdConfig_Value struct {
   402  	// Specify a threshold value that can trigger the alert.
   403  	// If this threshold config is for feature distribution distance:
   404  	//  1. For categorical feature, the distribution distance is calculated by
   405  	//     L-inifinity norm.
   406  	//  2. For numerical feature, the distribution distance is calculated by
   407  	//     Jensen–Shannon divergence.
   408  	//
   409  	// Each feature must have a non-zero threshold if they need to be monitored.
   410  	// Otherwise no alert will be triggered for that feature.
   411  	Value float64 `protobuf:"fixed64,1,opt,name=value,proto3,oneof"`
   412  }
   413  
   414  func (*ThresholdConfig_Value) isThresholdConfig_Threshold() {}
   415  
   416  // Sampling Strategy for logging, can be for both training and prediction
   417  // dataset.
   418  type SamplingStrategy struct {
   419  	state         protoimpl.MessageState
   420  	sizeCache     protoimpl.SizeCache
   421  	unknownFields protoimpl.UnknownFields
   422  
   423  	// Random sample config. Will support more sampling strategies later.
   424  	RandomSampleConfig *SamplingStrategy_RandomSampleConfig `protobuf:"bytes,1,opt,name=random_sample_config,json=randomSampleConfig,proto3" json:"random_sample_config,omitempty"`
   425  }
   426  
   427  func (x *SamplingStrategy) Reset() {
   428  	*x = SamplingStrategy{}
   429  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[4]
   430  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   431  	ms.StoreMessageInfo(mi)
   432  }
   433  
   434  func (x *SamplingStrategy) String() string {
   435  	return protoimpl.X.MessageStringOf(x)
   436  }
   437  
   438  func (*SamplingStrategy) ProtoMessage() {}
   439  
   440  func (x *SamplingStrategy) ProtoReflect() protoreflect.Message {
   441  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[4]
   442  	if x != nil {
   443  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   444  		if ms.LoadMessageInfo() == nil {
   445  			ms.StoreMessageInfo(mi)
   446  		}
   447  		return ms
   448  	}
   449  	return mi.MessageOf(x)
   450  }
   451  
   452  // Deprecated: Use SamplingStrategy.ProtoReflect.Descriptor instead.
   453  func (*SamplingStrategy) Descriptor() ([]byte, []int) {
   454  	return file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescGZIP(), []int{4}
   455  }
   456  
   457  func (x *SamplingStrategy) GetRandomSampleConfig() *SamplingStrategy_RandomSampleConfig {
   458  	if x != nil {
   459  		return x.RandomSampleConfig
   460  	}
   461  	return nil
   462  }
   463  
   464  // Training Dataset information.
   465  type ModelMonitoringObjectiveConfig_TrainingDataset struct {
   466  	state         protoimpl.MessageState
   467  	sizeCache     protoimpl.SizeCache
   468  	unknownFields protoimpl.UnknownFields
   469  
   470  	// Types that are assignable to DataSource:
   471  	//
   472  	//	*ModelMonitoringObjectiveConfig_TrainingDataset_Dataset
   473  	//	*ModelMonitoringObjectiveConfig_TrainingDataset_GcsSource
   474  	//	*ModelMonitoringObjectiveConfig_TrainingDataset_BigquerySource
   475  	DataSource isModelMonitoringObjectiveConfig_TrainingDataset_DataSource `protobuf_oneof:"data_source"`
   476  	// Data format of the dataset, only applicable if the input is from
   477  	// Google Cloud Storage.
   478  	// The possible formats are:
   479  	//
   480  	// "tf-record"
   481  	// The source file is a TFRecord file.
   482  	//
   483  	// "csv"
   484  	// The source file is a CSV file.
   485  	// "jsonl"
   486  	// The source file is a JSONL file.
   487  	DataFormat string `protobuf:"bytes,2,opt,name=data_format,json=dataFormat,proto3" json:"data_format,omitempty"`
   488  	// The target field name the model is to predict.
   489  	// This field will be excluded when doing Predict and (or) Explain for the
   490  	// training data.
   491  	TargetField string `protobuf:"bytes,6,opt,name=target_field,json=targetField,proto3" json:"target_field,omitempty"`
   492  	// Strategy to sample data from Training Dataset.
   493  	// If not set, we process the whole dataset.
   494  	LoggingSamplingStrategy *SamplingStrategy `protobuf:"bytes,7,opt,name=logging_sampling_strategy,json=loggingSamplingStrategy,proto3" json:"logging_sampling_strategy,omitempty"`
   495  }
   496  
   497  func (x *ModelMonitoringObjectiveConfig_TrainingDataset) Reset() {
   498  	*x = ModelMonitoringObjectiveConfig_TrainingDataset{}
   499  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[5]
   500  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   501  	ms.StoreMessageInfo(mi)
   502  }
   503  
   504  func (x *ModelMonitoringObjectiveConfig_TrainingDataset) String() string {
   505  	return protoimpl.X.MessageStringOf(x)
   506  }
   507  
   508  func (*ModelMonitoringObjectiveConfig_TrainingDataset) ProtoMessage() {}
   509  
   510  func (x *ModelMonitoringObjectiveConfig_TrainingDataset) ProtoReflect() protoreflect.Message {
   511  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[5]
   512  	if x != nil {
   513  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   514  		if ms.LoadMessageInfo() == nil {
   515  			ms.StoreMessageInfo(mi)
   516  		}
   517  		return ms
   518  	}
   519  	return mi.MessageOf(x)
   520  }
   521  
   522  // Deprecated: Use ModelMonitoringObjectiveConfig_TrainingDataset.ProtoReflect.Descriptor instead.
   523  func (*ModelMonitoringObjectiveConfig_TrainingDataset) Descriptor() ([]byte, []int) {
   524  	return file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescGZIP(), []int{1, 0}
   525  }
   526  
   527  func (m *ModelMonitoringObjectiveConfig_TrainingDataset) GetDataSource() isModelMonitoringObjectiveConfig_TrainingDataset_DataSource {
   528  	if m != nil {
   529  		return m.DataSource
   530  	}
   531  	return nil
   532  }
   533  
   534  func (x *ModelMonitoringObjectiveConfig_TrainingDataset) GetDataset() string {
   535  	if x, ok := x.GetDataSource().(*ModelMonitoringObjectiveConfig_TrainingDataset_Dataset); ok {
   536  		return x.Dataset
   537  	}
   538  	return ""
   539  }
   540  
   541  func (x *ModelMonitoringObjectiveConfig_TrainingDataset) GetGcsSource() *GcsSource {
   542  	if x, ok := x.GetDataSource().(*ModelMonitoringObjectiveConfig_TrainingDataset_GcsSource); ok {
   543  		return x.GcsSource
   544  	}
   545  	return nil
   546  }
   547  
   548  func (x *ModelMonitoringObjectiveConfig_TrainingDataset) GetBigquerySource() *BigQuerySource {
   549  	if x, ok := x.GetDataSource().(*ModelMonitoringObjectiveConfig_TrainingDataset_BigquerySource); ok {
   550  		return x.BigquerySource
   551  	}
   552  	return nil
   553  }
   554  
   555  func (x *ModelMonitoringObjectiveConfig_TrainingDataset) GetDataFormat() string {
   556  	if x != nil {
   557  		return x.DataFormat
   558  	}
   559  	return ""
   560  }
   561  
   562  func (x *ModelMonitoringObjectiveConfig_TrainingDataset) GetTargetField() string {
   563  	if x != nil {
   564  		return x.TargetField
   565  	}
   566  	return ""
   567  }
   568  
   569  func (x *ModelMonitoringObjectiveConfig_TrainingDataset) GetLoggingSamplingStrategy() *SamplingStrategy {
   570  	if x != nil {
   571  		return x.LoggingSamplingStrategy
   572  	}
   573  	return nil
   574  }
   575  
   576  type isModelMonitoringObjectiveConfig_TrainingDataset_DataSource interface {
   577  	isModelMonitoringObjectiveConfig_TrainingDataset_DataSource()
   578  }
   579  
   580  type ModelMonitoringObjectiveConfig_TrainingDataset_Dataset struct {
   581  	// The resource name of the Dataset used to train this Model.
   582  	Dataset string `protobuf:"bytes,3,opt,name=dataset,proto3,oneof"`
   583  }
   584  
   585  type ModelMonitoringObjectiveConfig_TrainingDataset_GcsSource struct {
   586  	// The Google Cloud Storage uri of the unmanaged Dataset used to train
   587  	// this Model.
   588  	GcsSource *GcsSource `protobuf:"bytes,4,opt,name=gcs_source,json=gcsSource,proto3,oneof"`
   589  }
   590  
   591  type ModelMonitoringObjectiveConfig_TrainingDataset_BigquerySource struct {
   592  	// The BigQuery table of the unmanaged Dataset used to train this
   593  	// Model.
   594  	BigquerySource *BigQuerySource `protobuf:"bytes,5,opt,name=bigquery_source,json=bigquerySource,proto3,oneof"`
   595  }
   596  
   597  func (*ModelMonitoringObjectiveConfig_TrainingDataset_Dataset) isModelMonitoringObjectiveConfig_TrainingDataset_DataSource() {
   598  }
   599  
   600  func (*ModelMonitoringObjectiveConfig_TrainingDataset_GcsSource) isModelMonitoringObjectiveConfig_TrainingDataset_DataSource() {
   601  }
   602  
   603  func (*ModelMonitoringObjectiveConfig_TrainingDataset_BigquerySource) isModelMonitoringObjectiveConfig_TrainingDataset_DataSource() {
   604  }
   605  
   606  // The config for Training & Prediction data skew detection. It specifies the
   607  // training dataset sources and the skew detection parameters.
   608  type ModelMonitoringObjectiveConfig_TrainingPredictionSkewDetectionConfig struct {
   609  	state         protoimpl.MessageState
   610  	sizeCache     protoimpl.SizeCache
   611  	unknownFields protoimpl.UnknownFields
   612  
   613  	// Key is the feature name and value is the threshold. If a feature needs to
   614  	// be monitored for skew, a value threshold must be configured for that
   615  	// feature. The threshold here is against feature distribution distance
   616  	// between the training and prediction feature.
   617  	SkewThresholds map[string]*ThresholdConfig `protobuf:"bytes,1,rep,name=skew_thresholds,json=skewThresholds,proto3" json:"skew_thresholds,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   618  	// Key is the feature name and value is the threshold. The threshold here is
   619  	// against attribution score distance between the training and prediction
   620  	// feature.
   621  	AttributionScoreSkewThresholds map[string]*ThresholdConfig `protobuf:"bytes,2,rep,name=attribution_score_skew_thresholds,json=attributionScoreSkewThresholds,proto3" json:"attribution_score_skew_thresholds,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   622  	// Skew anomaly detection threshold used by all features.
   623  	// When the per-feature thresholds are not set, this field can be used to
   624  	// specify a threshold for all features.
   625  	DefaultSkewThreshold *ThresholdConfig `protobuf:"bytes,6,opt,name=default_skew_threshold,json=defaultSkewThreshold,proto3" json:"default_skew_threshold,omitempty"`
   626  }
   627  
   628  func (x *ModelMonitoringObjectiveConfig_TrainingPredictionSkewDetectionConfig) Reset() {
   629  	*x = ModelMonitoringObjectiveConfig_TrainingPredictionSkewDetectionConfig{}
   630  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[6]
   631  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   632  	ms.StoreMessageInfo(mi)
   633  }
   634  
   635  func (x *ModelMonitoringObjectiveConfig_TrainingPredictionSkewDetectionConfig) String() string {
   636  	return protoimpl.X.MessageStringOf(x)
   637  }
   638  
   639  func (*ModelMonitoringObjectiveConfig_TrainingPredictionSkewDetectionConfig) ProtoMessage() {}
   640  
   641  func (x *ModelMonitoringObjectiveConfig_TrainingPredictionSkewDetectionConfig) ProtoReflect() protoreflect.Message {
   642  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[6]
   643  	if x != nil {
   644  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   645  		if ms.LoadMessageInfo() == nil {
   646  			ms.StoreMessageInfo(mi)
   647  		}
   648  		return ms
   649  	}
   650  	return mi.MessageOf(x)
   651  }
   652  
   653  // Deprecated: Use ModelMonitoringObjectiveConfig_TrainingPredictionSkewDetectionConfig.ProtoReflect.Descriptor instead.
   654  func (*ModelMonitoringObjectiveConfig_TrainingPredictionSkewDetectionConfig) Descriptor() ([]byte, []int) {
   655  	return file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescGZIP(), []int{1, 1}
   656  }
   657  
   658  func (x *ModelMonitoringObjectiveConfig_TrainingPredictionSkewDetectionConfig) GetSkewThresholds() map[string]*ThresholdConfig {
   659  	if x != nil {
   660  		return x.SkewThresholds
   661  	}
   662  	return nil
   663  }
   664  
   665  func (x *ModelMonitoringObjectiveConfig_TrainingPredictionSkewDetectionConfig) GetAttributionScoreSkewThresholds() map[string]*ThresholdConfig {
   666  	if x != nil {
   667  		return x.AttributionScoreSkewThresholds
   668  	}
   669  	return nil
   670  }
   671  
   672  func (x *ModelMonitoringObjectiveConfig_TrainingPredictionSkewDetectionConfig) GetDefaultSkewThreshold() *ThresholdConfig {
   673  	if x != nil {
   674  		return x.DefaultSkewThreshold
   675  	}
   676  	return nil
   677  }
   678  
   679  // The config for Prediction data drift detection.
   680  type ModelMonitoringObjectiveConfig_PredictionDriftDetectionConfig struct {
   681  	state         protoimpl.MessageState
   682  	sizeCache     protoimpl.SizeCache
   683  	unknownFields protoimpl.UnknownFields
   684  
   685  	// Key is the feature name and value is the threshold. If a feature needs to
   686  	// be monitored for drift, a value threshold must be configured for that
   687  	// feature. The threshold here is against feature distribution distance
   688  	// between different time windws.
   689  	DriftThresholds map[string]*ThresholdConfig `protobuf:"bytes,1,rep,name=drift_thresholds,json=driftThresholds,proto3" json:"drift_thresholds,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   690  	// Key is the feature name and value is the threshold. The threshold here is
   691  	// against attribution score distance between different time windows.
   692  	AttributionScoreDriftThresholds map[string]*ThresholdConfig `protobuf:"bytes,2,rep,name=attribution_score_drift_thresholds,json=attributionScoreDriftThresholds,proto3" json:"attribution_score_drift_thresholds,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   693  	// Drift anomaly detection threshold used by all features.
   694  	// When the per-feature thresholds are not set, this field can be used to
   695  	// specify a threshold for all features.
   696  	DefaultDriftThreshold *ThresholdConfig `protobuf:"bytes,5,opt,name=default_drift_threshold,json=defaultDriftThreshold,proto3" json:"default_drift_threshold,omitempty"`
   697  }
   698  
   699  func (x *ModelMonitoringObjectiveConfig_PredictionDriftDetectionConfig) Reset() {
   700  	*x = ModelMonitoringObjectiveConfig_PredictionDriftDetectionConfig{}
   701  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[7]
   702  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   703  	ms.StoreMessageInfo(mi)
   704  }
   705  
   706  func (x *ModelMonitoringObjectiveConfig_PredictionDriftDetectionConfig) String() string {
   707  	return protoimpl.X.MessageStringOf(x)
   708  }
   709  
   710  func (*ModelMonitoringObjectiveConfig_PredictionDriftDetectionConfig) ProtoMessage() {}
   711  
   712  func (x *ModelMonitoringObjectiveConfig_PredictionDriftDetectionConfig) ProtoReflect() protoreflect.Message {
   713  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[7]
   714  	if x != nil {
   715  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   716  		if ms.LoadMessageInfo() == nil {
   717  			ms.StoreMessageInfo(mi)
   718  		}
   719  		return ms
   720  	}
   721  	return mi.MessageOf(x)
   722  }
   723  
   724  // Deprecated: Use ModelMonitoringObjectiveConfig_PredictionDriftDetectionConfig.ProtoReflect.Descriptor instead.
   725  func (*ModelMonitoringObjectiveConfig_PredictionDriftDetectionConfig) Descriptor() ([]byte, []int) {
   726  	return file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescGZIP(), []int{1, 2}
   727  }
   728  
   729  func (x *ModelMonitoringObjectiveConfig_PredictionDriftDetectionConfig) GetDriftThresholds() map[string]*ThresholdConfig {
   730  	if x != nil {
   731  		return x.DriftThresholds
   732  	}
   733  	return nil
   734  }
   735  
   736  func (x *ModelMonitoringObjectiveConfig_PredictionDriftDetectionConfig) GetAttributionScoreDriftThresholds() map[string]*ThresholdConfig {
   737  	if x != nil {
   738  		return x.AttributionScoreDriftThresholds
   739  	}
   740  	return nil
   741  }
   742  
   743  func (x *ModelMonitoringObjectiveConfig_PredictionDriftDetectionConfig) GetDefaultDriftThreshold() *ThresholdConfig {
   744  	if x != nil {
   745  		return x.DefaultDriftThreshold
   746  	}
   747  	return nil
   748  }
   749  
   750  // The config for integrating with Vertex Explainable AI. Only applicable if
   751  // the Model has explanation_spec populated.
   752  type ModelMonitoringObjectiveConfig_ExplanationConfig struct {
   753  	state         protoimpl.MessageState
   754  	sizeCache     protoimpl.SizeCache
   755  	unknownFields protoimpl.UnknownFields
   756  
   757  	// If want to analyze the Vertex Explainable AI feature attribute scores or
   758  	// not. If set to true, Vertex AI will log the feature attributions from
   759  	// explain response and do the skew/drift detection for them.
   760  	EnableFeatureAttributes bool `protobuf:"varint,1,opt,name=enable_feature_attributes,json=enableFeatureAttributes,proto3" json:"enable_feature_attributes,omitempty"`
   761  	// Predictions generated by the BatchPredictionJob using baseline dataset.
   762  	ExplanationBaseline *ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline `protobuf:"bytes,2,opt,name=explanation_baseline,json=explanationBaseline,proto3" json:"explanation_baseline,omitempty"`
   763  }
   764  
   765  func (x *ModelMonitoringObjectiveConfig_ExplanationConfig) Reset() {
   766  	*x = ModelMonitoringObjectiveConfig_ExplanationConfig{}
   767  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[8]
   768  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   769  	ms.StoreMessageInfo(mi)
   770  }
   771  
   772  func (x *ModelMonitoringObjectiveConfig_ExplanationConfig) String() string {
   773  	return protoimpl.X.MessageStringOf(x)
   774  }
   775  
   776  func (*ModelMonitoringObjectiveConfig_ExplanationConfig) ProtoMessage() {}
   777  
   778  func (x *ModelMonitoringObjectiveConfig_ExplanationConfig) ProtoReflect() protoreflect.Message {
   779  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[8]
   780  	if x != nil {
   781  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   782  		if ms.LoadMessageInfo() == nil {
   783  			ms.StoreMessageInfo(mi)
   784  		}
   785  		return ms
   786  	}
   787  	return mi.MessageOf(x)
   788  }
   789  
   790  // Deprecated: Use ModelMonitoringObjectiveConfig_ExplanationConfig.ProtoReflect.Descriptor instead.
   791  func (*ModelMonitoringObjectiveConfig_ExplanationConfig) Descriptor() ([]byte, []int) {
   792  	return file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescGZIP(), []int{1, 3}
   793  }
   794  
   795  func (x *ModelMonitoringObjectiveConfig_ExplanationConfig) GetEnableFeatureAttributes() bool {
   796  	if x != nil {
   797  		return x.EnableFeatureAttributes
   798  	}
   799  	return false
   800  }
   801  
   802  func (x *ModelMonitoringObjectiveConfig_ExplanationConfig) GetExplanationBaseline() *ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline {
   803  	if x != nil {
   804  		return x.ExplanationBaseline
   805  	}
   806  	return nil
   807  }
   808  
   809  // Output from
   810  // [BatchPredictionJob][google.cloud.aiplatform.v1beta1.BatchPredictionJob]
   811  // for Model Monitoring baseline dataset, which can be used to generate
   812  // baseline attribution scores.
   813  type ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline struct {
   814  	state         protoimpl.MessageState
   815  	sizeCache     protoimpl.SizeCache
   816  	unknownFields protoimpl.UnknownFields
   817  
   818  	// The configuration specifying of BatchExplain job output. This can be
   819  	// used to generate the baseline of feature attribution scores.
   820  	//
   821  	// Types that are assignable to Destination:
   822  	//
   823  	//	*ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Gcs
   824  	//	*ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Bigquery
   825  	Destination isModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Destination `protobuf_oneof:"destination"`
   826  	// The storage format of the predictions generated BatchPrediction job.
   827  	PredictionFormat ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat `protobuf:"varint,1,opt,name=prediction_format,json=predictionFormat,proto3,enum=google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat" json:"prediction_format,omitempty"`
   828  }
   829  
   830  func (x *ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline) Reset() {
   831  	*x = ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline{}
   832  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[13]
   833  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   834  	ms.StoreMessageInfo(mi)
   835  }
   836  
   837  func (x *ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline) String() string {
   838  	return protoimpl.X.MessageStringOf(x)
   839  }
   840  
   841  func (*ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline) ProtoMessage() {}
   842  
   843  func (x *ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline) ProtoReflect() protoreflect.Message {
   844  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[13]
   845  	if x != nil {
   846  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   847  		if ms.LoadMessageInfo() == nil {
   848  			ms.StoreMessageInfo(mi)
   849  		}
   850  		return ms
   851  	}
   852  	return mi.MessageOf(x)
   853  }
   854  
   855  // Deprecated: Use ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline.ProtoReflect.Descriptor instead.
   856  func (*ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline) Descriptor() ([]byte, []int) {
   857  	return file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescGZIP(), []int{1, 3, 0}
   858  }
   859  
   860  func (m *ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline) GetDestination() isModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Destination {
   861  	if m != nil {
   862  		return m.Destination
   863  	}
   864  	return nil
   865  }
   866  
   867  func (x *ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline) GetGcs() *GcsDestination {
   868  	if x, ok := x.GetDestination().(*ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Gcs); ok {
   869  		return x.Gcs
   870  	}
   871  	return nil
   872  }
   873  
   874  func (x *ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline) GetBigquery() *BigQueryDestination {
   875  	if x, ok := x.GetDestination().(*ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Bigquery); ok {
   876  		return x.Bigquery
   877  	}
   878  	return nil
   879  }
   880  
   881  func (x *ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline) GetPredictionFormat() ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat {
   882  	if x != nil {
   883  		return x.PredictionFormat
   884  	}
   885  	return ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PREDICTION_FORMAT_UNSPECIFIED
   886  }
   887  
   888  type isModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Destination interface {
   889  	isModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Destination()
   890  }
   891  
   892  type ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Gcs struct {
   893  	// Cloud Storage location for BatchExplain output.
   894  	Gcs *GcsDestination `protobuf:"bytes,2,opt,name=gcs,proto3,oneof"`
   895  }
   896  
   897  type ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Bigquery struct {
   898  	// BigQuery location for BatchExplain output.
   899  	Bigquery *BigQueryDestination `protobuf:"bytes,3,opt,name=bigquery,proto3,oneof"`
   900  }
   901  
   902  func (*ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Gcs) isModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Destination() {
   903  }
   904  
   905  func (*ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Bigquery) isModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Destination() {
   906  }
   907  
   908  // The config for email alert.
   909  type ModelMonitoringAlertConfig_EmailAlertConfig struct {
   910  	state         protoimpl.MessageState
   911  	sizeCache     protoimpl.SizeCache
   912  	unknownFields protoimpl.UnknownFields
   913  
   914  	// The email addresses to send the alert.
   915  	UserEmails []string `protobuf:"bytes,1,rep,name=user_emails,json=userEmails,proto3" json:"user_emails,omitempty"`
   916  }
   917  
   918  func (x *ModelMonitoringAlertConfig_EmailAlertConfig) Reset() {
   919  	*x = ModelMonitoringAlertConfig_EmailAlertConfig{}
   920  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[14]
   921  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   922  	ms.StoreMessageInfo(mi)
   923  }
   924  
   925  func (x *ModelMonitoringAlertConfig_EmailAlertConfig) String() string {
   926  	return protoimpl.X.MessageStringOf(x)
   927  }
   928  
   929  func (*ModelMonitoringAlertConfig_EmailAlertConfig) ProtoMessage() {}
   930  
   931  func (x *ModelMonitoringAlertConfig_EmailAlertConfig) ProtoReflect() protoreflect.Message {
   932  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[14]
   933  	if x != nil {
   934  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   935  		if ms.LoadMessageInfo() == nil {
   936  			ms.StoreMessageInfo(mi)
   937  		}
   938  		return ms
   939  	}
   940  	return mi.MessageOf(x)
   941  }
   942  
   943  // Deprecated: Use ModelMonitoringAlertConfig_EmailAlertConfig.ProtoReflect.Descriptor instead.
   944  func (*ModelMonitoringAlertConfig_EmailAlertConfig) Descriptor() ([]byte, []int) {
   945  	return file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescGZIP(), []int{2, 0}
   946  }
   947  
   948  func (x *ModelMonitoringAlertConfig_EmailAlertConfig) GetUserEmails() []string {
   949  	if x != nil {
   950  		return x.UserEmails
   951  	}
   952  	return nil
   953  }
   954  
   955  // Requests are randomly selected.
   956  type SamplingStrategy_RandomSampleConfig struct {
   957  	state         protoimpl.MessageState
   958  	sizeCache     protoimpl.SizeCache
   959  	unknownFields protoimpl.UnknownFields
   960  
   961  	// Sample rate (0, 1]
   962  	SampleRate float64 `protobuf:"fixed64,1,opt,name=sample_rate,json=sampleRate,proto3" json:"sample_rate,omitempty"`
   963  }
   964  
   965  func (x *SamplingStrategy_RandomSampleConfig) Reset() {
   966  	*x = SamplingStrategy_RandomSampleConfig{}
   967  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[15]
   968  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   969  	ms.StoreMessageInfo(mi)
   970  }
   971  
   972  func (x *SamplingStrategy_RandomSampleConfig) String() string {
   973  	return protoimpl.X.MessageStringOf(x)
   974  }
   975  
   976  func (*SamplingStrategy_RandomSampleConfig) ProtoMessage() {}
   977  
   978  func (x *SamplingStrategy_RandomSampleConfig) ProtoReflect() protoreflect.Message {
   979  	mi := &file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[15]
   980  	if x != nil {
   981  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   982  		if ms.LoadMessageInfo() == nil {
   983  			ms.StoreMessageInfo(mi)
   984  		}
   985  		return ms
   986  	}
   987  	return mi.MessageOf(x)
   988  }
   989  
   990  // Deprecated: Use SamplingStrategy_RandomSampleConfig.ProtoReflect.Descriptor instead.
   991  func (*SamplingStrategy_RandomSampleConfig) Descriptor() ([]byte, []int) {
   992  	return file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescGZIP(), []int{4, 0}
   993  }
   994  
   995  func (x *SamplingStrategy_RandomSampleConfig) GetSampleRate() float64 {
   996  	if x != nil {
   997  		return x.SampleRate
   998  	}
   999  	return 0
  1000  }
  1001  
  1002  var File_google_cloud_aiplatform_v1beta1_model_monitoring_proto protoreflect.FileDescriptor
  1003  
  1004  var file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDesc = []byte{
  1005  	0x0a, 0x36, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61,
  1006  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  1007  	0x31, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69,
  1008  	0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  1009  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  1010  	0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  1011  	0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70,
  1012  	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x28, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f,
  1013  	0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31,
  1014  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x69, 0x6f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9c,
  1015  	0x03, 0x0a, 0x15, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69,
  1016  	0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x6c, 0x0a, 0x11, 0x6f, 0x62, 0x6a, 0x65,
  1017  	0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x18, 0x03, 0x20,
  1018  	0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  1019  	0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31,
  1020  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74,
  1021  	0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f,
  1022  	0x6e, 0x66, 0x69, 0x67, 0x52, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43,
  1023  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x12, 0x5e, 0x0a, 0x0c, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x5f,
  1024  	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67,
  1025  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  1026  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d,
  1027  	0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x41, 0x6c,
  1028  	0x65, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x61, 0x6c, 0x65, 0x72, 0x74,
  1029  	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3f, 0x0a, 0x1c, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73,
  1030  	0x69, 0x73, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x63, 0x68, 0x65,
  1031  	0x6d, 0x61, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x19, 0x61, 0x6e,
  1032  	0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x63,
  1033  	0x68, 0x65, 0x6d, 0x61, 0x55, 0x72, 0x69, 0x12, 0x74, 0x0a, 0x1e, 0x73, 0x74, 0x61, 0x74, 0x73,
  1034  	0x5f, 0x61, 0x6e, 0x6f, 0x6d, 0x61, 0x6c, 0x69, 0x65, 0x73, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f,
  1035  	0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
  1036  	0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
  1037  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  1038  	0x31, 0x2e, 0x47, 0x63, 0x73, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  1039  	0x52, 0x1b, 0x73, 0x74, 0x61, 0x74, 0x73, 0x41, 0x6e, 0x6f, 0x6d, 0x61, 0x6c, 0x69, 0x65, 0x73,
  1040  	0x42, 0x61, 0x73, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x22, 0xfc, 0x19,
  1041  	0x0a, 0x1e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e,
  1042  	0x67, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
  1043  	0x12, 0x7a, 0x0a, 0x10, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74,
  1044  	0x61, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4f, 0x2e, 0x67, 0x6f, 0x6f,
  1045  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  1046  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64,
  1047  	0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x62, 0x6a, 0x65,
  1048  	0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x54, 0x72, 0x61, 0x69,
  1049  	0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x52, 0x0f, 0x74, 0x72, 0x61,
  1050  	0x69, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x12, 0xbf, 0x01, 0x0a,
  1051  	0x29, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63,
  1052  	0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x6b, 0x65, 0x77, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74,
  1053  	0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
  1054  	0x32, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  1055  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
  1056  	0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69,
  1057  	0x6e, 0x67, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69,
  1058  	0x67, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63,
  1059  	0x74, 0x69, 0x6f, 0x6e, 0x53, 0x6b, 0x65, 0x77, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f,
  1060  	0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x25, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e,
  1061  	0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x6b, 0x65, 0x77, 0x44,
  1062  	0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0xa9,
  1063  	0x01, 0x0a, 0x21, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x72,
  1064  	0x69, 0x66, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f,
  1065  	0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x5e, 0x2e, 0x67, 0x6f, 0x6f,
  1066  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  1067  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64,
  1068  	0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x62, 0x6a, 0x65,
  1069  	0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x50, 0x72, 0x65, 0x64,
  1070  	0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x72, 0x69, 0x66, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63,
  1071  	0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x1e, 0x70, 0x72, 0x65, 0x64,
  1072  	0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x72, 0x69, 0x66, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63,
  1073  	0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x80, 0x01, 0x0a, 0x12, 0x65,
  1074  	0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
  1075  	0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x51, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  1076  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  1077  	0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d,
  1078  	0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69,
  1079  	0x76, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61,
  1080  	0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x11, 0x65, 0x78, 0x70, 0x6c,
  1081  	0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0xc0, 0x03,
  1082  	0x0a, 0x0f, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65,
  1083  	0x74, 0x12, 0x42, 0x0a, 0x07, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01,
  1084  	0x28, 0x09, 0x42, 0x26, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  1085  	0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
  1086  	0x6f, 0x6d, 0x2f, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x48, 0x00, 0x52, 0x07, 0x64, 0x61,
  1087  	0x74, 0x61, 0x73, 0x65, 0x74, 0x12, 0x4b, 0x0a, 0x0a, 0x67, 0x63, 0x73, 0x5f, 0x73, 0x6f, 0x75,
  1088  	0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  1089  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  1090  	0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x63, 0x73, 0x53,
  1091  	0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x09, 0x67, 0x63, 0x73, 0x53, 0x6f, 0x75, 0x72,
  1092  	0x63, 0x65, 0x12, 0x5a, 0x0a, 0x0f, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73,
  1093  	0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f,
  1094  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  1095  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x69,
  1096  	0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x0e,
  1097  	0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1f,
  1098  	0x0a, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x02, 0x20,
  1099  	0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12,
  1100  	0x21, 0x0a, 0x0c, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18,
  1101  	0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x46, 0x69, 0x65,
  1102  	0x6c, 0x64, 0x12, 0x6d, 0x0a, 0x19, 0x6c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x61,
  1103  	0x6d, 0x70, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x18,
  1104  	0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  1105  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e,
  1106  	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x6e, 0x67,
  1107  	0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x52, 0x17, 0x6c, 0x6f, 0x67, 0x67, 0x69, 0x6e,
  1108  	0x67, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67,
  1109  	0x79, 0x42, 0x0d, 0x0a, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
  1110  	0x1a, 0x87, 0x06, 0x0a, 0x25, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65,
  1111  	0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x6b, 0x65, 0x77, 0x44, 0x65, 0x74, 0x65, 0x63,
  1112  	0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0xa2, 0x01, 0x0a, 0x0f, 0x73,
  1113  	0x6b, 0x65, 0x77, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x73, 0x18, 0x01,
  1114  	0x20, 0x03, 0x28, 0x0b, 0x32, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
  1115  	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
  1116  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69,
  1117  	0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43,
  1118  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x72,
  1119  	0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x6b, 0x65, 0x77, 0x44, 0x65, 0x74, 0x65,
  1120  	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x6b, 0x65, 0x77,
  1121  	0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
  1122  	0x0e, 0x73, 0x6b, 0x65, 0x77, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x73, 0x12,
  1123  	0xd5, 0x01, 0x0a, 0x21, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
  1124  	0x73, 0x63, 0x6f, 0x72, 0x65, 0x5f, 0x73, 0x6b, 0x65, 0x77, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73,
  1125  	0x68, 0x6f, 0x6c, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x89, 0x01, 0x2e, 0x67,
  1126  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  1127  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d,
  1128  	0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x62,
  1129  	0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x54, 0x72,
  1130  	0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e,
  1131  	0x53, 0x6b, 0x65, 0x77, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e,
  1132  	0x66, 0x69, 0x67, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x53,
  1133  	0x63, 0x6f, 0x72, 0x65, 0x53, 0x6b, 0x65, 0x77, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c,
  1134  	0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x1e, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75,
  1135  	0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x53, 0x6b, 0x65, 0x77, 0x54, 0x68, 0x72,
  1136  	0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x73, 0x12, 0x66, 0x0a, 0x16, 0x64, 0x65, 0x66, 0x61, 0x75,
  1137  	0x6c, 0x74, 0x5f, 0x73, 0x6b, 0x65, 0x77, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c,
  1138  	0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  1139  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  1140  	0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68,
  1141  	0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x14, 0x64, 0x65, 0x66, 0x61, 0x75,
  1142  	0x6c, 0x74, 0x53, 0x6b, 0x65, 0x77, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x1a,
  1143  	0x73, 0x0a, 0x13, 0x53, 0x6b, 0x65, 0x77, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64,
  1144  	0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
  1145  	0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x46, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
  1146  	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  1147  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  1148  	0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68,
  1149  	0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
  1150  	0x3a, 0x02, 0x38, 0x01, 0x1a, 0x83, 0x01, 0x0a, 0x23, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75,
  1151  	0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x53, 0x6b, 0x65, 0x77, 0x54, 0x68, 0x72,
  1152  	0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
  1153  	0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x46,
  1154  	0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e,
  1155  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70,
  1156  	0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
  1157  	0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
  1158  	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0xfc, 0x05, 0x0a, 0x1e, 0x50,
  1159  	0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x72, 0x69, 0x66, 0x74, 0x44, 0x65,
  1160  	0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x9e, 0x01,
  1161  	0x0a, 0x10, 0x64, 0x72, 0x69, 0x66, 0x74, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c,
  1162  	0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  1163  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
  1164  	0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c,
  1165  	0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
  1166  	0x69, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63,
  1167  	0x74, 0x69, 0x6f, 0x6e, 0x44, 0x72, 0x69, 0x66, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69,
  1168  	0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x72, 0x69, 0x66, 0x74, 0x54, 0x68,
  1169  	0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0f, 0x64,
  1170  	0x72, 0x69, 0x66, 0x74, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x73, 0x12, 0xd1,
  1171  	0x01, 0x0a, 0x22, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73,
  1172  	0x63, 0x6f, 0x72, 0x65, 0x5f, 0x64, 0x72, 0x69, 0x66, 0x74, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73,
  1173  	0x68, 0x6f, 0x6c, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x83, 0x01, 0x2e, 0x67,
  1174  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  1175  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d,
  1176  	0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x62,
  1177  	0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x50, 0x72,
  1178  	0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x72, 0x69, 0x66, 0x74, 0x44, 0x65, 0x74,
  1179  	0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x41, 0x74, 0x74,
  1180  	0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x44, 0x72, 0x69,
  1181  	0x66, 0x74, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72,
  1182  	0x79, 0x52, 0x1f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63,
  1183  	0x6f, 0x72, 0x65, 0x44, 0x72, 0x69, 0x66, 0x74, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c,
  1184  	0x64, 0x73, 0x12, 0x68, 0x0a, 0x17, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x64, 0x72,
  1185  	0x69, 0x66, 0x74, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x05, 0x20,
  1186  	0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  1187  	0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31,
  1188  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x43,
  1189  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x15, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x44, 0x72,
  1190  	0x69, 0x66, 0x74, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x1a, 0x74, 0x0a, 0x14,
  1191  	0x44, 0x72, 0x69, 0x66, 0x74, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x73, 0x45,
  1192  	0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
  1193  	0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x46, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
  1194  	0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  1195  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e,
  1196  	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c,
  1197  	0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02,
  1198  	0x38, 0x01, 0x1a, 0x84, 0x01, 0x0a, 0x24, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69,
  1199  	0x6f, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x44, 0x72, 0x69, 0x66, 0x74, 0x54, 0x68, 0x72, 0x65,
  1200  	0x73, 0x68, 0x6f, 0x6c, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
  1201  	0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x46, 0x0a,
  1202  	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67,
  1203  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  1204  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54,
  1205  	0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x05,
  1206  	0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0xa0, 0x05, 0x0a, 0x11, 0x45, 0x78,
  1207  	0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
  1208  	0x3a, 0x0a, 0x19, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72,
  1209  	0x65, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01,
  1210  	0x28, 0x08, 0x52, 0x17, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
  1211  	0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x98, 0x01, 0x0a, 0x14,
  1212  	0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x61, 0x73, 0x65,
  1213  	0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x65, 0x2e, 0x67, 0x6f, 0x6f,
  1214  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  1215  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64,
  1216  	0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x62, 0x6a, 0x65,
  1217  	0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x78, 0x70, 0x6c,
  1218  	0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x78,
  1219  	0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e,
  1220  	0x65, 0x52, 0x13, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x61,
  1221  	0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0xb3, 0x03, 0x0a, 0x13, 0x45, 0x78, 0x70, 0x6c, 0x61,
  1222  	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x43,
  1223  	0x0a, 0x03, 0x67, 0x63, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f,
  1224  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  1225  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x63,
  1226  	0x73, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x03,
  1227  	0x67, 0x63, 0x73, 0x12, 0x52, 0x0a, 0x08, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18,
  1228  	0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  1229  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e,
  1230  	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79,
  1231  	0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x08, 0x62,
  1232  	0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0xa3, 0x01, 0x0a, 0x11, 0x70, 0x72, 0x65, 0x64,
  1233  	0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x01, 0x20,
  1234  	0x01, 0x28, 0x0e, 0x32, 0x76, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  1235  	0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31,
  1236  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74,
  1237  	0x6f, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f,
  1238  	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  1239  	0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69,
  1240  	0x6f, 0x6e, 0x42, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69,
  1241  	0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x10, 0x70, 0x72, 0x65,
  1242  	0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0x4e, 0x0a,
  1243  	0x10, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x72, 0x6d, 0x61,
  1244  	0x74, 0x12, 0x21, 0x0a, 0x1d, 0x50, 0x52, 0x45, 0x44, 0x49, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
  1245  	0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
  1246  	0x45, 0x44, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x4a, 0x53, 0x4f, 0x4e, 0x4c, 0x10, 0x02, 0x12,
  1247  	0x0c, 0x0a, 0x08, 0x42, 0x49, 0x47, 0x51, 0x55, 0x45, 0x52, 0x59, 0x10, 0x03, 0x42, 0x0d, 0x0a,
  1248  	0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xe8, 0x02, 0x0a,
  1249  	0x1a, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67,
  1250  	0x41, 0x6c, 0x65, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x7c, 0x0a, 0x12, 0x65,
  1251  	0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
  1252  	0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  1253  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  1254  	0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4d,
  1255  	0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x43, 0x6f,
  1256  	0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x43,
  1257  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x10, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x6c,
  1258  	0x65, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x6e, 0x61,
  1259  	0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28,
  1260  	0x08, 0x52, 0x0d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67,
  1261  	0x12, 0x67, 0x0a, 0x15, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  1262  	0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42,
  1263  	0x32, 0xfa, 0x41, 0x2f, 0x0a, 0x2d, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67,
  1264  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
  1265  	0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e,
  1266  	0x6e, 0x65, 0x6c, 0x52, 0x14, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
  1267  	0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x1a, 0x33, 0x0a, 0x10, 0x45, 0x6d, 0x61,
  1268  	0x69, 0x6c, 0x41, 0x6c, 0x65, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1f, 0x0a,
  1269  	0x0b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03,
  1270  	0x28, 0x09, 0x52, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x42, 0x07,
  1271  	0x0a, 0x05, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x22, 0x36, 0x0a, 0x0f, 0x54, 0x68, 0x72, 0x65, 0x73,
  1272  	0x68, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x16, 0x0a, 0x05, 0x76, 0x61,
  1273  	0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x48, 0x00, 0x52, 0x05, 0x76, 0x61, 0x6c,
  1274  	0x75, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x22,
  1275  	0xc1, 0x01, 0x0a, 0x10, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x61,
  1276  	0x74, 0x65, 0x67, 0x79, 0x12, 0x76, 0x0a, 0x14, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x5f, 0x73,
  1277  	0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01,
  1278  	0x28, 0x0b, 0x32, 0x44, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  1279  	0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62,
  1280  	0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72,
  1281  	0x61, 0x74, 0x65, 0x67, 0x79, 0x2e, 0x52, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x53, 0x61, 0x6d, 0x70,
  1282  	0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x12, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d,
  1283  	0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x35, 0x0a, 0x12,
  1284  	0x52, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x53, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66,
  1285  	0x69, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x72, 0x61, 0x74,
  1286  	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0a, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52,
  1287  	0x61, 0x74, 0x65, 0x42, 0xdd, 0x02, 0xea, 0x41, 0x6f, 0x0a, 0x2d, 0x6d, 0x6f, 0x6e, 0x69, 0x74,
  1288  	0x6f, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
  1289  	0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
  1290  	0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x3e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
  1291  	0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6e, 0x6f, 0x74,
  1292  	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
  1293  	0x73, 0x2f, 0x7b, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
  1294  	0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x7d, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f,
  1295  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  1296  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x14, 0x4d,
  1297  	0x6f, 0x64, 0x65, 0x6c, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x50, 0x72,
  1298  	0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f,
  1299  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61,
  1300  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
  1301  	0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x70, 0x62, 0x3b, 0x61, 0x69,
  1302  	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x70, 0x62, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f,
  1303  	0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74,
  1304  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x56, 0x31, 0x42, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02, 0x1f, 0x47,
  1305  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x41, 0x49, 0x50, 0x6c,
  1306  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xea, 0x02,
  1307  	0x22, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a,
  1308  	0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x65,
  1309  	0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  1310  }
  1311  
  1312  var (
  1313  	file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescOnce sync.Once
  1314  	file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescData = file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDesc
  1315  )
  1316  
  1317  func file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescGZIP() []byte {
  1318  	file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescOnce.Do(func() {
  1319  		file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescData)
  1320  	})
  1321  	return file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDescData
  1322  }
  1323  
  1324  var file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
  1325  var file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes = make([]protoimpl.MessageInfo, 16)
  1326  var file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_goTypes = []any{
  1327  	(ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_PredictionFormat)(0), // 0: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.ExplanationConfig.ExplanationBaseline.PredictionFormat
  1328  	(*ModelMonitoringConfig)(nil),                                                // 1: google.cloud.aiplatform.v1beta1.ModelMonitoringConfig
  1329  	(*ModelMonitoringObjectiveConfig)(nil),                                       // 2: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig
  1330  	(*ModelMonitoringAlertConfig)(nil),                                           // 3: google.cloud.aiplatform.v1beta1.ModelMonitoringAlertConfig
  1331  	(*ThresholdConfig)(nil),                                                      // 4: google.cloud.aiplatform.v1beta1.ThresholdConfig
  1332  	(*SamplingStrategy)(nil),                                                     // 5: google.cloud.aiplatform.v1beta1.SamplingStrategy
  1333  	(*ModelMonitoringObjectiveConfig_TrainingDataset)(nil),                       // 6: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingDataset
  1334  	(*ModelMonitoringObjectiveConfig_TrainingPredictionSkewDetectionConfig)(nil), // 7: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingPredictionSkewDetectionConfig
  1335  	(*ModelMonitoringObjectiveConfig_PredictionDriftDetectionConfig)(nil),        // 8: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.PredictionDriftDetectionConfig
  1336  	(*ModelMonitoringObjectiveConfig_ExplanationConfig)(nil),                     // 9: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.ExplanationConfig
  1337  	nil, // 10: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingPredictionSkewDetectionConfig.SkewThresholdsEntry
  1338  	nil, // 11: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingPredictionSkewDetectionConfig.AttributionScoreSkewThresholdsEntry
  1339  	nil, // 12: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.PredictionDriftDetectionConfig.DriftThresholdsEntry
  1340  	nil, // 13: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.PredictionDriftDetectionConfig.AttributionScoreDriftThresholdsEntry
  1341  	(*ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline)(nil), // 14: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.ExplanationConfig.ExplanationBaseline
  1342  	(*ModelMonitoringAlertConfig_EmailAlertConfig)(nil),                          // 15: google.cloud.aiplatform.v1beta1.ModelMonitoringAlertConfig.EmailAlertConfig
  1343  	(*SamplingStrategy_RandomSampleConfig)(nil),                                  // 16: google.cloud.aiplatform.v1beta1.SamplingStrategy.RandomSampleConfig
  1344  	(*GcsDestination)(nil),      // 17: google.cloud.aiplatform.v1beta1.GcsDestination
  1345  	(*GcsSource)(nil),           // 18: google.cloud.aiplatform.v1beta1.GcsSource
  1346  	(*BigQuerySource)(nil),      // 19: google.cloud.aiplatform.v1beta1.BigQuerySource
  1347  	(*BigQueryDestination)(nil), // 20: google.cloud.aiplatform.v1beta1.BigQueryDestination
  1348  }
  1349  var file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_depIdxs = []int32{
  1350  	2,  // 0: google.cloud.aiplatform.v1beta1.ModelMonitoringConfig.objective_configs:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig
  1351  	3,  // 1: google.cloud.aiplatform.v1beta1.ModelMonitoringConfig.alert_config:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringAlertConfig
  1352  	17, // 2: google.cloud.aiplatform.v1beta1.ModelMonitoringConfig.stats_anomalies_base_directory:type_name -> google.cloud.aiplatform.v1beta1.GcsDestination
  1353  	6,  // 3: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.training_dataset:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingDataset
  1354  	7,  // 4: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.training_prediction_skew_detection_config:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingPredictionSkewDetectionConfig
  1355  	8,  // 5: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.prediction_drift_detection_config:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.PredictionDriftDetectionConfig
  1356  	9,  // 6: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.explanation_config:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.ExplanationConfig
  1357  	15, // 7: google.cloud.aiplatform.v1beta1.ModelMonitoringAlertConfig.email_alert_config:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringAlertConfig.EmailAlertConfig
  1358  	16, // 8: google.cloud.aiplatform.v1beta1.SamplingStrategy.random_sample_config:type_name -> google.cloud.aiplatform.v1beta1.SamplingStrategy.RandomSampleConfig
  1359  	18, // 9: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingDataset.gcs_source:type_name -> google.cloud.aiplatform.v1beta1.GcsSource
  1360  	19, // 10: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingDataset.bigquery_source:type_name -> google.cloud.aiplatform.v1beta1.BigQuerySource
  1361  	5,  // 11: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingDataset.logging_sampling_strategy:type_name -> google.cloud.aiplatform.v1beta1.SamplingStrategy
  1362  	10, // 12: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingPredictionSkewDetectionConfig.skew_thresholds:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingPredictionSkewDetectionConfig.SkewThresholdsEntry
  1363  	11, // 13: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingPredictionSkewDetectionConfig.attribution_score_skew_thresholds:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingPredictionSkewDetectionConfig.AttributionScoreSkewThresholdsEntry
  1364  	4,  // 14: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingPredictionSkewDetectionConfig.default_skew_threshold:type_name -> google.cloud.aiplatform.v1beta1.ThresholdConfig
  1365  	12, // 15: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.PredictionDriftDetectionConfig.drift_thresholds:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.PredictionDriftDetectionConfig.DriftThresholdsEntry
  1366  	13, // 16: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.PredictionDriftDetectionConfig.attribution_score_drift_thresholds:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.PredictionDriftDetectionConfig.AttributionScoreDriftThresholdsEntry
  1367  	4,  // 17: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.PredictionDriftDetectionConfig.default_drift_threshold:type_name -> google.cloud.aiplatform.v1beta1.ThresholdConfig
  1368  	14, // 18: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.ExplanationConfig.explanation_baseline:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.ExplanationConfig.ExplanationBaseline
  1369  	4,  // 19: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingPredictionSkewDetectionConfig.SkewThresholdsEntry.value:type_name -> google.cloud.aiplatform.v1beta1.ThresholdConfig
  1370  	4,  // 20: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.TrainingPredictionSkewDetectionConfig.AttributionScoreSkewThresholdsEntry.value:type_name -> google.cloud.aiplatform.v1beta1.ThresholdConfig
  1371  	4,  // 21: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.PredictionDriftDetectionConfig.DriftThresholdsEntry.value:type_name -> google.cloud.aiplatform.v1beta1.ThresholdConfig
  1372  	4,  // 22: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.PredictionDriftDetectionConfig.AttributionScoreDriftThresholdsEntry.value:type_name -> google.cloud.aiplatform.v1beta1.ThresholdConfig
  1373  	17, // 23: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.ExplanationConfig.ExplanationBaseline.gcs:type_name -> google.cloud.aiplatform.v1beta1.GcsDestination
  1374  	20, // 24: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.ExplanationConfig.ExplanationBaseline.bigquery:type_name -> google.cloud.aiplatform.v1beta1.BigQueryDestination
  1375  	0,  // 25: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.ExplanationConfig.ExplanationBaseline.prediction_format:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig.ExplanationConfig.ExplanationBaseline.PredictionFormat
  1376  	26, // [26:26] is the sub-list for method output_type
  1377  	26, // [26:26] is the sub-list for method input_type
  1378  	26, // [26:26] is the sub-list for extension type_name
  1379  	26, // [26:26] is the sub-list for extension extendee
  1380  	0,  // [0:26] is the sub-list for field type_name
  1381  }
  1382  
  1383  func init() { file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_init() }
  1384  func file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_init() {
  1385  	if File_google_cloud_aiplatform_v1beta1_model_monitoring_proto != nil {
  1386  		return
  1387  	}
  1388  	file_google_cloud_aiplatform_v1beta1_io_proto_init()
  1389  	file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[2].OneofWrappers = []any{
  1390  		(*ModelMonitoringAlertConfig_EmailAlertConfig_)(nil),
  1391  	}
  1392  	file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[3].OneofWrappers = []any{
  1393  		(*ThresholdConfig_Value)(nil),
  1394  	}
  1395  	file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[5].OneofWrappers = []any{
  1396  		(*ModelMonitoringObjectiveConfig_TrainingDataset_Dataset)(nil),
  1397  		(*ModelMonitoringObjectiveConfig_TrainingDataset_GcsSource)(nil),
  1398  		(*ModelMonitoringObjectiveConfig_TrainingDataset_BigquerySource)(nil),
  1399  	}
  1400  	file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes[13].OneofWrappers = []any{
  1401  		(*ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Gcs)(nil),
  1402  		(*ModelMonitoringObjectiveConfig_ExplanationConfig_ExplanationBaseline_Bigquery)(nil),
  1403  	}
  1404  	type x struct{}
  1405  	out := protoimpl.TypeBuilder{
  1406  		File: protoimpl.DescBuilder{
  1407  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1408  			RawDescriptor: file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDesc,
  1409  			NumEnums:      1,
  1410  			NumMessages:   16,
  1411  			NumExtensions: 0,
  1412  			NumServices:   0,
  1413  		},
  1414  		GoTypes:           file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_goTypes,
  1415  		DependencyIndexes: file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_depIdxs,
  1416  		EnumInfos:         file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_enumTypes,
  1417  		MessageInfos:      file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_msgTypes,
  1418  	}.Build()
  1419  	File_google_cloud_aiplatform_v1beta1_model_monitoring_proto = out.File
  1420  	file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_rawDesc = nil
  1421  	file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_goTypes = nil
  1422  	file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_depIdxs = nil
  1423  }