// Copyright 2025 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.11
// 	protoc        v6.33.2
// source: google/cloud/aiplatform/v1beta1/model_deployment_monitoring_job.proto

package aiplatformpb

import (
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"

	_ "google.golang.org/genproto/googleapis/api/annotations"
	status "google.golang.org/genproto/googleapis/rpc/status"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	durationpb "google.golang.org/protobuf/types/known/durationpb"
	structpb "google.golang.org/protobuf/types/known/structpb"
	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

// The Model Monitoring Objective types.
type ModelDeploymentMonitoringObjectiveType int32

const (
	// Default value, should not be set.
	ModelDeploymentMonitoringObjectiveType_MODEL_DEPLOYMENT_MONITORING_OBJECTIVE_TYPE_UNSPECIFIED ModelDeploymentMonitoringObjectiveType = 0
	// Raw feature values' stats to detect skew between Training-Prediction
	// datasets.
	ModelDeploymentMonitoringObjectiveType_RAW_FEATURE_SKEW ModelDeploymentMonitoringObjectiveType = 1
	// Raw feature values' stats to detect drift between Serving-Prediction
	// datasets.
	ModelDeploymentMonitoringObjectiveType_RAW_FEATURE_DRIFT ModelDeploymentMonitoringObjectiveType = 2
	// Feature attribution scores to detect skew between Training-Prediction
	// datasets.
	ModelDeploymentMonitoringObjectiveType_FEATURE_ATTRIBUTION_SKEW ModelDeploymentMonitoringObjectiveType = 3
	// Feature attribution scores to detect skew between Prediction datasets
	// collected within different time windows.
	ModelDeploymentMonitoringObjectiveType_FEATURE_ATTRIBUTION_DRIFT ModelDeploymentMonitoringObjectiveType = 4
)

// Enum value maps for ModelDeploymentMonitoringObjectiveType.
var (
	ModelDeploymentMonitoringObjectiveType_name = map[int32]string{
		0: "MODEL_DEPLOYMENT_MONITORING_OBJECTIVE_TYPE_UNSPECIFIED",
		1: "RAW_FEATURE_SKEW",
		2: "RAW_FEATURE_DRIFT",
		3: "FEATURE_ATTRIBUTION_SKEW",
		4: "FEATURE_ATTRIBUTION_DRIFT",
	}
	ModelDeploymentMonitoringObjectiveType_value = map[string]int32{
		"MODEL_DEPLOYMENT_MONITORING_OBJECTIVE_TYPE_UNSPECIFIED": 0,
		"RAW_FEATURE_SKEW":          1,
		"RAW_FEATURE_DRIFT":         2,
		"FEATURE_ATTRIBUTION_SKEW":  3,
		"FEATURE_ATTRIBUTION_DRIFT": 4,
	}
)

func (x ModelDeploymentMonitoringObjectiveType) Enum() *ModelDeploymentMonitoringObjectiveType {
	p := new(ModelDeploymentMonitoringObjectiveType)
	*p = x
	return p
}

func (x ModelDeploymentMonitoringObjectiveType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ModelDeploymentMonitoringObjectiveType) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_enumTypes[0].Descriptor()
}

func (ModelDeploymentMonitoringObjectiveType) Type() protoreflect.EnumType {
	return &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_enumTypes[0]
}

func (x ModelDeploymentMonitoringObjectiveType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ModelDeploymentMonitoringObjectiveType.Descriptor instead.
func (ModelDeploymentMonitoringObjectiveType) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{0}
}

// The state to Specify the monitoring pipeline.
type ModelDeploymentMonitoringJob_MonitoringScheduleState int32

const (
	// Unspecified state.
	ModelDeploymentMonitoringJob_MONITORING_SCHEDULE_STATE_UNSPECIFIED ModelDeploymentMonitoringJob_MonitoringScheduleState = 0
	// The pipeline is picked up and wait to run.
	ModelDeploymentMonitoringJob_PENDING ModelDeploymentMonitoringJob_MonitoringScheduleState = 1
	// The pipeline is offline and will be scheduled for next run.
	ModelDeploymentMonitoringJob_OFFLINE ModelDeploymentMonitoringJob_MonitoringScheduleState = 2
	// The pipeline is running.
	ModelDeploymentMonitoringJob_RUNNING ModelDeploymentMonitoringJob_MonitoringScheduleState = 3
)

// Enum value maps for ModelDeploymentMonitoringJob_MonitoringScheduleState.
var (
	ModelDeploymentMonitoringJob_MonitoringScheduleState_name = map[int32]string{
		0: "MONITORING_SCHEDULE_STATE_UNSPECIFIED",
		1: "PENDING",
		2: "OFFLINE",
		3: "RUNNING",
	}
	ModelDeploymentMonitoringJob_MonitoringScheduleState_value = map[string]int32{
		"MONITORING_SCHEDULE_STATE_UNSPECIFIED": 0,
		"PENDING":                               1,
		"OFFLINE":                               2,
		"RUNNING":                               3,
	}
)

func (x ModelDeploymentMonitoringJob_MonitoringScheduleState) Enum() *ModelDeploymentMonitoringJob_MonitoringScheduleState {
	p := new(ModelDeploymentMonitoringJob_MonitoringScheduleState)
	*p = x
	return p
}

func (x ModelDeploymentMonitoringJob_MonitoringScheduleState) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ModelDeploymentMonitoringJob_MonitoringScheduleState) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_enumTypes[1].Descriptor()
}

func (ModelDeploymentMonitoringJob_MonitoringScheduleState) Type() protoreflect.EnumType {
	return &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_enumTypes[1]
}

func (x ModelDeploymentMonitoringJob_MonitoringScheduleState) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ModelDeploymentMonitoringJob_MonitoringScheduleState.Descriptor instead.
func (ModelDeploymentMonitoringJob_MonitoringScheduleState) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{0, 0}
}

// Indicates where does the log come from.
type ModelDeploymentMonitoringBigQueryTable_LogSource int32

const (
	// Unspecified source.
	ModelDeploymentMonitoringBigQueryTable_LOG_SOURCE_UNSPECIFIED ModelDeploymentMonitoringBigQueryTable_LogSource = 0
	// Logs coming from Training dataset.
	ModelDeploymentMonitoringBigQueryTable_TRAINING ModelDeploymentMonitoringBigQueryTable_LogSource = 1
	// Logs coming from Serving traffic.
	ModelDeploymentMonitoringBigQueryTable_SERVING ModelDeploymentMonitoringBigQueryTable_LogSource = 2
)

