Skip to content

Commit

Permalink
feat: add reserved_ip_ranges to CustomJobSpec in aiplatform v1 custom…
Browse files Browse the repository at this point in the history
…_job.proto (#286)

feat: rename Similarity to Examples, and similarity to examples in ExplanationParameters in aiplatform v1beta1 explanation.proto
feat: add reserved_ip_ranges to CustomJobSpec in aiplatform v1beta1 custom_job.proto
feat: add nfs_mounts to WorkPoolSpec in aiplatform v1beta1 custom_job.proto
feat: add PredictRequestResponseLoggingConfig to aiplatform v1beta1 endpoint.proto
feat: add model_version_id to DeployedModel in aiplatform v1beta1 endpoint.proto
feat: add JOB_STATE_UPDATING to JobState in aiplatform v1beta1 job_state.proto
feat: add MfsMount in aiplatform v1beta1 machine_resources.proto
feat: add version_id to Model in aiplatform v1beta1 model.proto
feat: add LatestMonitoringPipelineMetadata to ModelDeploymentMonitoringJob in aiplatform v1beta1 model_deployment_monitoring_job.proto
feat: add ListModelVersion, DeleteModelVersion, and MergeVersionAliases rpcs to aiplatform v1beta1 model_service.proto
feat: add model_version_id to UploadModelRequest and UploadModelResponse in aiplatform v1beta1 model_service.proto
feat: add model_version_id to PredictResponse in aiplatform v1beta1 prediction_service.proto
feat: add ConvexAutomatedStoppingSpec to StudySpec in aiplatform v1beta1 study.proto
feat: add model_id and parent_model to TrainingPipeline in aiplatform v1beta1 training_pipeline.proto
PiperOrigin-RevId: 441615103
Source-Link: googleapis/googleapis@2ce1c56
Source-Link: googleapis/googleapis-gen@54ad530
Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNTRhZDUzMDI2ODE2OTdkNGU0NWJlNjkwNjkzMjJkOTMyOGI1ODU4MCJ9
  • Loading branch information
gcf-owl-bot[bot] committed Apr 14, 2022
1 parent 23bb3ca commit 1b097be
Show file tree
Hide file tree
Showing 107 changed files with 91,438 additions and 84,157 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,16 @@ message CustomJobSpec {
type: "compute.googleapis.com/Network"
}];

// Optional. A list of names for the reserved ip ranges under the VPC network
// that can be used for this job.
//
// If set, we will deploy the job within the provided ip ranges. Otherwise,
// the job will be deployed to any ip ranges under the provided VPC
// network.
//
// Example: ['vertex-ai-ip-range'].
repeated string reserved_ip_ranges = 13 [(google.api.field_behavior) = OPTIONAL];

// The Cloud Storage location to store the output of this CustomJob or
// HyperparameterTuningJob. For HyperparameterTuningJob,
// the baseOutputDirectory of
Expand Down Expand Up @@ -204,6 +214,9 @@ message WorkerPoolSpec {
// Optional. The number of worker replicas to use for this worker pool.
int64 replica_count = 2 [(google.api.field_behavior) = OPTIONAL];

// Optional. List of NFS mount spec.
repeated NfsMount nfs_mounts = 4 [(google.api.field_behavior) = OPTIONAL];

// Disk spec.
DiskSpec disk_spec = 5;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ message Endpoint {
type: "compute.googleapis.com/Network"
}];

