Skip to content

Commit d706102

Browse files
Google APIscopybara-github
authored andcommitted
feat: add featurestore service to aiplatform v1
feat: add metadata service to aiplatform v1 Committer: @dizcology PiperOrigin-RevId: 402573132
1 parent f0d5f7f commit d706102

23 files changed

Lines changed: 3621 additions & 10 deletions

google/cloud/aiplatform/v1/BUILD.bazel

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,11 +45,18 @@ proto_library(
4545
"encryption_spec.proto",
4646
"endpoint.proto",
4747
"endpoint_service.proto",
48+
"entity_type.proto",
4849
"env_var.proto",
50+
"event.proto",
4951
"execution.proto",
5052
"explanation_metadata.proto",
5153
"explanation.proto",
54+
"feature.proto",
5255
"feature_monitoring_stats.proto",
56+
"feature_selector.proto",
57+
"featurestore.proto",
58+
"featurestore_online_service.proto",
59+
"featurestore_service.proto",
5360
"hyperparameter_tuning_job.proto",
5461
"index_endpoint.proto",
5562
"index_endpoint_service.proto",
@@ -58,6 +65,10 @@ proto_library(
5865
"io.proto",
5966
"job_service.proto",
6067
"job_state.proto",
68+
"lineage_subgraph.proto",
69+
"metadata_schema.proto",
70+
"metadata_service.proto",
71+
"metadata_store.proto",
6172
"machine_resources.proto",
6273
"manual_batch_tuning_parameters.proto",
6374
"migratable_resource.proto",
@@ -77,6 +88,7 @@ proto_library(
7788
"specialist_pool_service.proto",
7889
"study.proto",
7990
"training_pipeline.proto",
91+
"types.proto",
8092
"user_action_reference.proto",
8193
"value.proto",
8294
"vizier_service.proto",
@@ -371,8 +383,17 @@ ruby_grpc_library(
371383
ruby_cloud_gapic_library(
372384
name = "aiplatform_ruby_gapic",
373385
srcs = [":aiplatform_proto_with_info",],
374-
extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-aiplatform-v1"],
386+
extra_protoc_parameters = [
387+
"ruby-cloud-api-id=aiplatform.googleapis.com",
388+
"ruby-cloud-api-shortname=aiplatform",
389+
"ruby-cloud-gem-name=google-cloud-ai_platform-v1",
390+
"ruby-cloud-gem-namespace=Google::Cloud::AIPlatform::V1",
391+
"ruby-cloud-product-url=https://cloud.google.com/vertex-ai/docs/",
392+
"ruby-cloud-service-override=AiPlatform=AIPlatform",
393+
],
375394
grpc_service_config = "aiplatform_grpc_service_config.json",
395+
ruby_cloud_description = "Vertex AI enables data scientists, developers, and AI newcomers to create custom machine learning models specific to their business needs by leveraging Google's state-of-the-art transfer learning and innovative AI research.",
396+
ruby_cloud_title = "Vertex AI V1",
376397
deps = [
377398
":aiplatform_ruby_grpc",
378399
":aiplatform_ruby_proto",

google/cloud/aiplatform/v1/aiplatform_grpc_service_config.json

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,104 @@
7878
],
7979
"timeout": "5s"
8080
},
81+
{
82+
"name": [
83+
{
84+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
85+
"method": "CreateFeaturestore"
86+
},
87+
{
88+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
89+
"method": "GetFeaturestore"
90+
},
91+
{
92+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
93+
"method": "ListFeaturestores"
94+
},
95+
{
96+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
97+
"method": "UpdateFeaturestore"
98+
},
99+
{
100+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
101+
"method": "DeleteFeaturestore"
102+
},
103+
{
104+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
105+
"method": "CreateEntityType"
106+
},
107+
{
108+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
109+
"method": "GetEntityType"
110+
},
111+
{
112+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
113+
"method": "ListEntityTypes"
114+
},
115+
{
116+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
117+
"method": "UpdateEntityType"
118+
},
119+
{
120+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
121+
"method": "DeleteEntityType"
122+
},
123+
{
124+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
125+
"method": "CreateFeature"
126+
},
127+
{
128+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
129+
"method": "BatchCreateFeatures"
130+
},
131+
{
132+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
133+
"method": "GetFeature"
134+
},
135+
{
136+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
137+
"method": "ListFeatures"
138+
},
139+
{
140+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
141+
"method": "SearchFeatures"
142+
},
143+
{
144+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
145+
"method": "UpdateFeature"
146+
},
147+
{
148+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
149+
"method": "DeleteFeature"
150+
},
151+
{
152+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
153+
"method": "ImportFeatureValues"
154+
},
155+
{
156+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
157+
"method": "BatchReadFeatureValues"
158+
},
159+
{
160+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreService",
161+
"method": "ExportFeatureValuess"
162+
}
163+
],
164+
"timeout": "5s"
165+
},
166+
{
167+
"name": [
168+
{
169+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreOnlineServingService",
170+
"method": "ReadFeatureValues"
171+
},
172+
{
173+
"service": "google.cloud.aiplatform.v1beta1.FeaturestoreOnlineServingService",
174+
"method": "StreamingReadFeatureValues"
175+
}
176+
],
177+
"timeout": "5s"
178+
},
81179
{
82180
"name":[
83181
{

google/cloud/aiplatform/v1/aiplatform_v1.yaml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,12 @@ title: Vertex AI API
66
apis:
77
- name: google.cloud.aiplatform.v1.DatasetService
88
- name: google.cloud.aiplatform.v1.EndpointService
9+
- name: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService
10+
- name: google.cloud.aiplatform.v1.FeaturestoreService
911
- name: google.cloud.aiplatform.v1.IndexEndpointService
1012
- name: google.cloud.aiplatform.v1.IndexService
1113
- name: google.cloud.aiplatform.v1.JobService
14+
- name: google.cloud.aiplatform.v1.MetadataService
1215
- name: google.cloud.aiplatform.v1.MigrationService
1316
- name: google.cloud.aiplatform.v1.ModelService
1417
- name: google.cloud.aiplatform.v1.PipelineService
@@ -17,33 +20,53 @@ apis:
1720
- name: google.cloud.aiplatform.v1.VizierService
1821

1922
types:
23+
- name: google.cloud.aiplatform.v1.BatchCreateFeaturesOperationMetadata
24+
- name: google.cloud.aiplatform.v1.BatchCreateFeaturesResponse
2025
- name: google.cloud.aiplatform.v1.BatchMigrateResourcesOperationMetadata
2126
- name: google.cloud.aiplatform.v1.BatchMigrateResourcesResponse
27+
- name: google.cloud.aiplatform.v1.BatchReadFeatureValuesOperationMetadata
28+
- name: google.cloud.aiplatform.v1.BatchReadFeatureValuesResponse
2229
- name: google.cloud.aiplatform.v1.CheckTrialEarlyStoppingStateMetatdata
2330
- name: google.cloud.aiplatform.v1.CheckTrialEarlyStoppingStateResponse
2431
- name: google.cloud.aiplatform.v1.CreateDatasetOperationMetadata
2532
- name: google.cloud.aiplatform.v1.CreateEndpointOperationMetadata
33+
- name: google.cloud.aiplatform.v1.CreateEntityTypeOperationMetadata
34+
- name: google.cloud.aiplatform.v1.CreateFeatureOperationMetadata
35+
- name: google.cloud.aiplatform.v1.CreateFeaturestoreOperationMetadata
2636
- name: google.cloud.aiplatform.v1.CreateIndexEndpointOperationMetadata
2737
- name: google.cloud.aiplatform.v1.CreateIndexOperationMetadata
38+
- name: google.cloud.aiplatform.v1.CreateMetadataStoreOperationMetadata
2839
- name: google.cloud.aiplatform.v1.CreateSpecialistPoolOperationMetadata
40+
- name: google.cloud.aiplatform.v1.DeleteMetadataStoreOperationMetadata
2941
- name: google.cloud.aiplatform.v1.DeleteOperationMetadata
3042
- name: google.cloud.aiplatform.v1.DeployIndexOperationMetadata
3143
- name: google.cloud.aiplatform.v1.DeployIndexResponse
3244
- name: google.cloud.aiplatform.v1.DeployModelOperationMetadata
3345
- name: google.cloud.aiplatform.v1.DeployModelResponse
3446
- name: google.cloud.aiplatform.v1.ExportDataOperationMetadata
3547
- name: google.cloud.aiplatform.v1.ExportDataResponse
48+
- name: google.cloud.aiplatform.v1.ExportFeatureValuesOperationMetadata
49+
- name: google.cloud.aiplatform.v1.ExportFeatureValuesResponse
3650
- name: google.cloud.aiplatform.v1.ExportModelOperationMetadata
3751
- name: google.cloud.aiplatform.v1.ExportModelResponse
3852
- name: google.cloud.aiplatform.v1.ImportDataOperationMetadata
3953
- name: google.cloud.aiplatform.v1.ImportDataResponse
54+
- name: google.cloud.aiplatform.v1.ImportFeatureValuesOperationMetadata
55+
- name: google.cloud.aiplatform.v1.ImportFeatureValuesResponse
56+
- name: google.cloud.aiplatform.v1.PurgeArtifactsMetadata
57+
- name: google.cloud.aiplatform.v1.PurgeArtifactsResponse
58+
- name: google.cloud.aiplatform.v1.PurgeContextsMetadata
59+
- name: google.cloud.aiplatform.v1.PurgeContextsResponse
60+
- name: google.cloud.aiplatform.v1.PurgeExecutionsMetadata
61+
- name: google.cloud.aiplatform.v1.PurgeExecutionsResponse
4062
- name: google.cloud.aiplatform.v1.SpecialistPool
4163
- name: google.cloud.aiplatform.v1.SuggestTrialsMetadata
4264
- name: google.cloud.aiplatform.v1.SuggestTrialsResponse
4365
- name: google.cloud.aiplatform.v1.UndeployIndexOperationMetadata
4466
- name: google.cloud.aiplatform.v1.UndeployIndexResponse
4567
- name: google.cloud.aiplatform.v1.UndeployModelOperationMetadata
4668
- name: google.cloud.aiplatform.v1.UndeployModelResponse
69+
- name: google.cloud.aiplatform.v1.UpdateFeaturestoreOperationMetadata
4770
- name: google.cloud.aiplatform.v1.UpdateIndexOperationMetadata
4871
- name: google.cloud.aiplatform.v1.UpdateModelDeploymentMonitoringJobOperationMetadata
4972
- name: google.cloud.aiplatform.v1.UpdateSpecialistPoolOperationMetadata
@@ -84,12 +107,20 @@ backend:
84107
deadline: 60.0
85108
- selector: 'google.cloud.aiplatform.v1.EndpointService.*'
86109
deadline: 60.0
110+
- selector: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.ReadFeatureValues
111+
deadline: 60.0
112+
- selector: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.StreamingReadFeatureValues
113+
deadline: 60.0
114+
- selector: 'google.cloud.aiplatform.v1.FeaturestoreService.*'
115+
deadline: 60.0
87116
- selector: 'google.cloud.aiplatform.v1.IndexEndpointService.*'
88117
deadline: 30.0
89118
- selector: 'google.cloud.aiplatform.v1.IndexService.*'
90119
deadline: 30.0
91120
- selector: 'google.cloud.aiplatform.v1.JobService.*'
92121
deadline: 60.0
122+
- selector: 'google.cloud.aiplatform.v1.MetadataService.*'
123+
deadline: 60.0
93124
- selector: google.cloud.aiplatform.v1.MigrationService.BatchMigrateResources
94125
deadline: 60.0
95126
- selector: google.cloud.aiplatform.v1.MigrationService.SearchMigratableResources
@@ -428,6 +459,18 @@ authentication:
428459
oauth:
429460
canonical_scopes: |-
430461
https://www.googleapis.com/auth/cloud-platform
462+
- selector: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.ReadFeatureValues
463+
oauth:
464+
canonical_scopes: |-
465+
https://www.googleapis.com/auth/cloud-platform
466+
- selector: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.StreamingReadFeatureValues
467+
oauth:
468+
canonical_scopes: |-
469+
https://www.googleapis.com/auth/cloud-platform
470+
- selector: 'google.cloud.aiplatform.v1.FeaturestoreService.*'
471+
oauth:
472+
canonical_scopes: |-
473+
https://www.googleapis.com/auth/cloud-platform
431474
- selector: 'google.cloud.aiplatform.v1.IndexEndpointService.*'
432475
oauth:
433476
canonical_scopes: |-
@@ -440,6 +483,10 @@ authentication:
440483
oauth:
441484
canonical_scopes: |-
442485
https://www.googleapis.com/auth/cloud-platform
486+
- selector: 'google.cloud.aiplatform.v1.MetadataService.*'
487+
oauth:
488+
canonical_scopes: |-
489+
https://www.googleapis.com/auth/cloud-platform
443490
- selector: google.cloud.aiplatform.v1.MigrationService.BatchMigrateResources
444491
oauth:
445492
canonical_scopes: |-

google/cloud/aiplatform/v1/endpoint.proto

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,21 @@ message Endpoint {
9292
// this key.
9393
EncryptionSpec encryption_spec = 10;
9494

95+
// The full name of the Google Compute Engine
96+
// [network](https://cloud.google.com//compute/docs/networks-and-firewalls#networks)
97+
// to which the Endpoint should be peered.
98+
//
99+
// Private services access must already be configured for the network. If left
100+
// unspecified, the Endpoint is not peered with any network.
101+
//
102+
// [Format](https://cloud.google.com/compute/docs/reference/rest/v1/networks/insert):
103+
// `projects/{project}/global/networks/{network}`.
104+
// Where `{project}` is a project number, as in `12345`, and `{network}` is
105+
// network name.
106+
string network = 13 [(google.api.resource_reference) = {
107+
type: "compute.googleapis.com/Network"
108+
}];
109+
95110
// Output only. Resource name of the Model Monitoring job associated with this Endpoint
96111
// if monitoring is enabled by [CreateModelDeploymentMonitoringJob][].
97112
// Format:
@@ -176,4 +191,22 @@ message DeployedModel {
176191
// receives prediction requests at a high queries per second rate (QPS).
177192
// Estimate your costs before enabling this option.
178193
bool enable_access_logging = 13;
194+
195+
// Output only. Provide paths for users to send predict/explain/health requests directly to
196+
// the deployed model services running on Cloud via private services access.
197+
// This field is populated if [network][google.cloud.aiplatform.v1.Endpoint.network] is configured.
198+
PrivateEndpoints private_endpoints = 14 [(google.api.field_behavior) = OUTPUT_ONLY];
199+
}
200+
201+
// PrivateEndpoints is used to provide paths for users to send
202+
// requests via private services access.
203+
message PrivateEndpoints {
204+
// Output only. Http(s) path to send prediction requests.
205+
string predict_http_uri = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
206+
207+
// Output only. Http(s) path to send explain requests.
208+
string explain_http_uri = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
209+
210+
// Output only. Http(s) path to send health check requests.
211+
string health_http_uri = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
179212
}

0 commit comments

Comments
 (0)