// Enum value maps for ModelDeploymentMonitoringBigQueryTable_LogSource.
var (
	ModelDeploymentMonitoringBigQueryTable_LogSource_name = map[int32]string{
		0: "LOG_SOURCE_UNSPECIFIED",
		1: "TRAINING",
		2: "SERVING",
	}
	ModelDeploymentMonitoringBigQueryTable_LogSource_value = map[string]int32{
		"LOG_SOURCE_UNSPECIFIED": 0,
		"TRAINING":               1,
		"SERVING":                2,
	}
)

func (x ModelDeploymentMonitoringBigQueryTable_LogSource) Enum() *ModelDeploymentMonitoringBigQueryTable_LogSource {
	p := new(ModelDeploymentMonitoringBigQueryTable_LogSource)
	*p = x
	return p
}

func (x ModelDeploymentMonitoringBigQueryTable_LogSource) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ModelDeploymentMonitoringBigQueryTable_LogSource) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_enumTypes[2].Descriptor()
}

func (ModelDeploymentMonitoringBigQueryTable_LogSource) Type() protoreflect.EnumType {
	return &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_enumTypes[2]
}

func (x ModelDeploymentMonitoringBigQueryTable_LogSource) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ModelDeploymentMonitoringBigQueryTable_LogSource.Descriptor instead.
func (ModelDeploymentMonitoringBigQueryTable_LogSource) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{1, 0}
}

// Indicates what type of traffic does the log belong to.
type ModelDeploymentMonitoringBigQueryTable_LogType int32

const (
	// Unspecified type.
	ModelDeploymentMonitoringBigQueryTable_LOG_TYPE_UNSPECIFIED ModelDeploymentMonitoringBigQueryTable_LogType = 0
	// Predict logs.
	ModelDeploymentMonitoringBigQueryTable_PREDICT ModelDeploymentMonitoringBigQueryTable_LogType = 1
	// Explain logs.
	ModelDeploymentMonitoringBigQueryTable_EXPLAIN ModelDeploymentMonitoringBigQueryTable_LogType = 2
)

// Enum value maps for ModelDeploymentMonitoringBigQueryTable_LogType.
var (
	ModelDeploymentMonitoringBigQueryTable_LogType_name = map[int32]string{
		0: "LOG_TYPE_UNSPECIFIED",
		1: "PREDICT",
		2: "EXPLAIN",
	}
	ModelDeploymentMonitoringBigQueryTable_LogType_value = map[string]int32{
		"LOG_TYPE_UNSPECIFIED": 0,
		"PREDICT":              1,
		"EXPLAIN":              2,
	}
)

func (x ModelDeploymentMonitoringBigQueryTable_LogType) Enum() *ModelDeploymentMonitoringBigQueryTable_LogType {
	p := new(ModelDeploymentMonitoringBigQueryTable_LogType)
	*p = x
	return p
}

func (x ModelDeploymentMonitoringBigQueryTable_LogType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ModelDeploymentMonitoringBigQueryTable_LogType) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_enumTypes[3].Descriptor()
}

func (ModelDeploymentMonitoringBigQueryTable_LogType) Type() protoreflect.EnumType {
	return &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_enumTypes[3]
}

func (x ModelDeploymentMonitoringBigQueryTable_LogType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ModelDeploymentMonitoringBigQueryTable_LogType.Descriptor instead.
func (ModelDeploymentMonitoringBigQueryTable_LogType) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{1, 1}
}