// If true, expose the Endpoint via private service connect.
// Deprecated: If true, expose the Endpoint via private service connect.
//
// Only one of the fields, [network][google.cloud.aiplatform.v1.Endpoint.network] or
// [enable_private_service_connect][google.cloud.aiplatform.v1.Endpoint.enable_private_service_connect],
Expand Down Expand Up @@ -243,7 +243,7 @@ message PredictRequestResponseLoggingConfig {
double sampling_rate = 2;

// BigQuery table for logging.
// If only given project, a new dataset will be created with name
// If only given a project, a new dataset will be created with name
// `logging_<endpoint-display-name>_<endpoint-id>` where
// <endpoint-display-name> will be made BigQuery-dataset-name compatible (e.g.
// most special characters will become underscores). If no table name is
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,15 +74,13 @@ message EntityType {
// "overwrite" update happens.
string etag = 7 [(google.api.field_behavior) = OPTIONAL];

// Optional. The default monitoring configuration for all Features with value
// type
// ([Feature.ValueType][google.cloud.aiplatform.v1.Feature.ValueType]) BOOL,
// STRING, DOUBLE or INT64 under this EntityType.
// Optional. The default monitoring configuration for all Features with value type
// ([Feature.ValueType][google.cloud.aiplatform.v1.Feature.ValueType]) BOOL, STRING, DOUBLE or INT64 under this
// EntityType.
//
// If this is populated with
// [FeaturestoreMonitoringConfig.monitoring_interval] specified, snapshot
// analysis monitoring is enabled. Otherwise, snapshot analysis monitoring is
// disabled.
FeaturestoreMonitoringConfig monitoring_config = 8
[(google.api.field_behavior) = OPTIONAL];
FeaturestoreMonitoringConfig monitoring_config = 8 [(google.api.field_behavior) = OPTIONAL];
}
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,7 @@ message Feature {
// A list of historical [Snapshot
// Analysis][FeaturestoreMonitoringConfig.SnapshotAnalysis] or [Import Feature
// Analysis] [FeaturestoreMonitoringConfig.ImportFeatureAnalysis] stats
// requested by user, sorted by
// [FeatureStatsAnomaly.start_time][google.cloud.aiplatform.v1.FeatureStatsAnomaly.start_time]
// descending.
// requested by user, sorted by [FeatureStatsAnomaly.start_time][google.cloud.aiplatform.v1.FeatureStatsAnomaly.start_time] descending.
message MonitoringStatsAnomaly {
// If the objective in the request is both
// Import Feature Analysis and Snapshot Analysis, this objective could be
Expand All @@ -64,8 +62,7 @@ message Feature {
Objective objective = 1 [(google.api.field_behavior) = OUTPUT_ONLY];

// Output only. The stats and anomalies generated at specific timestamp.
FeatureStatsAnomaly feature_stats_anomaly = 2
[(google.api.field_behavior) = OUTPUT_ONLY];
FeatureStatsAnomaly feature_stats_anomaly = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
}

// An enum representing the value type of a feature.
Expand Down Expand Up @@ -143,17 +140,15 @@ message Feature {
// "overwrite" update happens.
string etag = 7;

// Optional. If not set, use the monitoring_config defined for the EntityType
// this Feature belongs to. Only Features with type
// ([Feature.ValueType][google.cloud.aiplatform.v1.Feature.ValueType]) BOOL,
// STRING, DOUBLE or INT64 can enable monitoring.
// Optional. If not set, use the monitoring_config defined for the EntityType this
// Feature belongs to.
// Only Features with type ([Feature.ValueType][google.cloud.aiplatform.v1.Feature.ValueType]) BOOL, STRING, DOUBLE or
// INT64 can enable monitoring.
//
// If set to true, all types of data monitoring are disabled despite the
// config on EntityType.
bool disable_monitoring = 12 [(google.api.field_behavior) = OPTIONAL];

// Output only. The list of historical stats and anomalies with specified
// objectives.
repeated MonitoringStatsAnomaly monitoring_stats_anomalies = 11
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The list of historical stats and anomalies with specified objectives.
repeated MonitoringStatsAnomaly monitoring_stats_anomalies = 11 [(google.api.field_behavior) = OUTPUT_ONLY];
}
Original file line number Diff line number Diff line change
Expand Up @@ -41,32 +41,33 @@ message Featurestore {
// OnlineServingConfig specifies the details for provisioning online serving
// resources.
message OnlineServingConfig {
// The number of nodes for each cluster. The number of nodes will not
// scale automatically but can be scaled manually by providing different
// values when updating.
// Only one of `fixed_node_count` and `scaling` can be set. Setting one will
// reset the other.
// The number of nodes for the online store. The number of nodes doesn't
// scale automatically, but you can manually update the number of
// nodes. If set to 0, the featurestore will not have an
// online store and cannot be used for online serving.
int32 fixed_node_count = 2;
}

// Possible states a Featurestore can have.
// Possible states a featurestore can have.
enum State {
// Default value. This value is unused.
STATE_UNSPECIFIED = 0;

// State when the Featurestore configuration is not being updated and the
// fields reflect the current configuration of the Featurestore. The
// Featurestore is usable in this state.
// State when the featurestore configuration is not being updated and the
// fields reflect the current configuration of the featurestore. The
// featurestore is usable in this state.
STABLE = 1;

// State when the Featurestore configuration is being updated and the fields
// reflect the updated configuration of the Featurestore, not the current
// one. For example, `online_serving_config.fixed_node_count` can take
// minutes to update. While the update is in progress, the Featurestore
// will be in the UPDATING state and the value of `fixed_node_count` will be
// the updated value. Until the update completes, the actual number of nodes
// can still be the original value of `fixed_node_count`. The Featurestore
// is still usable in this state.
// The state of the featurestore configuration when it is being updated.
// During an update, the fields reflect either the original configuration
// or the updated configuration of the featurestore. For example,
// `online_serving_config.fixed_node_count` can take minutes to update.
// While the update is in progress, the featurestore is in the UPDATING
// state, and the value of `fixed_node_count` can be the original value or
// the updated value, depending on the progress of the operation. Until the
// update completes, the actual number of nodes can still be the original
// value of `fixed_node_count`. The featurestore is still usable in this
// state.
UPDATING = 2;
}

Expand Down Expand Up @@ -97,8 +98,9 @@ message Featurestore {
// and are immutable.
map<string, string> labels = 6 [(google.api.field_behavior) = OPTIONAL];

// Required. Config for online serving resources.
OnlineServingConfig online_serving_config = 7 [(google.api.field_behavior) = REQUIRED];
// Optional. Config for online storage resources. If unset, the featurestore will
// not have an online store and cannot be used for online serving.
OnlineServingConfig online_serving_config = 7 [(google.api.field_behavior) = OPTIONAL];

// Output only. State of the featurestore.
State state = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -139,15 +139,11 @@ message FeaturestoreMonitoringConfig {

// Threshold for numerical features of anomaly detection.
// This is shared by all objectives of Featurestore Monitoring for numerical
// features (i.e. Features with type
// ([Feature.ValueType][google.cloud.aiplatform.v1.Feature.ValueType]) DOUBLE
// or INT64).
// features (i.e. Features with type ([Feature.ValueType][google.cloud.aiplatform.v1.Feature.ValueType]) DOUBLE or INT64).
ThresholdConfig numerical_threshold_config = 3;

// Threshold for categorical features of anomaly detection.
// This is shared by all types of Featurestore Monitoring for categorical
// features (i.e. Features with type
// ([Feature.ValueType][google.cloud.aiplatform.v1.Feature.ValueType]) BOOL or
// STRING).
// features (i.e. Features with type ([Feature.ValueType][google.cloud.aiplatform.v1.Feature.ValueType]) BOOL or STRING).
ThresholdConfig categorical_threshold_config = 4;
}
Original file line number Diff line number Diff line change
Expand Up @@ -80,22 +80,25 @@ message IndexEndpoint {
// Private services access must already be configured for the network. If left
// unspecified, the Endpoint is not peered with any network.
//
// Only one of the fields, [network][google.cloud.aiplatform.v1.IndexEndpoint.network] or
// [enable_private_service_connect][google.cloud.aiplatform.v1.IndexEndpoint.enable_private_service_connect],
// can be set.
// [network][google.cloud.aiplatform.v1.IndexEndpoint.network] and
// [private_service_connect_config][google.cloud.aiplatform.v1.IndexEndpoint.private_service_connect_config]
// are mutually exclusive.
//
// [Format](https://cloud.google.com/compute/docs/reference/rest/v1/networks/insert):
// projects/{project}/global/networks/{network}.
// Where {project} is a project number, as in '12345', and {network} is
// network name.
string network = 9 [(google.api.field_behavior) = OPTIONAL];

// Optional. If true, expose the IndexEndpoint via private service connect.
// Optional. Deprecated: If true, expose the IndexEndpoint via private service connect.
//
// Only one of the fields, [network][google.cloud.aiplatform.v1.IndexEndpoint.network] or
// [enable_private_service_connect][google.cloud.aiplatform.v1.IndexEndpoint.enable_private_service_connect],
// can be set.
bool enable_private_service_connect = 10 [(google.api.field_behavior) = OPTIONAL];
bool enable_private_service_connect = 10 [
deprecated = true,
(google.api.field_behavior) = OPTIONAL
];
}

// A deployment of an Index. IndexEndpoints contain one or more DeployedIndexes.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,4 +56,11 @@ enum JobState {

// The job has expired.
JOB_STATE_EXPIRED = 9;

// The job is being updated. The job is only able to be updated at RUNNING
// state; if the update operation succeeds, job goes back to RUNNING state; if
// the update operation fails, the job goes back to RUNNING state with error
// messages written to [ModelDeploymentMonitoringJob.partial_errors][] field
// if it is a ModelDeploymentMonitoringJob.
JOB_STATE_UPDATING = 10;
}
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,11 @@ message DedicatedResources {
// replicas at maximum may handle, a portion of the traffic will be dropped.
// If this value is not provided, will use [min_replica_count][google.cloud.aiplatform.v1.DedicatedResources.min_replica_count] as the
// default value.
//
// The value of this field impacts the charge against Vertex CPU and GPU
// quotas. Specifically, you will be charged for (max_replica_count *
// number of cores in the selected machine type) and (max_replica_count *
// number of GPUs per replica in the selected machine type).
int32 max_replica_count = 3 [(google.api.field_behavior) = IMMUTABLE];

// Immutable. The metric specifications that overrides a resource
Expand Down Expand Up @@ -164,6 +169,21 @@ message DiskSpec {
int32 boot_disk_size_gb = 2;
}

// Represents a mount configuration for Network File System (NFS) to mount.
message NfsMount {
// Required. IP address of the NFS server.
string server = 1 [(google.api.field_behavior) = REQUIRED];

// Required. Source path exported from NFS server.
// Has to start with '/', and combined with the ip address, it indicates
// the source mount path in the form of `server:path`
string path = 2 [(google.api.field_behavior) = REQUIRED];

// Required. Destination mount path. The NFS will be mounted for the user under
// /mnt/nfs/<mount_point>
string mount_point = 3 [(google.api.field_behavior) = REQUIRED];
}

// The metric specification that defines the target resource utilization
// (CPU utilization, accelerator's duty cycle, and so on) for calculating the
// desired replica count.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -571,9 +571,9 @@ message UpdateArtifactRequest {
// `projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact}`
Artifact artifact = 1 [(google.api.field_behavior) = REQUIRED];

// Required. A FieldMask indicating which fields should be updated.
// Optional. A FieldMask indicating which fields should be updated.
// Functionality of this field is not yet supported.
google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = OPTIONAL];

// If set to true, and the [Artifact][google.cloud.aiplatform.v1.Artifact] is not found, a new [Artifact][google.cloud.aiplatform.v1.Artifact] is
// created.
Expand Down Expand Up @@ -757,9 +757,9 @@ message UpdateContextRequest {
// `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}`
Context context = 1 [(google.api.field_behavior) = REQUIRED];

// Required. A FieldMask indicating which fields should be updated.
// Optional. A FieldMask indicating which fields should be updated.
// Functionality of this field is not yet supported.
google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = OPTIONAL];

// If set to true, and the [Context][google.cloud.aiplatform.v1.Context] is not found, a new [Context][google.cloud.aiplatform.v1.Context] is
// created.
Expand Down Expand Up @@ -1021,9 +1021,9 @@ message UpdateExecutionRequest {
// `projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution}`
Execution execution = 1 [(google.api.field_behavior) = REQUIRED];

// Required. A FieldMask indicating which fields should be updated.
// Optional. A FieldMask indicating which fields should be updated.
// Functionality of this field is not yet supported.
google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED];
google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = OPTIONAL];

// If set to true, and the [Execution][google.cloud.aiplatform.v1.Execution] is not found, a new [Execution][google.cloud.aiplatform.v1.Execution]
// is created.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,16 @@ message ModelDeploymentMonitoringJob {
pattern: "projects/{project}/locations/{location}/modelDeploymentMonitoringJobs/{model_deployment_monitoring_job}"
};

// All metadata of most recent monitoring pipelines.
message LatestMonitoringPipelineMetadata {
// The time that most recent monitoring pipelines that is related to this
// run.
google.protobuf.Timestamp run_time = 1;

// The status of the most recent monitoring pipeline.
google.rpc.Status status = 2;
}

// The state to Specify the monitoring pipeline.
enum MonitoringScheduleState {
// Unspecified state.
Expand Down Expand Up @@ -110,6 +120,9 @@ message ModelDeploymentMonitoringJob {
// Output only. Schedule state when the monitoring job is in Running state.
MonitoringScheduleState schedule_state = 5 [(google.api.field_behavior) = OUTPUT_ONLY];

// Output only. Latest triggered monitoring pipeline metadata.
LatestMonitoringPipelineMetadata latest_monitoring_pipeline_metadata = 25 [(google.api.field_behavior) = OUTPUT_ONLY];

// Required. The config for monitoring objectives. This is a per DeployedModel config.
// Each DeployedModel needs to be configured separately.
repeated ModelDeploymentMonitoringObjectiveConfig model_deployment_monitoring_objective_configs = 6 [(google.api.field_behavior) = REQUIRED];
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ option java_package = "com.google.cloud.aiplatform.v1";
option php_namespace = "Google\\Cloud\\AIPlatform\\V1";
option ruby_package = "Google::Cloud::AIPlatform::V1";

// Next ID: 7
// Next ID: 8
message ModelMonitoringObjectiveConfig {
// Training Dataset information.
message TrainingDataset {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -258,6 +258,23 @@ message ListModelsResponse {
// Request message for [ModelService.UpdateModel][google.cloud.aiplatform.v1.ModelService.UpdateModel].
message UpdateModelRequest {
// Required. The Model which replaces the resource on the server.
// When Model Versioning is enabled, the model.name will be used to determine
// whether to update the model or model version.
// 1. model.name with the @ value, e.g. models/123@1, refers to a version
// specific update.
// 2. model.name without the @ value, e.g. models/123, refers to a model
// update.
// 3. model.name with @-, e.g. models/123@-, refers to a model update.
// 4. Supported model fields: display_name, description; supported
// version-specific fields: version_description. Labels are supported in both
// scenarios. Both the model labels and the version labels are merged when a
// model is returned. When updating labels, if the request is for
// model-specific update, model label gets updated. Otherwise, version labels
// get updated.
// 5. A model name or model version name fields update mismatch will cause a
// precondition error.
// 6. One request cannot update both the model and the version fields. You
// must update them separately.
Model model = 1 [(google.api.field_behavior) = REQUIRED];

// Required. The update mask applies to the resource.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,8 +94,8 @@ message PipelineJob {
// Output only. Timestamp when this PipelineJob was most recently updated.
google.protobuf.Timestamp update_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY];

// Required. The spec of the pipeline.
google.protobuf.Struct pipeline_spec = 7 [(google.api.field_behavior) = REQUIRED];
// The spec of the pipeline.
google.protobuf.Struct pipeline_spec = 7;

// Output only. The detailed state of the job.
PipelineState state = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -322,6 +322,9 @@ message ListPipelineJobsRequest {
// * `end_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons.
// Values must be in RFC 3339 format.
// * `labels`: Supports key-value equality and key presence.
// * `template_uri`: Supports `=`, `!=` comparisons, and `:` wildcard.
// * `template_metadata.version_name`: Supports `=`, `!=` comparisons, and `:`
// wildcard.
//
// Filter expressions can be combined together using logical operators
// (`AND` & `OR`).
Expand Down
Loading

0 comments on commit 1b097be

Please sign in to comment.