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