// Represents a job that runs periodically to monitor the deployed models in an
// endpoint. It will analyze the logged training & prediction data to detect any
// abnormal behaviors.
type ModelDeploymentMonitoringJob struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Output only. Resource name of a ModelDeploymentMonitoringJob.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Required. The user-defined name of the ModelDeploymentMonitoringJob.
	// The name can be up to 128 characters long and can consist of any UTF-8
	// characters.
	// Display name of a ModelDeploymentMonitoringJob.
	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// Required. Endpoint resource name.
	// Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`
	Endpoint string `protobuf:"bytes,3,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
	// Output only. The detailed state of the monitoring job.
	// When the job is still creating, the state will be 'PENDING'.
	// Once the job is successfully created, the state will be 'RUNNING'.
	// Pause the job, the state will be 'PAUSED'.
	// Resume the job, the state will return to 'RUNNING'.
	State JobState `protobuf:"varint,4,opt,name=state,proto3,enum=google.cloud.aiplatform.v1beta1.JobState" json:"state,omitempty"`
	// Output only. Schedule state when the monitoring job is in Running state.
	ScheduleState ModelDeploymentMonitoringJob_MonitoringScheduleState `protobuf:"varint,5,opt,name=schedule_state,json=scheduleState,proto3,enum=google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob_MonitoringScheduleState" json:"schedule_state,omitempty"`
	// Output only. Latest triggered monitoring pipeline metadata.
	LatestMonitoringPipelineMetadata *ModelDeploymentMonitoringJob_LatestMonitoringPipelineMetadata `protobuf:"bytes,25,opt,name=latest_monitoring_pipeline_metadata,json=latestMonitoringPipelineMetadata,proto3" json:"latest_monitoring_pipeline_metadata,omitempty"`
	// Required. The config for monitoring objectives. This is a per DeployedModel
	// config. Each DeployedModel needs to be configured separately.
	ModelDeploymentMonitoringObjectiveConfigs []*ModelDeploymentMonitoringObjectiveConfig `protobuf:"bytes,6,rep,name=model_deployment_monitoring_objective_configs,json=modelDeploymentMonitoringObjectiveConfigs,proto3" json:"model_deployment_monitoring_objective_configs,omitempty"`
	// Required. Schedule config for running the monitoring job.
	ModelDeploymentMonitoringScheduleConfig *ModelDeploymentMonitoringScheduleConfig `protobuf:"bytes,7,opt,name=model_deployment_monitoring_schedule_config,json=modelDeploymentMonitoringScheduleConfig,proto3" json:"model_deployment_monitoring_schedule_config,omitempty"`
	// Required. Sample Strategy for logging.
	LoggingSamplingStrategy *SamplingStrategy `protobuf:"bytes,8,opt,name=logging_sampling_strategy,json=loggingSamplingStrategy,proto3" json:"logging_sampling_strategy,omitempty"`
	// Alert config for model monitoring.
	ModelMonitoringAlertConfig *ModelMonitoringAlertConfig `protobuf:"bytes,15,opt,name=model_monitoring_alert_config,json=modelMonitoringAlertConfig,proto3" json:"model_monitoring_alert_config,omitempty"`
	// YAML schema file uri describing the format of a single instance,
	// which are given to format this Endpoint's prediction (and explanation).
	// If not set, we will generate predict schema from collected predict
	// requests.
	PredictInstanceSchemaUri string `protobuf:"bytes,9,opt,name=predict_instance_schema_uri,json=predictInstanceSchemaUri,proto3" json:"predict_instance_schema_uri,omitempty"`
	// Sample Predict instance, same format as
	// [PredictRequest.instances][google.cloud.aiplatform.v1beta1.PredictRequest.instances],
	// this can be set as a replacement of
	// [ModelDeploymentMonitoringJob.predict_instance_schema_uri][google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.predict_instance_schema_uri].
	// If not set, we will generate predict schema from collected predict
	// requests.
	SamplePredictInstance *structpb.Value `protobuf:"bytes,19,opt,name=sample_predict_instance,json=samplePredictInstance,proto3" json:"sample_predict_instance,omitempty"`
	// YAML schema file uri describing the format of a single instance that you
	// want Tensorflow Data Validation (TFDV) to analyze.
	//
	// If this field is empty, all the feature data types are inferred from
	// [predict_instance_schema_uri][google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.predict_instance_schema_uri],
	// meaning that TFDV will use the data in the exact format(data type) as
	// prediction request/response.
	// If there are any data type differences between predict instance and TFDV
	// instance, this field can be used to override the schema.
	// For models trained with Vertex AI, this field must be set as all the
	// fields in predict instance formatted as string.
	AnalysisInstanceSchemaUri string `protobuf:"bytes,16,opt,name=analysis_instance_schema_uri,json=analysisInstanceSchemaUri,proto3" json:"analysis_instance_schema_uri,omitempty"`
	// Output only. The created bigquery tables for the job under customer
	// project. Customer could do their own query & analysis. There could be 4 log
	// tables in maximum:
	// 1. Training data logging predict request/response
	// 2. Serving data logging predict request/response
	BigqueryTables []*ModelDeploymentMonitoringBigQueryTable `protobuf:"bytes,10,rep,name=bigquery_tables,json=bigqueryTables,proto3" json:"bigquery_tables,omitempty"`
	// The TTL of BigQuery tables in user projects which stores logs.
	// A day is the basic unit of the TTL and we take the ceil of TTL/86400(a
	// day). e.g. { second: 3600} indicates ttl = 1 day.
	LogTtl *durationpb.Duration `protobuf:"bytes,17,opt,name=log_ttl,json=logTtl,proto3" json:"log_ttl,omitempty"`
	// The labels with user-defined metadata to organize your
	// ModelDeploymentMonitoringJob.
	//
	// Label keys and values can be no longer than 64 characters
	// (Unicode codepoints), can only contain lowercase letters, numeric
	// characters, underscores and dashes. International characters are allowed.
	//
	// See https://goo.gl/xmQnxf for more information and examples of labels.
	Labels map[string]string `protobuf:"bytes,11,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	// Output only. Timestamp when this ModelDeploymentMonitoringJob was created.
	CreateTime *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
	// Output only. Timestamp when this ModelDeploymentMonitoringJob was updated
	// most recently.
	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,13,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
	// Output only. Timestamp when this monitoring pipeline will be scheduled to
	// run for the next round.
	NextScheduleTime *timestamppb.Timestamp `protobuf:"bytes,14,opt,name=next_schedule_time,json=nextScheduleTime,proto3" json:"next_schedule_time,omitempty"`
	// Stats anomalies base folder path.
	StatsAnomaliesBaseDirectory *GcsDestination `protobuf:"bytes,20,opt,name=stats_anomalies_base_directory,json=statsAnomaliesBaseDirectory,proto3" json:"stats_anomalies_base_directory,omitempty"`
	// Customer-managed encryption key spec for a ModelDeploymentMonitoringJob. If
	// set, this ModelDeploymentMonitoringJob and all sub-resources of this
	// ModelDeploymentMonitoringJob will be secured by this key.
	EncryptionSpec *EncryptionSpec `protobuf:"bytes,21,opt,name=encryption_spec,json=encryptionSpec,proto3" json:"encryption_spec,omitempty"`
	// If true, the scheduled monitoring pipeline logs are sent to
	// Google Cloud Logging, including pipeline status and anomalies detected.
	// Please note the logs incur cost, which are subject to [Cloud Logging
	// pricing](https://cloud.google.com/logging#pricing).
	EnableMonitoringPipelineLogs bool `protobuf:"varint,22,opt,name=enable_monitoring_pipeline_logs,json=enableMonitoringPipelineLogs,proto3" json:"enable_monitoring_pipeline_logs,omitempty"`
	// Output only. Only populated when the job's state is `JOB_STATE_FAILED` or
	// `JOB_STATE_CANCELLED`.
	Error *status.Status `protobuf:"bytes,23,opt,name=error,proto3" json:"error,omitempty"`
	// Output only. Reserved for future use.
	SatisfiesPzs bool `protobuf:"varint,26,opt,name=satisfies_pzs,json=satisfiesPzs,proto3" json:"satisfies_pzs,omitempty"`
	// Output only. Reserved for future use.
	SatisfiesPzi  bool `protobuf:"varint,27,opt,name=satisfies_pzi,json=satisfiesPzi,proto3" json:"satisfies_pzi,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ModelDeploymentMonitoringJob) Reset() {
	*x = ModelDeploymentMonitoringJob{}
	mi := &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ModelDeploymentMonitoringJob) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ModelDeploymentMonitoringJob) ProtoMessage() {}

func (x *ModelDeploymentMonitoringJob) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes[0]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ModelDeploymentMonitoringJob.ProtoReflect.Descriptor instead.
func (*ModelDeploymentMonitoringJob) Descriptor() ([]byte, []int) {
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{0}
}

func (x *ModelDeploymentMonitoringJob) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ModelDeploymentMonitoringJob) GetDisplayName() string {
	if x != nil {
		return x.DisplayName
	}
	return ""
}

func (x *ModelDeploymentMonitoringJob) GetEndpoint() string {
	if x != nil {
		return x.Endpoint
	}
	return ""
}

func (x *ModelDeploymentMonitoringJob) GetState() JobState {
	if x != nil {
		return x.State
	}
	return JobState_JOB_STATE_UNSPECIFIED
}

func (x *ModelDeploymentMonitoringJob) GetScheduleState() ModelDeploymentMonitoringJob_MonitoringScheduleState {
	if x != nil {
		return x.ScheduleState
	}
	return ModelDeploymentMonitoringJob_MONITORING_SCHEDULE_STATE_UNSPECIFIED
}

func (x *ModelDeploymentMonitoringJob) GetLatestMonitoringPipelineMetadata() *ModelDeploymentMonitoringJob_LatestMonitoringPipelineMetadata {
	if x != nil {
		return x.LatestMonitoringPipelineMetadata
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob) GetModelDeploymentMonitoringObjectiveConfigs() []*ModelDeploymentMonitoringObjectiveConfig {
	if x != nil {
		return x.ModelDeploymentMonitoringObjectiveConfigs
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob) GetModelDeploymentMonitoringScheduleConfig() *ModelDeploymentMonitoringScheduleConfig {
	if x != nil {
		return x.ModelDeploymentMonitoringScheduleConfig
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob) GetLoggingSamplingStrategy() *SamplingStrategy {
	if x != nil {
		return x.LoggingSamplingStrategy
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob) GetModelMonitoringAlertConfig() *ModelMonitoringAlertConfig {
	if x != nil {
		return x.ModelMonitoringAlertConfig
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob) GetPredictInstanceSchemaUri() string {
	if x != nil {
		return x.PredictInstanceSchemaUri
	}
	return ""
}

func (x *ModelDeploymentMonitoringJob) GetSamplePredictInstance() *structpb.Value {
	if x != nil {
		return x.SamplePredictInstance
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob) GetAnalysisInstanceSchemaUri() string {
	if x != nil {
		return x.AnalysisInstanceSchemaUri
	}
	return ""
}

func (x *ModelDeploymentMonitoringJob) GetBigqueryTables() []*ModelDeploymentMonitoringBigQueryTable {
	if x != nil {
		return x.BigqueryTables
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob) GetLogTtl() *durationpb.Duration {
	if x != nil {
		return x.LogTtl
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob) GetLabels() map[string]string {
	if x != nil {
		return x.Labels
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob) GetCreateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.CreateTime
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob) GetUpdateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.UpdateTime
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob) GetNextScheduleTime() *timestamppb.Timestamp {
	if x != nil {
		return x.NextScheduleTime
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob) GetStatsAnomaliesBaseDirectory() *GcsDestination {
	if x != nil {
		return x.StatsAnomaliesBaseDirectory
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob) GetEncryptionSpec() *EncryptionSpec {
	if x != nil {
		return x.EncryptionSpec
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob) GetEnableMonitoringPipelineLogs() bool {
	if x != nil {
		return x.EnableMonitoringPipelineLogs
	}
	return false
}

func (x *ModelDeploymentMonitoringJob) GetError() *status.Status {
	if x != nil {
		return x.Error
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob) GetSatisfiesPzs() bool {
	if x != nil {
		return x.SatisfiesPzs
	}
	return false
}

func (x *ModelDeploymentMonitoringJob) GetSatisfiesPzi() bool {
	if x != nil {
		return x.SatisfiesPzi
	}
	return false
}

// ModelDeploymentMonitoringBigQueryTable specifies the BigQuery table name
// as well as some information of the logs stored in this table.
type ModelDeploymentMonitoringBigQueryTable struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The source of log.
	LogSource ModelDeploymentMonitoringBigQueryTable_LogSource `protobuf:"varint,1,opt,name=log_source,json=logSource,proto3,enum=google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringBigQueryTable_LogSource" json:"log_source,omitempty"`
	// The type of log.
	LogType ModelDeploymentMonitoringBigQueryTable_LogType `protobuf:"varint,2,opt,name=log_type,json=logType,proto3,enum=google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringBigQueryTable_LogType" json:"log_type,omitempty"`
	// The created BigQuery table to store logs. Customer could do their own query
	// & analysis. Format:
	// `bq://<project_id>.model_deployment_monitoring_<endpoint_id>.<tolower(log_source)>_<tolower(log_type)>`
	BigqueryTablePath string `protobuf:"bytes,3,opt,name=bigquery_table_path,json=bigqueryTablePath,proto3" json:"bigquery_table_path,omitempty"`
	// Output only. The schema version of the request/response logging BigQuery
	// table. Default to v1 if unset.
	RequestResponseLoggingSchemaVersion string `protobuf:"bytes,4,opt,name=request_response_logging_schema_version,json=requestResponseLoggingSchemaVersion,proto3" json:"request_response_logging_schema_version,omitempty"`
	unknownFields                       protoimpl.UnknownFields
	sizeCache                           protoimpl.SizeCache
}

