Class: Google::Apis::AiplatformV1::GoogleCloudAiplatformV1ModelDeploymentMonitoringJob

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/aiplatform_v1/classes.rb,
lib/google/apis/aiplatform_v1/representations.rb,
lib/google/apis/aiplatform_v1/representations.rb

Overview

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.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudAiplatformV1ModelDeploymentMonitoringJob

Returns a new instance of GoogleCloudAiplatformV1ModelDeploymentMonitoringJob.



18130
18131
18132
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18130

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#analysis_instance_schema_uriString

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, 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. Corresponds to the JSON property analysisInstanceSchemaUri

Returns:

  • (String)


17973
17974
17975
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 17973

def analysis_instance_schema_uri
  @analysis_instance_schema_uri
end

#bigquery_tablesArray<Google::Apis::AiplatformV1::GoogleCloudAiplatformV1ModelDeploymentMonitoringBigQueryTable>

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 Corresponds to the JSON property bigqueryTables



17981
17982
17983
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 17981

def bigquery_tables
  @bigquery_tables
end

#create_timeString

Output only. Timestamp when this ModelDeploymentMonitoringJob was created. Corresponds to the JSON property createTime

Returns:

  • (String)


17986
17987
17988
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 17986

def create_time
  @create_time
end

#display_nameString

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. Corresponds to the JSON property displayName

Returns:

  • (String)


17993
17994
17995
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 17993

def display_name
  @display_name
end

#enable_monitoring_pipeline_logsBoolean Also known as: enable_monitoring_pipeline_logs?

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. Corresponds to the JSON property enableMonitoringPipelineLogs

Returns:

  • (Boolean)


18001
18002
18003
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18001

def enable_monitoring_pipeline_logs
  @enable_monitoring_pipeline_logs
end

#encryption_specGoogle::Apis::AiplatformV1::GoogleCloudAiplatformV1EncryptionSpec

Represents a customer-managed encryption key spec that can be applied to a top- level resource. Corresponds to the JSON property encryptionSpec



18008
18009
18010
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18008

def encryption_spec
  @encryption_spec
end

#endpointString

Required. Endpoint resource name. Format: projects/project/locations/ location/endpoints/endpoint` Corresponds to the JSON propertyendpoint`

Returns:

  • (String)


18014
18015
18016
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18014

def endpoint
  @endpoint
end

#errorGoogle::Apis::AiplatformV1::GoogleRpcStatus

The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC. Each Status message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the API Design Guide. Corresponds to the JSON property error



18024
18025
18026
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18024

def error
  @error
end

#labelsHash<String,String>

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. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


18033
18034
18035
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18033

def labels
  @labels
end

#latest_monitoring_pipeline_metadataGoogle::Apis::AiplatformV1::GoogleCloudAiplatformV1ModelDeploymentMonitoringJobLatestMonitoringPipelineMetadata

All metadata of most recent monitoring pipelines. Corresponds to the JSON property latestMonitoringPipelineMetadata



18038
18039
18040
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18038

def 
  @latest_monitoring_pipeline_metadata
end

#log_ttlString

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. Corresponds to the JSON property logTtl

Returns:

  • (String)


18045
18046
18047
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18045

def log_ttl
  @log_ttl
end

#logging_sampling_strategyGoogle::Apis::AiplatformV1::GoogleCloudAiplatformV1SamplingStrategy

Sampling Strategy for logging, can be for both training and prediction dataset. Corresponds to the JSON property loggingSamplingStrategy



18050
18051
18052
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18050

def logging_sampling_strategy
  @logging_sampling_strategy
end

#model_deployment_monitoring_objective_configsArray<Google::Apis::AiplatformV1::GoogleCloudAiplatformV1ModelDeploymentMonitoringObjectiveConfig>

Required. The config for monitoring objectives. This is a per DeployedModel config. Each DeployedModel needs to be configured separately. Corresponds to the JSON property modelDeploymentMonitoringObjectiveConfigs



18056
18057
18058
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18056

def model_deployment_monitoring_objective_configs
  @model_deployment_monitoring_objective_configs
end

#model_deployment_monitoring_schedule_configGoogle::Apis::AiplatformV1::GoogleCloudAiplatformV1ModelDeploymentMonitoringScheduleConfig

The config for scheduling monitoring job. Corresponds to the JSON property modelDeploymentMonitoringScheduleConfig



18061
18062
18063
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18061

def model_deployment_monitoring_schedule_config
  @model_deployment_monitoring_schedule_config
end

#model_monitoring_alert_configGoogle::Apis::AiplatformV1::GoogleCloudAiplatformV1ModelMonitoringAlertConfig

The alert config for model monitoring. Corresponds to the JSON property modelMonitoringAlertConfig



18066
18067
18068
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18066

def model_monitoring_alert_config
  @model_monitoring_alert_config
end

#nameString

Output only. Resource name of a ModelDeploymentMonitoringJob. Corresponds to the JSON property name

Returns:

  • (String)


18071
18072
18073
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18071