func (x *ModelDeploymentMonitoringBigQueryTable) Reset() {
	*x = ModelDeploymentMonitoringBigQueryTable{}
	mi := &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ModelDeploymentMonitoringBigQueryTable) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ModelDeploymentMonitoringBigQueryTable) ProtoMessage() {}

func (x *ModelDeploymentMonitoringBigQueryTable) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes[1]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ModelDeploymentMonitoringBigQueryTable.ProtoReflect.Descriptor instead.
func (*ModelDeploymentMonitoringBigQueryTable) Descriptor() ([]byte, []int) {
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{1}
}

func (x *ModelDeploymentMonitoringBigQueryTable) GetLogSource() ModelDeploymentMonitoringBigQueryTable_LogSource {
	if x != nil {
		return x.LogSource
	}
	return ModelDeploymentMonitoringBigQueryTable_LOG_SOURCE_UNSPECIFIED
}

func (x *ModelDeploymentMonitoringBigQueryTable) GetLogType() ModelDeploymentMonitoringBigQueryTable_LogType {
	if x != nil {
		return x.LogType
	}
	return ModelDeploymentMonitoringBigQueryTable_LOG_TYPE_UNSPECIFIED
}

func (x *ModelDeploymentMonitoringBigQueryTable) GetBigqueryTablePath() string {
	if x != nil {
		return x.BigqueryTablePath
	}
	return ""
}

func (x *ModelDeploymentMonitoringBigQueryTable) GetRequestResponseLoggingSchemaVersion() string {
	if x != nil {
		return x.RequestResponseLoggingSchemaVersion
	}
	return ""
}

// ModelDeploymentMonitoringObjectiveConfig contains the pair of
// deployed_model_id to ModelMonitoringObjectiveConfig.
type ModelDeploymentMonitoringObjectiveConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The DeployedModel ID of the objective config.
	DeployedModelId string `protobuf:"bytes,1,opt,name=deployed_model_id,json=deployedModelId,proto3" json:"deployed_model_id,omitempty"`
	// The objective config of for the modelmonitoring job of this deployed model.
	ObjectiveConfig *ModelMonitoringObjectiveConfig `protobuf:"bytes,2,opt,name=objective_config,json=objectiveConfig,proto3" json:"objective_config,omitempty"`
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

func (x *ModelDeploymentMonitoringObjectiveConfig) Reset() {
	*x = ModelDeploymentMonitoringObjectiveConfig{}
	mi := &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ModelDeploymentMonitoringObjectiveConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ModelDeploymentMonitoringObjectiveConfig) ProtoMessage() {}

func (x *ModelDeploymentMonitoringObjectiveConfig) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes[2]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ModelDeploymentMonitoringObjectiveConfig.ProtoReflect.Descriptor instead.
func (*ModelDeploymentMonitoringObjectiveConfig) Descriptor() ([]byte, []int) {
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{2}
}

func (x *ModelDeploymentMonitoringObjectiveConfig) GetDeployedModelId() string {
	if x != nil {
		return x.DeployedModelId
	}
	return ""
}

func (x *ModelDeploymentMonitoringObjectiveConfig) GetObjectiveConfig() *ModelMonitoringObjectiveConfig {
	if x != nil {
		return x.ObjectiveConfig
	}
	return nil
}

// The config for scheduling monitoring job.
type ModelDeploymentMonitoringScheduleConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The model monitoring job scheduling interval. It will be rounded
	// up to next full hour. This defines how often the monitoring jobs are
	// triggered.
	MonitorInterval *durationpb.Duration `protobuf:"bytes,1,opt,name=monitor_interval,json=monitorInterval,proto3" json:"monitor_interval,omitempty"`
	// The time window of the prediction data being included in each prediction
	// dataset. This window specifies how long the data should be collected from
	// historical model results for each run. If not set,
	// [ModelDeploymentMonitoringScheduleConfig.monitor_interval][google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringScheduleConfig.monitor_interval]
	// will be used. e.g. If currently the cutoff time is 2022-01-08 14:30:00 and
	// the monitor_window is set to be 3600, then data from 2022-01-08 13:30:00 to
	// 2022-01-08 14:30:00 will be retrieved and aggregated to calculate the
	// monitoring statistics.
	MonitorWindow *durationpb.Duration `protobuf:"bytes,2,opt,name=monitor_window,json=monitorWindow,proto3" json:"monitor_window,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ModelDeploymentMonitoringScheduleConfig) Reset() {
	*x = ModelDeploymentMonitoringScheduleConfig{}
	mi := &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes[3]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ModelDeploymentMonitoringScheduleConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ModelDeploymentMonitoringScheduleConfig) ProtoMessage() {}

func (x *ModelDeploymentMonitoringScheduleConfig) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes[3]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ModelDeploymentMonitoringScheduleConfig.ProtoReflect.Descriptor instead.
func (*ModelDeploymentMonitoringScheduleConfig) Descriptor() ([]byte, []int) {
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{3}
}

func (x *ModelDeploymentMonitoringScheduleConfig) GetMonitorInterval() *durationpb.Duration {
	if x != nil {
		return x.MonitorInterval
	}
	return nil
}

func (x *ModelDeploymentMonitoringScheduleConfig) GetMonitorWindow() *durationpb.Duration {
	if x != nil {
		return x.MonitorWindow
	}
	return nil
}

// Statistics and anomalies generated by Model Monitoring.
type ModelMonitoringStatsAnomalies struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Model Monitoring Objective those stats and anomalies belonging to.
	Objective ModelDeploymentMonitoringObjectiveType `protobuf:"varint,1,opt,name=objective,proto3,enum=google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringObjectiveType" json:"objective,omitempty"`
	// Deployed Model ID.
	DeployedModelId string `protobuf:"bytes,2,opt,name=deployed_model_id,json=deployedModelId,proto3" json:"deployed_model_id,omitempty"`
	// Number of anomalies within all stats.
	AnomalyCount int32 `protobuf:"varint,3,opt,name=anomaly_count,json=anomalyCount,proto3" json:"anomaly_count,omitempty"`
	// A list of historical Stats and Anomalies generated for all Features.
	FeatureStats  []*ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies `protobuf:"bytes,4,rep,name=feature_stats,json=featureStats,proto3" json:"feature_stats,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ModelMonitoringStatsAnomalies) Reset() {
	*x = ModelMonitoringStatsAnomalies{}
	mi := &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes[4]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ModelMonitoringStatsAnomalies) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ModelMonitoringStatsAnomalies) ProtoMessage() {}

func (x *ModelMonitoringStatsAnomalies) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes[4]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ModelMonitoringStatsAnomalies.ProtoReflect.Descriptor instead.
func (*ModelMonitoringStatsAnomalies) Descriptor() ([]byte, []int) {
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{4}
}

func (x *ModelMonitoringStatsAnomalies) GetObjective() ModelDeploymentMonitoringObjectiveType {
	if x != nil {
		return x.Objective
	}
	return ModelDeploymentMonitoringObjectiveType_MODEL_DEPLOYMENT_MONITORING_OBJECTIVE_TYPE_UNSPECIFIED
}

func (x *ModelMonitoringStatsAnomalies) GetDeployedModelId() string {
	if x != nil {
		return x.DeployedModelId
	}
	return ""
}

func (x *ModelMonitoringStatsAnomalies) GetAnomalyCount() int32 {
	if x != nil {
		return x.AnomalyCount
	}
	return 0
}

func (x *ModelMonitoringStatsAnomalies) GetFeatureStats() []*ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies {
	if x != nil {
		return x.FeatureStats
	}
	return nil
}