def name
  @name
end

#next_schedule_timeString

Output only. Timestamp when this monitoring pipeline will be scheduled to run for the next round. Corresponds to the JSON property nextScheduleTime

Returns:

  • (String)


18077
18078
18079
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18077

def next_schedule_time
  @next_schedule_time
end

#predict_instance_schema_uriString

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. Corresponds to the JSON property predictInstanceSchemaUri

Returns:

  • (String)


18084
18085
18086
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18084

def predict_instance_schema_uri
  @predict_instance_schema_uri
end

#sample_predict_instanceObject

Sample Predict instance, same format as PredictRequest.instances, this can be set as a replacement of ModelDeploymentMonitoringJob. predict_instance_schema_uri. If not set, we will generate predict schema from collected predict requests. Corresponds to the JSON property samplePredictInstance

Returns:

  • (Object)


18092
18093
18094
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18092

def sample_predict_instance
  @sample_predict_instance
end

#satisfies_pziBoolean Also known as: satisfies_pzi?

Output only. Reserved for future use. Corresponds to the JSON property satisfiesPzi

Returns:

  • (Boolean)


18097
18098
18099
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18097

def satisfies_pzi
  @satisfies_pzi
end

#satisfies_pzsBoolean Also known as: satisfies_pzs?

Output only. Reserved for future use. Corresponds to the JSON property satisfiesPzs

Returns:

  • (Boolean)


18103
18104
18105
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18103

def satisfies_pzs
  @satisfies_pzs
end

#schedule_stateString

Output only. Schedule state when the monitoring job is in Running state. Corresponds to the JSON property scheduleState

Returns:

  • (String)


18109
18110
18111
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18109

def schedule_state
  @schedule_state
end

#stateString

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'. Corresponds to the JSON property state

Returns:

  • (String)


18117
18118
18119
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18117

def state
  @state
end

#stats_anomalies_base_directoryGoogle::Apis::AiplatformV1::GoogleCloudAiplatformV1GcsDestination

The Google Cloud Storage location where the output is to be written to. Corresponds to the JSON property statsAnomaliesBaseDirectory



18122
18123
18124
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18122

def stats_anomalies_base_directory
  @stats_anomalies_base_directory
end

#update_timeString

Output only. Timestamp when this ModelDeploymentMonitoringJob was updated most recently. Corresponds to the JSON property updateTime

Returns:

  • (String)


18128
18129
18130
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18128

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



18135
18136
18137
18138
18139
18140
18141
18142
18143
18144
18145
18146
18147
18148
18149
18150
18151
18152
18153
18154
18155
18156
18157
18158
18159
18160
18161
# File 'lib/google/apis/aiplatform_v1/classes.rb', line 18135

def update!(**args)
  @analysis_instance_schema_uri = args[:analysis_instance_schema_uri] if args.key?(:analysis_instance_schema_uri)
  @bigquery_tables = args[:bigquery_tables] if args.key?(:bigquery_tables)
  @create_time = args[:create_time] if args.key?(:create_time)
  @display_name = args[:display_name] if args.key?(:display_name)
  @enable_monitoring_pipeline_logs = args[:enable_monitoring_pipeline_logs] if args.key?(:enable_monitoring_pipeline_logs)
  @encryption_spec = args[:encryption_spec] if args.key?(:encryption_spec)
  @endpoint = args[:endpoint] if args.key?(:endpoint)
  @error = args[:error] if args.key?(:error)
  @labels = args[:labels] if args.key?(:labels)
  @latest_monitoring_pipeline_metadata = args[:latest_monitoring_pipeline_metadata] if args.key?(:latest_monitoring_pipeline_metadata)
  @log_ttl = args[:log_ttl] if args.key?(:log_ttl)
  @logging_sampling_strategy = args[:logging_sampling_strategy] if args.key?(:logging_sampling_strategy)
  @model_deployment_monitoring_objective_configs = args[:model_deployment_monitoring_objective_configs] if args.key?(:model_deployment_monitoring_objective_configs)
  @model_deployment_monitoring_schedule_config = args[:model_deployment_monitoring_schedule_config] if args.key?(:model_deployment_monitoring_schedule_config)
  @model_monitoring_alert_config = args[:model_monitoring_alert_config] if args.key?(:model_monitoring_alert_config)
  @name = args[:name] if args.key?(:name)
  @next_schedule_time = args[:next_schedule_time] if args.key?(:next_schedule_time)
  @predict_instance_schema_uri = args[:predict_instance_schema_uri] if args.key?(:predict_instance_schema_uri)
  @sample_predict_instance = args[:sample_predict_instance] if args.key?(:sample_predict_instance)
  @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
  @schedule_state = args[:schedule_state] if args.key?(:schedule_state)
  @state = args[:state] if args.key?(:state)
  @stats_anomalies_base_directory = args[:stats_anomalies_base_directory] if args.key?(:stats_anomalies_base_directory)
  @update_time = args[:update_time] if args.key?(:update_time)
end