// All metadata of most recent monitoring pipelines.
type ModelDeploymentMonitoringJob_LatestMonitoringPipelineMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The time that most recent monitoring pipelines that is related to this
	// run.
	RunTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=run_time,json=runTime,proto3" json:"run_time,omitempty"`
	// The status of the most recent monitoring pipeline.
	Status        *status.Status `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ModelDeploymentMonitoringJob_LatestMonitoringPipelineMetadata) Reset() {
	*x = ModelDeploymentMonitoringJob_LatestMonitoringPipelineMetadata{}
	mi := &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes[5]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ModelDeploymentMonitoringJob_LatestMonitoringPipelineMetadata) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ModelDeploymentMonitoringJob_LatestMonitoringPipelineMetadata) ProtoMessage() {}

func (x *ModelDeploymentMonitoringJob_LatestMonitoringPipelineMetadata) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes[5]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ModelDeploymentMonitoringJob_LatestMonitoringPipelineMetadata.ProtoReflect.Descriptor instead.
func (*ModelDeploymentMonitoringJob_LatestMonitoringPipelineMetadata) Descriptor() ([]byte, []int) {
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{0, 0}
}

func (x *ModelDeploymentMonitoringJob_LatestMonitoringPipelineMetadata) GetRunTime() *timestamppb.Timestamp {
	if x != nil {
		return x.RunTime
	}
	return nil
}

func (x *ModelDeploymentMonitoringJob_LatestMonitoringPipelineMetadata) GetStatus() *status.Status {
	if x != nil {
		return x.Status
	}
	return nil
}

// Historical Stats (and Anomalies) for a specific Feature.
type ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Display Name of the Feature.
	FeatureDisplayName string `protobuf:"bytes,1,opt,name=feature_display_name,json=featureDisplayName,proto3" json:"feature_display_name,omitempty"`
	// Threshold for anomaly detection.
	Threshold *ThresholdConfig `protobuf:"bytes,3,opt,name=threshold,proto3" json:"threshold,omitempty"`
	// Stats calculated for the Training Dataset.
	TrainingStats *FeatureStatsAnomaly `protobuf:"bytes,4,opt,name=training_stats,json=trainingStats,proto3" json:"training_stats,omitempty"`
	// A list of historical stats generated by different time window's
	// Prediction Dataset.
	PredictionStats []*FeatureStatsAnomaly `protobuf:"bytes,5,rep,name=prediction_stats,json=predictionStats,proto3" json:"prediction_stats,omitempty"`
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

func (x *ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) Reset() {
	*x = ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies{}
	mi := &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes[7]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) ProtoMessage() {}

func (x *ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes[7]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies.ProtoReflect.Descriptor instead.
func (*ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) Descriptor() ([]byte, []int) {
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescGZIP(), []int{4, 0}
}

func (x *ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) GetFeatureDisplayName() string {
	if x != nil {
		return x.FeatureDisplayName
	}
	return ""
}

func (x *ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) GetThreshold() *ThresholdConfig {
	if x != nil {
		return x.Threshold
	}
	return nil
}

func (x *ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) GetTrainingStats() *FeatureStatsAnomaly {
	if x != nil {
		return x.TrainingStats
	}
	return nil
}

func (x *ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies) GetPredictionStats() []*FeatureStatsAnomaly {
	if x != nil {
		return x.PredictionStats
	}
	return nil
}

var File_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto protoreflect.FileDescriptor

const file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDesc = "" +
	"\n" +
	"Egoogle/cloud/aiplatform/v1beta1/model_deployment_monitoring_job.proto\x12\x1fgoogle.cloud.aiplatform.v1beta1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a5google/cloud/aiplatform/v1beta1/encryption_spec.proto\x1a>google/cloud/aiplatform/v1beta1/feature_monitoring_stats.proto\x1a(google/cloud/aiplatform/v1beta1/io.proto\x1a/google/cloud/aiplatform/v1beta1/job_state.proto\x1a6google/cloud/aiplatform/v1beta1/model_monitoring.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\"\x9e\x15\n" +
	"\x1cModelDeploymentMonitoringJob\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\x03R\x04name\x12&\n" +
	"\fdisplay_name\x18\x02 \x01(\tB\x03\xe0A\x02R\vdisplayName\x12F\n" +
	"\bendpoint\x18\x03 \x01(\tB*\xe0A\x02\xfaA$\n" +
	"\"aiplatform.googleapis.com/EndpointR\bendpoint\x12D\n" +
	"\x05state\x18\x04 \x01(\x0e2).google.cloud.aiplatform.v1beta1.JobStateB\x03\xe0A\x03R\x05state\x12\x81\x01\n" +
	"\x0eschedule_state\x18\x05 \x01(\x0e2U.google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.MonitoringScheduleStateB\x03\xe0A\x03R\rscheduleState\x12\xb2\x01\n" +
	"#latest_monitoring_pipeline_metadata\x18\x19 \x01(\v2^.google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.LatestMonitoringPipelineMetadataB\x03\xe0A\x03R latestMonitoringPipelineMetadata\x12\xb0\x01\n" +
	"-model_deployment_monitoring_objective_configs\x18\x06 \x03(\v2I.google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringObjectiveConfigB\x03\xe0A\x02R)modelDeploymentMonitoringObjectiveConfigs\x12\xab\x01\n" +
	"+model_deployment_monitoring_schedule_config\x18\a \x01(\v2H.google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringScheduleConfigB\x03\xe0A\x02R'modelDeploymentMonitoringScheduleConfig\x12r\n" +
	"\x19logging_sampling_strategy\x18\b \x01(\v21.google.cloud.aiplatform.v1beta1.SamplingStrategyB\x03\xe0A\x02R\x17loggingSamplingStrategy\x12~\n" +
	"\x1dmodel_monitoring_alert_config\x18\x0f \x01(\v2;.google.cloud.aiplatform.v1beta1.ModelMonitoringAlertConfigR\x1amodelMonitoringAlertConfig\x12=\n" +
	"\x1bpredict_instance_schema_uri\x18\t \x01(\tR\x18predictInstanceSchemaUri\x12N\n" +
	"\x17sample_predict_instance\x18\x13 \x01(\v2\x16.google.protobuf.ValueR\x15samplePredictInstance\x12?\n" +
	"\x1canalysis_instance_schema_uri\x18\x10 \x01(\tR\x19analysisInstanceSchemaUri\x12u\n" +
	"\x0fbigquery_tables\x18\n" +
	" \x03(\v2G.google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringBigQueryTableB\x03\xe0A\x03R\x0ebigqueryTables\x122\n" +
	"\alog_ttl\x18\x11 \x01(\v2\x19.google.protobuf.DurationR\x06logTtl\x12a\n" +
	"\x06labels\x18\v \x03(\v2I.google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.LabelsEntryR\x06labels\x12@\n" +
	"\vcreate_time\x18\f \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"createTime\x12@\n" +
	"\vupdate_time\x18\r \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"updateTime\x12M\n" +
	"\x12next_schedule_time\x18\x0e \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\x10nextScheduleTime\x12t\n" +
	"\x1estats_anomalies_base_directory\x18\x14 \x01(\v2/.google.cloud.aiplatform.v1beta1.GcsDestinationR\x1bstatsAnomaliesBaseDirectory\x12X\n" +
	"\x0fencryption_spec\x18\x15 \x01(\v2/.google.cloud.aiplatform.v1beta1.EncryptionSpecR\x0eencryptionSpec\x12E\n" +
	"\x1fenable_monitoring_pipeline_logs\x18\x16 \x01(\bR\x1cenableMonitoringPipelineLogs\x12-\n" +
	"\x05error\x18\x17 \x01(\v2\x12.google.rpc.StatusB\x03\xe0A\x03R\x05error\x12(\n" +
	"\rsatisfies_pzs\x18\x1a \x01(\bB\x03\xe0A\x03R\fsatisfiesPzs\x12(\n" +
	"\rsatisfies_pzi\x18\x1b \x01(\bB\x03\xe0A\x03R\fsatisfiesPzi\x1a\x85\x01\n" +
	" LatestMonitoringPipelineMetadata\x125\n" +
	"\brun_time\x18\x01 \x01(\v2\x1a.google.protobuf.TimestampR\arunTime\x12*\n" +
	"\x06status\x18\x02 \x01(\v2\x12.google.rpc.StatusR\x06status\x1a9\n" +
	"\vLabelsEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"k\n" +
	"\x17MonitoringScheduleState\x12)\n" +
	"%MONITORING_SCHEDULE_STATE_UNSPECIFIED\x10\x00\x12\v\n" +
	"\aPENDING\x10\x01\x12\v\n" +
	"\aOFFLINE\x10\x02\x12\v\n" +
	"\aRUNNING\x10\x03:\xa5\x01\xeaA\xa1\x01\n" +
	"6aiplatform.googleapis.com/ModelDeploymentMonitoringJob\x12gprojects/{project}/locations/{location}/modelDeploymentMonitoringJobs/{model_deployment_monitoring_job}\"\x94\x04\n" +
	"&ModelDeploymentMonitoringBigQueryTable\x12p\n" +
	"\n" +
	"log_source\x18\x01 \x01(\x0e2Q.google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringBigQueryTable.LogSourceR\tlogSource\x12j\n" +
	"\blog_type\x18\x02 \x01(\x0e2O.google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringBigQueryTable.LogTypeR\alogType\x12.\n" +
	"\x13bigquery_table_path\x18\x03 \x01(\tR\x11bigqueryTablePath\x12Y\n" +
	"'request_response_logging_schema_version\x18\x04 \x01(\tB\x03\xe0A\x03R#requestResponseLoggingSchemaVersion\"B\n" +
	"\tLogSource\x12\x1a\n" +
	"\x16LOG_SOURCE_UNSPECIFIED\x10\x00\x12\f\n" +
	"\bTRAINING\x10\x01\x12\v\n" +
	"\aSERVING\x10\x02\"=\n" +
	"\aLogType\x12\x18\n" +
	"\x14LOG_TYPE_UNSPECIFIED\x10\x00\x12\v\n" +
	"\aPREDICT\x10\x01\x12\v\n" +
	"\aEXPLAIN\x10\x02\"\xc2\x01\n" +
	"(ModelDeploymentMonitoringObjectiveConfig\x12*\n" +
	"\x11deployed_model_id\x18\x01 \x01(\tR\x0fdeployedModelId\x12j\n" +
	"\x10objective_config\x18\x02 \x01(\v2?.google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfigR\x0fobjectiveConfig\"\xb6\x01\n" +
	"'ModelDeploymentMonitoringScheduleConfig\x12I\n" +
	"\x10monitor_interval\x18\x01 \x01(\v2\x19.google.protobuf.DurationB\x03\xe0A\x02R\x0fmonitorInterval\x12@\n" +
	"\x0emonitor_window\x18\x02 \x01(\v2\x19.google.protobuf.DurationR\rmonitorWindow\"\xbd\x05\n" +
	"\x1dModelMonitoringStatsAnomalies\x12e\n" +
	"\tobjective\x18\x01 \x01(\x0e2G.google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringObjectiveTypeR\tobjective\x12*\n" +
	"\x11deployed_model_id\x18\x02 \x01(\tR\x0fdeployedModelId\x12#\n" +
	"\ranomaly_count\x18\x03 \x01(\x05R\fanomalyCount\x12\x81\x01\n" +
	"\rfeature_stats\x18\x04 \x03(\v2\\.google.cloud.aiplatform.v1beta1.ModelMonitoringStatsAnomalies.FeatureHistoricStatsAnomaliesR\ffeatureStats\x1a\xdf\x02\n" +
	"\x1dFeatureHistoricStatsAnomalies\x120\n" +
	"\x14feature_display_name\x18\x01 \x01(\tR\x12featureDisplayName\x12N\n" +
	"\tthreshold\x18\x03 \x01(\v20.google.cloud.aiplatform.v1beta1.ThresholdConfigR\tthreshold\x12[\n" +
	"\x0etraining_stats\x18\x04 \x01(\v24.google.cloud.aiplatform.v1beta1.FeatureStatsAnomalyR\rtrainingStats\x12_\n" +
	"\x10prediction_stats\x18\x05 \x03(\v24.google.cloud.aiplatform.v1beta1.FeatureStatsAnomalyR\x0fpredictionStats*\xce\x01\n" +
	"&ModelDeploymentMonitoringObjectiveType\x12:\n" +
	"6MODEL_DEPLOYMENT_MONITORING_OBJECTIVE_TYPE_UNSPECIFIED\x10\x00\x12\x14\n" +
	"\x10RAW_FEATURE_SKEW\x10\x01\x12\x15\n" +
	"\x11RAW_FEATURE_DRIFT\x10\x02\x12\x1c\n" +
	"\x18FEATURE_ATTRIBUTION_SKEW\x10\x03\x12\x1d\n" +
	"\x19FEATURE_ATTRIBUTION_DRIFT\x10\x04B\xf8\x01\n" +
	"#com.google.cloud.aiplatform.v1beta1B!ModelDeploymentMonitoringJobProtoP\x01ZCcloud.google.com/go/aiplatform/apiv1beta1/aiplatformpb;aiplatformpb\xaa\x02\x1fGoogle.Cloud.AIPlatform.V1Beta1\xca\x02\x1fGoogle\\Cloud\\AIPlatform\\V1beta1\xea\x02\"Google::Cloud::AIPlatform::V1beta1b\x06proto3"

var (
	file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescOnce sync.Once
	file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescData []byte
)

func file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescGZIP() []byte {
	file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescOnce.Do(func() {
		file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDesc), len(file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDesc)))
	})
	return file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDescData
}

var file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
var file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes = make([]protoimpl.MessageInfo, 8)
var file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_goTypes = []any{
	(ModelDeploymentMonitoringObjectiveType)(0),                           // 0: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringObjectiveType
	(ModelDeploymentMonitoringJob_MonitoringScheduleState)(0),             // 1: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.MonitoringScheduleState
	(ModelDeploymentMonitoringBigQueryTable_LogSource)(0),                 // 2: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringBigQueryTable.LogSource
	(ModelDeploymentMonitoringBigQueryTable_LogType)(0),                   // 3: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringBigQueryTable.LogType
	(*ModelDeploymentMonitoringJob)(nil),                                  // 4: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob
	(*ModelDeploymentMonitoringBigQueryTable)(nil),                        // 5: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringBigQueryTable
	(*ModelDeploymentMonitoringObjectiveConfig)(nil),                      // 6: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringObjectiveConfig
	(*ModelDeploymentMonitoringScheduleConfig)(nil),                       // 7: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringScheduleConfig
	(*ModelMonitoringStatsAnomalies)(nil),                                 // 8: google.cloud.aiplatform.v1beta1.ModelMonitoringStatsAnomalies
	(*ModelDeploymentMonitoringJob_LatestMonitoringPipelineMetadata)(nil), // 9: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.LatestMonitoringPipelineMetadata
	nil, // 10: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.LabelsEntry
	(*ModelMonitoringStatsAnomalies_FeatureHistoricStatsAnomalies)(nil), // 11: google.cloud.aiplatform.v1beta1.ModelMonitoringStatsAnomalies.FeatureHistoricStatsAnomalies
	(JobState)(0),                          // 12: google.cloud.aiplatform.v1beta1.JobState
	(*SamplingStrategy)(nil),               // 13: google.cloud.aiplatform.v1beta1.SamplingStrategy
	(*ModelMonitoringAlertConfig)(nil),     // 14: google.cloud.aiplatform.v1beta1.ModelMonitoringAlertConfig
	(*structpb.Value)(nil),                 // 15: google.protobuf.Value
	(*durationpb.Duration)(nil),            // 16: google.protobuf.Duration
	(*timestamppb.Timestamp)(nil),          // 17: google.protobuf.Timestamp
	(*GcsDestination)(nil),                 // 18: google.cloud.aiplatform.v1beta1.GcsDestination
	(*EncryptionSpec)(nil),                 // 19: google.cloud.aiplatform.v1beta1.EncryptionSpec
	(*status.Status)(nil),                  // 20: google.rpc.Status
	(*ModelMonitoringObjectiveConfig)(nil), // 21: google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig
	(*ThresholdConfig)(nil),                // 22: google.cloud.aiplatform.v1beta1.ThresholdConfig
	(*FeatureStatsAnomaly)(nil),            // 23: google.cloud.aiplatform.v1beta1.FeatureStatsAnomaly
}
var file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_depIdxs = []int32{
	12, // 0: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.state:type_name -> google.cloud.aiplatform.v1beta1.JobState
	1,  // 1: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.schedule_state:type_name -> google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.MonitoringScheduleState
	9,  // 2: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.latest_monitoring_pipeline_metadata:type_name -> google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.LatestMonitoringPipelineMetadata
	6,  // 3: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.model_deployment_monitoring_objective_configs:type_name -> google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringObjectiveConfig
	7,  // 4: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.model_deployment_monitoring_schedule_config:type_name -> google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringScheduleConfig
	13, // 5: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.logging_sampling_strategy:type_name -> google.cloud.aiplatform.v1beta1.SamplingStrategy
	14, // 6: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.model_monitoring_alert_config:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringAlertConfig
	15, // 7: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.sample_predict_instance:type_name -> google.protobuf.Value
	5,  // 8: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.bigquery_tables:type_name -> google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringBigQueryTable
	16, // 9: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.log_ttl:type_name -> google.protobuf.Duration
	10, // 10: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.labels:type_name -> google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.LabelsEntry
	17, // 11: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.create_time:type_name -> google.protobuf.Timestamp
	17, // 12: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.update_time:type_name -> google.protobuf.Timestamp
	17, // 13: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.next_schedule_time:type_name -> google.protobuf.Timestamp
	18, // 14: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.stats_anomalies_base_directory:type_name -> google.cloud.aiplatform.v1beta1.GcsDestination
	19, // 15: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.encryption_spec:type_name -> google.cloud.aiplatform.v1beta1.EncryptionSpec
	20, // 16: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.error:type_name -> google.rpc.Status
	2,  // 17: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringBigQueryTable.log_source:type_name -> google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringBigQueryTable.LogSource
	3,  // 18: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringBigQueryTable.log_type:type_name -> google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringBigQueryTable.LogType
	21, // 19: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringObjectiveConfig.objective_config:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringObjectiveConfig
	16, // 20: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringScheduleConfig.monitor_interval:type_name -> google.protobuf.Duration
	16, // 21: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringScheduleConfig.monitor_window:type_name -> google.protobuf.Duration
	0,  // 22: google.cloud.aiplatform.v1beta1.ModelMonitoringStatsAnomalies.objective:type_name -> google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringObjectiveType
	11, // 23: google.cloud.aiplatform.v1beta1.ModelMonitoringStatsAnomalies.feature_stats:type_name -> google.cloud.aiplatform.v1beta1.ModelMonitoringStatsAnomalies.FeatureHistoricStatsAnomalies
	17, // 24: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.LatestMonitoringPipelineMetadata.run_time:type_name -> google.protobuf.Timestamp
	20, // 25: google.cloud.aiplatform.v1beta1.ModelDeploymentMonitoringJob.LatestMonitoringPipelineMetadata.status:type_name -> google.rpc.Status
	22, // 26: google.cloud.aiplatform.v1beta1.ModelMonitoringStatsAnomalies.FeatureHistoricStatsAnomalies.threshold:type_name -> google.cloud.aiplatform.v1beta1.ThresholdConfig
	23, // 27: google.cloud.aiplatform.v1beta1.ModelMonitoringStatsAnomalies.FeatureHistoricStatsAnomalies.training_stats:type_name -> google.cloud.aiplatform.v1beta1.FeatureStatsAnomaly
	23, // 28: google.cloud.aiplatform.v1beta1.ModelMonitoringStatsAnomalies.FeatureHistoricStatsAnomalies.prediction_stats:type_name -> google.cloud.aiplatform.v1beta1.FeatureStatsAnomaly
	29, // [29:29] is the sub-list for method output_type
	29, // [29:29] is the sub-list for method input_type
	29, // [29:29] is the sub-list for extension type_name
	29, // [29:29] is the sub-list for extension extendee
	0,  // [0:29] is the sub-list for field type_name
}

func init() { file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_init() }
func file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_init() {
	if File_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto != nil {
		return
	}
	file_google_cloud_aiplatform_v1beta1_encryption_spec_proto_init()
	file_google_cloud_aiplatform_v1beta1_feature_monitoring_stats_proto_init()
	file_google_cloud_aiplatform_v1beta1_io_proto_init()
	file_google_cloud_aiplatform_v1beta1_job_state_proto_init()
	file_google_cloud_aiplatform_v1beta1_model_monitoring_proto_init()
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDesc), len(file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_rawDesc)),
			NumEnums:      4,
			NumMessages:   8,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_goTypes,
		DependencyIndexes: file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_depIdxs,
		EnumInfos:         file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_enumTypes,
		MessageInfos:      file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_msgTypes,
	}.Build()
	File_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto = out.File
	file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_goTypes = nil
	file_google_cloud_aiplatform_v1beta1_model_deployment_monitoring_job_proto_depIdxs = nil
}
