| // Copyright 2023 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.33.0 |
| // protoc v4.25.3 |
| // source: google/cloud/aiplatform/v1/model.proto |
| |
| package aiplatformpb |
| |
| import ( |
| reflect "reflect" |
| sync "sync" |
| |
| _ "google.golang.org/genproto/googleapis/api/annotations" |
| 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) |
| ) |
| |
| // Identifies a type of Model's prediction resources. |
| type Model_DeploymentResourcesType int32 |
| |
| const ( |
| // Should not be used. |
| Model_DEPLOYMENT_RESOURCES_TYPE_UNSPECIFIED Model_DeploymentResourcesType = 0 |
| // Resources that are dedicated to the |
| // [DeployedModel][google.cloud.aiplatform.v1.DeployedModel], and that need |
| // a higher degree of manual configuration. |
| Model_DEDICATED_RESOURCES Model_DeploymentResourcesType = 1 |
| // Resources that to large degree are decided by Vertex AI, and require |
| // only a modest additional configuration. |
| Model_AUTOMATIC_RESOURCES Model_DeploymentResourcesType = 2 |
| // Resources that can be shared by multiple |
| // [DeployedModels][google.cloud.aiplatform.v1.DeployedModel]. A |
| // pre-configured |
| // [DeploymentResourcePool][google.cloud.aiplatform.v1.DeploymentResourcePool] |
| // is required. |
| Model_SHARED_RESOURCES Model_DeploymentResourcesType = 3 |
| ) |
| |
| // Enum value maps for Model_DeploymentResourcesType. |
| var ( |
| Model_DeploymentResourcesType_name = map[int32]string{ |
| 0: "DEPLOYMENT_RESOURCES_TYPE_UNSPECIFIED", |
| 1: "DEDICATED_RESOURCES", |
| 2: "AUTOMATIC_RESOURCES", |
| 3: "SHARED_RESOURCES", |
| } |
| Model_DeploymentResourcesType_value = map[string]int32{ |
| "DEPLOYMENT_RESOURCES_TYPE_UNSPECIFIED": 0, |
| "DEDICATED_RESOURCES": 1, |
| "AUTOMATIC_RESOURCES": 2, |
| "SHARED_RESOURCES": 3, |
| } |
| ) |
| |
| func (x Model_DeploymentResourcesType) Enum() *Model_DeploymentResourcesType { |
| p := new(Model_DeploymentResourcesType) |
| *p = x |
| return p |
| } |
| |
| func (x Model_DeploymentResourcesType) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (Model_DeploymentResourcesType) Descriptor() protoreflect.EnumDescriptor { |
| return file_google_cloud_aiplatform_v1_model_proto_enumTypes[0].Descriptor() |
| } |
| |
| func (Model_DeploymentResourcesType) Type() protoreflect.EnumType { |
| return &file_google_cloud_aiplatform_v1_model_proto_enumTypes[0] |
| } |
| |
| func (x Model_DeploymentResourcesType) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Use Model_DeploymentResourcesType.Descriptor instead. |
| func (Model_DeploymentResourcesType) EnumDescriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{0, 0} |
| } |
| |
| // The Model content that can be exported. |
| type Model_ExportFormat_ExportableContent int32 |
| |
| const ( |
| // Should not be used. |
| Model_ExportFormat_EXPORTABLE_CONTENT_UNSPECIFIED Model_ExportFormat_ExportableContent = 0 |
| // Model artifact and any of its supported files. Will be exported to the |
| // location specified by the `artifactDestination` field of the |
| // [ExportModelRequest.output_config][google.cloud.aiplatform.v1.ExportModelRequest.output_config] |
| // object. |
| Model_ExportFormat_ARTIFACT Model_ExportFormat_ExportableContent = 1 |
| // The container image that is to be used when deploying this Model. Will |
| // be exported to the location specified by the `imageDestination` field |
| // of the |
| // [ExportModelRequest.output_config][google.cloud.aiplatform.v1.ExportModelRequest.output_config] |
| // object. |
| Model_ExportFormat_IMAGE Model_ExportFormat_ExportableContent = 2 |
| ) |
| |
| // Enum value maps for Model_ExportFormat_ExportableContent. |
| var ( |
| Model_ExportFormat_ExportableContent_name = map[int32]string{ |
| 0: "EXPORTABLE_CONTENT_UNSPECIFIED", |
| 1: "ARTIFACT", |
| 2: "IMAGE", |
| } |
| Model_ExportFormat_ExportableContent_value = map[string]int32{ |
| "EXPORTABLE_CONTENT_UNSPECIFIED": 0, |
| "ARTIFACT": 1, |
| "IMAGE": 2, |
| } |
| ) |
| |
| func (x Model_ExportFormat_ExportableContent) Enum() *Model_ExportFormat_ExportableContent { |
| p := new(Model_ExportFormat_ExportableContent) |
| *p = x |
| return p |
| } |
| |
| func (x Model_ExportFormat_ExportableContent) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (Model_ExportFormat_ExportableContent) Descriptor() protoreflect.EnumDescriptor { |
| return file_google_cloud_aiplatform_v1_model_proto_enumTypes[1].Descriptor() |
| } |
| |
| func (Model_ExportFormat_ExportableContent) Type() protoreflect.EnumType { |
| return &file_google_cloud_aiplatform_v1_model_proto_enumTypes[1] |
| } |
| |
| func (x Model_ExportFormat_ExportableContent) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Use Model_ExportFormat_ExportableContent.Descriptor instead. |
| func (Model_ExportFormat_ExportableContent) EnumDescriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{0, 0, 0} |
| } |
| |
| // Source of the model. |
| // Different from `objective` field, this `ModelSourceType` enum |
| // indicates the source from which the model was accessed or obtained, |
| // whereas the `objective` indicates the overall aim or function of this |
| // model. |
| type ModelSourceInfo_ModelSourceType int32 |
| |
| const ( |
| // Should not be used. |
| ModelSourceInfo_MODEL_SOURCE_TYPE_UNSPECIFIED ModelSourceInfo_ModelSourceType = 0 |
| // The Model is uploaded by automl training pipeline. |
| ModelSourceInfo_AUTOML ModelSourceInfo_ModelSourceType = 1 |
| // The Model is uploaded by user or custom training pipeline. |
| ModelSourceInfo_CUSTOM ModelSourceInfo_ModelSourceType = 2 |
| // The Model is registered and sync'ed from BigQuery ML. |
| ModelSourceInfo_BQML ModelSourceInfo_ModelSourceType = 3 |
| // The Model is saved or tuned from Model Garden. |
| ModelSourceInfo_MODEL_GARDEN ModelSourceInfo_ModelSourceType = 4 |
| // The Model is saved or tuned from Genie. |
| ModelSourceInfo_GENIE ModelSourceInfo_ModelSourceType = 5 |
| // The Model is uploaded by text embedding finetuning pipeline. |
| ModelSourceInfo_CUSTOM_TEXT_EMBEDDING ModelSourceInfo_ModelSourceType = 6 |
| // The Model is saved or tuned from Marketplace. |
| ModelSourceInfo_MARKETPLACE ModelSourceInfo_ModelSourceType = 7 |
| ) |
| |
| // Enum value maps for ModelSourceInfo_ModelSourceType. |
| var ( |
| ModelSourceInfo_ModelSourceType_name = map[int32]string{ |
| 0: "MODEL_SOURCE_TYPE_UNSPECIFIED", |
| 1: "AUTOML", |
| 2: "CUSTOM", |
| 3: "BQML", |
| 4: "MODEL_GARDEN", |
| 5: "GENIE", |
| 6: "CUSTOM_TEXT_EMBEDDING", |
| 7: "MARKETPLACE", |
| } |
| ModelSourceInfo_ModelSourceType_value = map[string]int32{ |
| "MODEL_SOURCE_TYPE_UNSPECIFIED": 0, |
| "AUTOML": 1, |
| "CUSTOM": 2, |
| "BQML": 3, |
| "MODEL_GARDEN": 4, |
| "GENIE": 5, |
| "CUSTOM_TEXT_EMBEDDING": 6, |
| "MARKETPLACE": 7, |
| } |
| ) |
| |
| func (x ModelSourceInfo_ModelSourceType) Enum() *ModelSourceInfo_ModelSourceType { |
| p := new(ModelSourceInfo_ModelSourceType) |
| *p = x |
| return p |
| } |
| |
| func (x ModelSourceInfo_ModelSourceType) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (ModelSourceInfo_ModelSourceType) Descriptor() protoreflect.EnumDescriptor { |
| return file_google_cloud_aiplatform_v1_model_proto_enumTypes[2].Descriptor() |
| } |
| |
| func (ModelSourceInfo_ModelSourceType) Type() protoreflect.EnumType { |
| return &file_google_cloud_aiplatform_v1_model_proto_enumTypes[2] |
| } |
| |
| func (x ModelSourceInfo_ModelSourceType) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Use ModelSourceInfo_ModelSourceType.Descriptor instead. |
| func (ModelSourceInfo_ModelSourceType) EnumDescriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{7, 0} |
| } |
| |
| // A trained machine learning Model. |
| type Model struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // The resource name of the Model. |
| Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` |
| // Output only. Immutable. The version ID of the model. |
| // A new version is committed when a new model version is uploaded or |
| // trained under an existing model id. It is an auto-incrementing decimal |
| // number in string representation. |
| VersionId string `protobuf:"bytes,28,opt,name=version_id,json=versionId,proto3" json:"version_id,omitempty"` |
| // User provided version aliases so that a model version can be referenced via |
| // alias (i.e. |
| // `projects/{project}/locations/{location}/models/{model_id}@{version_alias}` |
| // instead of auto-generated version id (i.e. |
| // `projects/{project}/locations/{location}/models/{model_id}@{version_id})`. |
| // The format is [a-z][a-zA-Z0-9-]{0,126}[a-z0-9] to distinguish from |
| // version_id. A default version alias will be created for the first version |
| // of the model, and there must be exactly one default version alias for a |
| // model. |
| VersionAliases []string `protobuf:"bytes,29,rep,name=version_aliases,json=versionAliases,proto3" json:"version_aliases,omitempty"` |
| // Output only. Timestamp when this version was created. |
| VersionCreateTime *timestamppb.Timestamp `protobuf:"bytes,31,opt,name=version_create_time,json=versionCreateTime,proto3" json:"version_create_time,omitempty"` |
| // Output only. Timestamp when this version was most recently updated. |
| VersionUpdateTime *timestamppb.Timestamp `protobuf:"bytes,32,opt,name=version_update_time,json=versionUpdateTime,proto3" json:"version_update_time,omitempty"` |
| // Required. The display name of the Model. |
| // The name can be up to 128 characters long and can consist of any UTF-8 |
| // characters. |
| DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"` |
| // The description of the Model. |
| Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"` |
| // The description of this version. |
| VersionDescription string `protobuf:"bytes,30,opt,name=version_description,json=versionDescription,proto3" json:"version_description,omitempty"` |
| // The schemata that describe formats of the Model's predictions and |
| // explanations as given and returned via |
| // [PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict] |
| // and |
| // [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain]. |
| PredictSchemata *PredictSchemata `protobuf:"bytes,4,opt,name=predict_schemata,json=predictSchemata,proto3" json:"predict_schemata,omitempty"` |
| // Immutable. Points to a YAML file stored on Google Cloud Storage describing |
| // additional information about the Model, that is specific to it. Unset if |
| // the Model does not have any additional information. The schema is defined |
| // as an OpenAPI 3.0.2 [Schema |
| // Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject). |
| // AutoML Models always have this field populated by Vertex AI, if no |
| // additional metadata is needed, this field is set to an empty string. |
| // Note: The URI given on output will be immutable and probably different, |
| // including the URI scheme, than the one given on input. The output URI will |
| // point to a location where the user only has a read access. |
| MetadataSchemaUri string `protobuf:"bytes,5,opt,name=metadata_schema_uri,json=metadataSchemaUri,proto3" json:"metadata_schema_uri,omitempty"` |
| // Immutable. An additional information about the Model; the schema of the |
| // metadata can be found in |
| // [metadata_schema][google.cloud.aiplatform.v1.Model.metadata_schema_uri]. |
| // Unset if the Model does not have any additional information. |
| Metadata *structpb.Value `protobuf:"bytes,6,opt,name=metadata,proto3" json:"metadata,omitempty"` |
| // Output only. The formats in which this Model may be exported. If empty, |
| // this Model is not available for export. |
| SupportedExportFormats []*Model_ExportFormat `protobuf:"bytes,20,rep,name=supported_export_formats,json=supportedExportFormats,proto3" json:"supported_export_formats,omitempty"` |
| // Output only. The resource name of the TrainingPipeline that uploaded this |
| // Model, if any. |
| TrainingPipeline string `protobuf:"bytes,7,opt,name=training_pipeline,json=trainingPipeline,proto3" json:"training_pipeline,omitempty"` |
| // Optional. This field is populated if the model is produced by a pipeline |
| // job. |
| PipelineJob string `protobuf:"bytes,47,opt,name=pipeline_job,json=pipelineJob,proto3" json:"pipeline_job,omitempty"` |
| // Input only. The specification of the container that is to be used when |
| // deploying this Model. The specification is ingested upon |
| // [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel], |
| // and all binaries it contains are copied and stored internally by Vertex AI. |
| // Not required for AutoML Models. |
| ContainerSpec *ModelContainerSpec `protobuf:"bytes,9,opt,name=container_spec,json=containerSpec,proto3" json:"container_spec,omitempty"` |
| // Immutable. The path to the directory containing the Model artifact and any |
| // of its supporting files. Not required for AutoML Models. |
| ArtifactUri string `protobuf:"bytes,26,opt,name=artifact_uri,json=artifactUri,proto3" json:"artifact_uri,omitempty"` |
| // Output only. When this Model is deployed, its prediction resources are |
| // described by the `prediction_resources` field of the |
| // [Endpoint.deployed_models][google.cloud.aiplatform.v1.Endpoint.deployed_models] |
| // object. Because not all Models support all resource configuration types, |
| // the configuration types this Model supports are listed here. If no |
| // configuration types are listed, the Model cannot be deployed to an |
| // [Endpoint][google.cloud.aiplatform.v1.Endpoint] and does not support |
| // online predictions |
| // ([PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict] |
| // or |
| // [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain]). |
| // Such a Model can serve predictions by using a |
| // [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob], if it |
| // has at least one entry each in |
| // [supported_input_storage_formats][google.cloud.aiplatform.v1.Model.supported_input_storage_formats] |
| // and |
| // [supported_output_storage_formats][google.cloud.aiplatform.v1.Model.supported_output_storage_formats]. |
| SupportedDeploymentResourcesTypes []Model_DeploymentResourcesType `protobuf:"varint,10,rep,packed,name=supported_deployment_resources_types,json=supportedDeploymentResourcesTypes,proto3,enum=google.cloud.aiplatform.v1.Model_DeploymentResourcesType" json:"supported_deployment_resources_types,omitempty"` |
| // Output only. The formats this Model supports in |
| // [BatchPredictionJob.input_config][google.cloud.aiplatform.v1.BatchPredictionJob.input_config]. |
| // If |
| // [PredictSchemata.instance_schema_uri][google.cloud.aiplatform.v1.PredictSchemata.instance_schema_uri] |
| // exists, the instances should be given as per that schema. |
| // |
| // The possible formats are: |
| // |
| // * `jsonl` |
| // The JSON Lines format, where each instance is a single line. Uses |
| // [GcsSource][google.cloud.aiplatform.v1.BatchPredictionJob.InputConfig.gcs_source]. |
| // |
| // * `csv` |
| // The CSV format, where each instance is a single comma-separated line. |
| // The first line in the file is the header, containing comma-separated field |
| // names. Uses |
| // [GcsSource][google.cloud.aiplatform.v1.BatchPredictionJob.InputConfig.gcs_source]. |
| // |
| // * `tf-record` |
| // The TFRecord format, where each instance is a single record in tfrecord |
| // syntax. Uses |
| // [GcsSource][google.cloud.aiplatform.v1.BatchPredictionJob.InputConfig.gcs_source]. |
| // |
| // * `tf-record-gzip` |
| // Similar to `tf-record`, but the file is gzipped. Uses |
| // [GcsSource][google.cloud.aiplatform.v1.BatchPredictionJob.InputConfig.gcs_source]. |
| // |
| // * `bigquery` |
| // Each instance is a single row in BigQuery. Uses |
| // [BigQuerySource][google.cloud.aiplatform.v1.BatchPredictionJob.InputConfig.bigquery_source]. |
| // |
| // * `file-list` |
| // Each line of the file is the location of an instance to process, uses |
| // `gcs_source` field of the |
| // [InputConfig][google.cloud.aiplatform.v1.BatchPredictionJob.InputConfig] |
| // object. |
| // |
| // If this Model doesn't support any of these formats it means it cannot be |
| // used with a |
| // [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob]. |
| // However, if it has |
| // [supported_deployment_resources_types][google.cloud.aiplatform.v1.Model.supported_deployment_resources_types], |
| // it could serve online predictions by using |
| // [PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict] |
| // or |
| // [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain]. |
| SupportedInputStorageFormats []string `protobuf:"bytes,11,rep,name=supported_input_storage_formats,json=supportedInputStorageFormats,proto3" json:"supported_input_storage_formats,omitempty"` |
| // Output only. The formats this Model supports in |
| // [BatchPredictionJob.output_config][google.cloud.aiplatform.v1.BatchPredictionJob.output_config]. |
| // If both |
| // [PredictSchemata.instance_schema_uri][google.cloud.aiplatform.v1.PredictSchemata.instance_schema_uri] |
| // and |
| // [PredictSchemata.prediction_schema_uri][google.cloud.aiplatform.v1.PredictSchemata.prediction_schema_uri] |
| // exist, the predictions are returned together with their instances. In other |
| // words, the prediction has the original instance data first, followed by the |
| // actual prediction content (as per the schema). |
| // |
| // The possible formats are: |
| // |
| // * `jsonl` |
| // The JSON Lines format, where each prediction is a single line. Uses |
| // [GcsDestination][google.cloud.aiplatform.v1.BatchPredictionJob.OutputConfig.gcs_destination]. |
| // |
| // * `csv` |
| // The CSV format, where each prediction is a single comma-separated line. |
| // The first line in the file is the header, containing comma-separated field |
| // names. Uses |
| // [GcsDestination][google.cloud.aiplatform.v1.BatchPredictionJob.OutputConfig.gcs_destination]. |
| // |
| // * `bigquery` |
| // Each prediction is a single row in a BigQuery table, uses |
| // [BigQueryDestination][google.cloud.aiplatform.v1.BatchPredictionJob.OutputConfig.bigquery_destination] |
| // . |
| // |
| // If this Model doesn't support any of these formats it means it cannot be |
| // used with a |
| // [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob]. |
| // However, if it has |
| // [supported_deployment_resources_types][google.cloud.aiplatform.v1.Model.supported_deployment_resources_types], |
| // it could serve online predictions by using |
| // [PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict] |
| // or |
| // [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain]. |
| SupportedOutputStorageFormats []string `protobuf:"bytes,12,rep,name=supported_output_storage_formats,json=supportedOutputStorageFormats,proto3" json:"supported_output_storage_formats,omitempty"` |
| // Output only. Timestamp when this Model was uploaded into Vertex AI. |
| CreateTime *timestamppb.Timestamp `protobuf:"bytes,13,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` |
| // Output only. Timestamp when this Model was most recently updated. |
| UpdateTime *timestamppb.Timestamp `protobuf:"bytes,14,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` |
| // Output only. The pointers to DeployedModels created from this Model. Note |
| // that Model could have been deployed to Endpoints in different Locations. |
| DeployedModels []*DeployedModelRef `protobuf:"bytes,15,rep,name=deployed_models,json=deployedModels,proto3" json:"deployed_models,omitempty"` |
| // The default explanation specification for this Model. |
| // |
| // The Model can be used for |
| // [requesting |
| // explanation][google.cloud.aiplatform.v1.PredictionService.Explain] after |
| // being [deployed][google.cloud.aiplatform.v1.EndpointService.DeployModel] if |
| // it is populated. The Model can be used for [batch |
| // explanation][google.cloud.aiplatform.v1.BatchPredictionJob.generate_explanation] |
| // if it is populated. |
| // |
| // All fields of the explanation_spec can be overridden by |
| // [explanation_spec][google.cloud.aiplatform.v1.DeployedModel.explanation_spec] |
| // of |
| // [DeployModelRequest.deployed_model][google.cloud.aiplatform.v1.DeployModelRequest.deployed_model], |
| // or |
| // [explanation_spec][google.cloud.aiplatform.v1.BatchPredictionJob.explanation_spec] |
| // of [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob]. |
| // |
| // If the default explanation specification is not set for this Model, this |
| // Model can still be used for |
| // [requesting |
| // explanation][google.cloud.aiplatform.v1.PredictionService.Explain] by |
| // setting |
| // [explanation_spec][google.cloud.aiplatform.v1.DeployedModel.explanation_spec] |
| // of |
| // [DeployModelRequest.deployed_model][google.cloud.aiplatform.v1.DeployModelRequest.deployed_model] |
| // and for [batch |
| // explanation][google.cloud.aiplatform.v1.BatchPredictionJob.generate_explanation] |
| // by setting |
| // [explanation_spec][google.cloud.aiplatform.v1.BatchPredictionJob.explanation_spec] |
| // of [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob]. |
| ExplanationSpec *ExplanationSpec `protobuf:"bytes,23,opt,name=explanation_spec,json=explanationSpec,proto3" json:"explanation_spec,omitempty"` |
| // Used to perform consistent read-modify-write updates. If not set, a blind |
| // "overwrite" update happens. |
| Etag string `protobuf:"bytes,16,opt,name=etag,proto3" json:"etag,omitempty"` |
| // The labels with user-defined metadata to organize your Models. |
| // |
| // 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,17,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` |
| // Stats of data used for training or evaluating the Model. |
| // |
| // Only populated when the Model is trained by a TrainingPipeline with |
| // [data_input_config][TrainingPipeline.data_input_config]. |
| DataStats *Model_DataStats `protobuf:"bytes,21,opt,name=data_stats,json=dataStats,proto3" json:"data_stats,omitempty"` |
| // Customer-managed encryption key spec for a Model. If set, this |
| // Model and all sub-resources of this Model will be secured by this key. |
| EncryptionSpec *EncryptionSpec `protobuf:"bytes,24,opt,name=encryption_spec,json=encryptionSpec,proto3" json:"encryption_spec,omitempty"` |
| // Output only. Source of a model. It can either be automl training pipeline, |
| // custom training pipeline, BigQuery ML, or saved and tuned from Genie or |
| // Model Garden. |
| ModelSourceInfo *ModelSourceInfo `protobuf:"bytes,38,opt,name=model_source_info,json=modelSourceInfo,proto3" json:"model_source_info,omitempty"` |
| // Output only. If this Model is a copy of another Model, this contains info |
| // about the original. |
| OriginalModelInfo *Model_OriginalModelInfo `protobuf:"bytes,34,opt,name=original_model_info,json=originalModelInfo,proto3" json:"original_model_info,omitempty"` |
| // Output only. The resource name of the Artifact that was created in |
| // MetadataStore when creating the Model. The Artifact resource name pattern |
| // is |
| // `projects/{project}/locations/{location}/metadataStores/{metadata_store}/artifacts/{artifact}`. |
| MetadataArtifact string `protobuf:"bytes,44,opt,name=metadata_artifact,json=metadataArtifact,proto3" json:"metadata_artifact,omitempty"` |
| // Optional. User input field to specify the base model source. Currently it |
| // only supports specifing the Model Garden models and Genie models. |
| BaseModelSource *Model_BaseModelSource `protobuf:"bytes,50,opt,name=base_model_source,json=baseModelSource,proto3" json:"base_model_source,omitempty"` |
| } |
| |
| func (x *Model) Reset() { |
| *x = Model{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[0] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Model) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Model) ProtoMessage() {} |
| |
| func (x *Model) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[0] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Model.ProtoReflect.Descriptor instead. |
| func (*Model) Descriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{0} |
| } |
| |
| func (x *Model) GetName() string { |
| if x != nil { |
| return x.Name |
| } |
| return "" |
| } |
| |
| func (x *Model) GetVersionId() string { |
| if x != nil { |
| return x.VersionId |
| } |
| return "" |
| } |
| |
| func (x *Model) GetVersionAliases() []string { |
| if x != nil { |
| return x.VersionAliases |
| } |
| return nil |
| } |
| |
| func (x *Model) GetVersionCreateTime() *timestamppb.Timestamp { |
| if x != nil { |
| return x.VersionCreateTime |
| } |
| return nil |
| } |
| |
| func (x *Model) GetVersionUpdateTime() *timestamppb.Timestamp { |
| if x != nil { |
| return x.VersionUpdateTime |
| } |
| return nil |
| } |
| |
| func (x *Model) GetDisplayName() string { |
| if x != nil { |
| return x.DisplayName |
| } |
| return "" |
| } |
| |
| func (x *Model) GetDescription() string { |
| if x != nil { |
| return x.Description |
| } |
| return "" |
| } |
| |
| func (x *Model) GetVersionDescription() string { |
| if x != nil { |
| return x.VersionDescription |
| } |
| return "" |
| } |
| |
| func (x *Model) GetPredictSchemata() *PredictSchemata { |
| if x != nil { |
| return x.PredictSchemata |
| } |
| return nil |
| } |
| |
| func (x *Model) GetMetadataSchemaUri() string { |
| if x != nil { |
| return x.MetadataSchemaUri |
| } |
| return "" |
| } |
| |
| func (x *Model) GetMetadata() *structpb.Value { |
| if x != nil { |
| return x.Metadata |
| } |
| return nil |
| } |
| |
| func (x *Model) GetSupportedExportFormats() []*Model_ExportFormat { |
| if x != nil { |
| return x.SupportedExportFormats |
| } |
| return nil |
| } |
| |
| func (x *Model) GetTrainingPipeline() string { |
| if x != nil { |
| return x.TrainingPipeline |
| } |
| return "" |
| } |
| |
| func (x *Model) GetPipelineJob() string { |
| if x != nil { |
| return x.PipelineJob |
| } |
| return "" |
| } |
| |
| func (x *Model) GetContainerSpec() *ModelContainerSpec { |
| if x != nil { |
| return x.ContainerSpec |
| } |
| return nil |
| } |
| |
| func (x *Model) GetArtifactUri() string { |
| if x != nil { |
| return x.ArtifactUri |
| } |
| return "" |
| } |
| |
| func (x *Model) GetSupportedDeploymentResourcesTypes() []Model_DeploymentResourcesType { |
| if x != nil { |
| return x.SupportedDeploymentResourcesTypes |
| } |
| return nil |
| } |
| |
| func (x *Model) GetSupportedInputStorageFormats() []string { |
| if x != nil { |
| return x.SupportedInputStorageFormats |
| } |
| return nil |
| } |
| |
| func (x *Model) GetSupportedOutputStorageFormats() []string { |
| if x != nil { |
| return x.SupportedOutputStorageFormats |
| } |
| return nil |
| } |
| |
| func (x *Model) GetCreateTime() *timestamppb.Timestamp { |
| if x != nil { |
| return x.CreateTime |
| } |
| return nil |
| } |
| |
| func (x *Model) GetUpdateTime() *timestamppb.Timestamp { |
| if x != nil { |
| return x.UpdateTime |
| } |
| return nil |
| } |
| |
| func (x *Model) GetDeployedModels() []*DeployedModelRef { |
| if x != nil { |
| return x.DeployedModels |
| } |
| return nil |
| } |
| |
| func (x *Model) GetExplanationSpec() *ExplanationSpec { |
| if x != nil { |
| return x.ExplanationSpec |
| } |
| return nil |
| } |
| |
| func (x *Model) GetEtag() string { |
| if x != nil { |
| return x.Etag |
| } |
| return "" |
| } |
| |
| func (x *Model) GetLabels() map[string]string { |
| if x != nil { |
| return x.Labels |
| } |
| return nil |
| } |
| |
| func (x *Model) GetDataStats() *Model_DataStats { |
| if x != nil { |
| return x.DataStats |
| } |
| return nil |
| } |
| |
| func (x *Model) GetEncryptionSpec() *EncryptionSpec { |
| if x != nil { |
| return x.EncryptionSpec |
| } |
| return nil |
| } |
| |
| func (x *Model) GetModelSourceInfo() *ModelSourceInfo { |
| if x != nil { |
| return x.ModelSourceInfo |
| } |
| return nil |
| } |
| |
| func (x *Model) GetOriginalModelInfo() *Model_OriginalModelInfo { |
| if x != nil { |
| return x.OriginalModelInfo |
| } |
| return nil |
| } |
| |
| func (x *Model) GetMetadataArtifact() string { |
| if x != nil { |
| return x.MetadataArtifact |
| } |
| return "" |
| } |
| |
| func (x *Model) GetBaseModelSource() *Model_BaseModelSource { |
| if x != nil { |
| return x.BaseModelSource |
| } |
| return nil |
| } |
| |
| // Contains information about the Large Model. |
| type LargeModelReference struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Required. The unique name of the large Foundation or pre-built model. Like |
| // "chat-bison", "text-bison". Or model name with version ID, like |
| // "chat-bison@001", "text-bison@005", etc. |
| Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` |
| } |
| |
| func (x *LargeModelReference) Reset() { |
| *x = LargeModelReference{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[1] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *LargeModelReference) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*LargeModelReference) ProtoMessage() {} |
| |
| func (x *LargeModelReference) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[1] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use LargeModelReference.ProtoReflect.Descriptor instead. |
| func (*LargeModelReference) Descriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{1} |
| } |
| |
| func (x *LargeModelReference) GetName() string { |
| if x != nil { |
| return x.Name |
| } |
| return "" |
| } |
| |
| // Contains information about the source of the models generated from Model |
| // Garden. |
| type ModelGardenSource struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Required. The model garden source model resource name. |
| PublicModelName string `protobuf:"bytes,1,opt,name=public_model_name,json=publicModelName,proto3" json:"public_model_name,omitempty"` |
| } |
| |
| func (x *ModelGardenSource) Reset() { |
| *x = ModelGardenSource{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[2] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *ModelGardenSource) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*ModelGardenSource) ProtoMessage() {} |
| |
| func (x *ModelGardenSource) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[2] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use ModelGardenSource.ProtoReflect.Descriptor instead. |
| func (*ModelGardenSource) Descriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{2} |
| } |
| |
| func (x *ModelGardenSource) GetPublicModelName() string { |
| if x != nil { |
| return x.PublicModelName |
| } |
| return "" |
| } |
| |
| // Contains information about the source of the models generated from Generative |
| // AI Studio. |
| type GenieSource struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Required. The public base model URI. |
| BaseModelUri string `protobuf:"bytes,1,opt,name=base_model_uri,json=baseModelUri,proto3" json:"base_model_uri,omitempty"` |
| } |
| |
| func (x *GenieSource) Reset() { |
| *x = GenieSource{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[3] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *GenieSource) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*GenieSource) ProtoMessage() {} |
| |
| func (x *GenieSource) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[3] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use GenieSource.ProtoReflect.Descriptor instead. |
| func (*GenieSource) Descriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{3} |
| } |
| |
| func (x *GenieSource) GetBaseModelUri() string { |
| if x != nil { |
| return x.BaseModelUri |
| } |
| return "" |
| } |
| |
| // Contains the schemata used in Model's predictions and explanations via |
| // [PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict], |
| // [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain] |
| // and [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob]. |
| type PredictSchemata struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Immutable. Points to a YAML file stored on Google Cloud Storage describing |
| // the format of a single instance, which are used in |
| // [PredictRequest.instances][google.cloud.aiplatform.v1.PredictRequest.instances], |
| // [ExplainRequest.instances][google.cloud.aiplatform.v1.ExplainRequest.instances] |
| // and |
| // [BatchPredictionJob.input_config][google.cloud.aiplatform.v1.BatchPredictionJob.input_config]. |
| // The schema is defined as an OpenAPI 3.0.2 [Schema |
| // Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject). |
| // AutoML Models always have this field populated by Vertex AI. |
| // Note: The URI given on output will be immutable and probably different, |
| // including the URI scheme, than the one given on input. The output URI will |
| // point to a location where the user only has a read access. |
| InstanceSchemaUri string `protobuf:"bytes,1,opt,name=instance_schema_uri,json=instanceSchemaUri,proto3" json:"instance_schema_uri,omitempty"` |
| // Immutable. Points to a YAML file stored on Google Cloud Storage describing |
| // the parameters of prediction and explanation via |
| // [PredictRequest.parameters][google.cloud.aiplatform.v1.PredictRequest.parameters], |
| // [ExplainRequest.parameters][google.cloud.aiplatform.v1.ExplainRequest.parameters] |
| // and |
| // [BatchPredictionJob.model_parameters][google.cloud.aiplatform.v1.BatchPredictionJob.model_parameters]. |
| // The schema is defined as an OpenAPI 3.0.2 [Schema |
| // Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject). |
| // AutoML Models always have this field populated by Vertex AI, if no |
| // parameters are supported, then it is set to an empty string. |
| // Note: The URI given on output will be immutable and probably different, |
| // including the URI scheme, than the one given on input. The output URI will |
| // point to a location where the user only has a read access. |
| ParametersSchemaUri string `protobuf:"bytes,2,opt,name=parameters_schema_uri,json=parametersSchemaUri,proto3" json:"parameters_schema_uri,omitempty"` |
| // Immutable. Points to a YAML file stored on Google Cloud Storage describing |
| // the format of a single prediction produced by this Model, which are |
| // returned via |
| // [PredictResponse.predictions][google.cloud.aiplatform.v1.PredictResponse.predictions], |
| // [ExplainResponse.explanations][google.cloud.aiplatform.v1.ExplainResponse.explanations], |
| // and |
| // [BatchPredictionJob.output_config][google.cloud.aiplatform.v1.BatchPredictionJob.output_config]. |
| // The schema is defined as an OpenAPI 3.0.2 [Schema |
| // Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject). |
| // AutoML Models always have this field populated by Vertex AI. |
| // Note: The URI given on output will be immutable and probably different, |
| // including the URI scheme, than the one given on input. The output URI will |
| // point to a location where the user only has a read access. |
| PredictionSchemaUri string `protobuf:"bytes,3,opt,name=prediction_schema_uri,json=predictionSchemaUri,proto3" json:"prediction_schema_uri,omitempty"` |
| } |
| |
| func (x *PredictSchemata) Reset() { |
| *x = PredictSchemata{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[4] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *PredictSchemata) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*PredictSchemata) ProtoMessage() {} |
| |
| func (x *PredictSchemata) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[4] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use PredictSchemata.ProtoReflect.Descriptor instead. |
| func (*PredictSchemata) Descriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{4} |
| } |
| |
| func (x *PredictSchemata) GetInstanceSchemaUri() string { |
| if x != nil { |
| return x.InstanceSchemaUri |
| } |
| return "" |
| } |
| |
| func (x *PredictSchemata) GetParametersSchemaUri() string { |
| if x != nil { |
| return x.ParametersSchemaUri |
| } |
| return "" |
| } |
| |
| func (x *PredictSchemata) GetPredictionSchemaUri() string { |
| if x != nil { |
| return x.PredictionSchemaUri |
| } |
| return "" |
| } |
| |
| // Specification of a container for serving predictions. Some fields in this |
| // message correspond to fields in the [Kubernetes Container v1 core |
| // specification](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#container-v1-core). |
| type ModelContainerSpec struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Required. Immutable. URI of the Docker image to be used as the custom |
| // container for serving predictions. This URI must identify an image in |
| // Artifact Registry or Container Registry. Learn more about the [container |
| // publishing |
| // requirements](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#publishing), |
| // including permissions requirements for the Vertex AI Service Agent. |
| // |
| // The container image is ingested upon |
| // [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel], |
| // stored internally, and this original path is afterwards not used. |
| // |
| // To learn about the requirements for the Docker image itself, see |
| // [Custom container |
| // requirements](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#). |
| // |
| // You can use the URI to one of Vertex AI's [pre-built container images for |
| // prediction](https://cloud.google.com/vertex-ai/docs/predictions/pre-built-containers) |
| // in this field. |
| ImageUri string `protobuf:"bytes,1,opt,name=image_uri,json=imageUri,proto3" json:"image_uri,omitempty"` |
| // Immutable. Specifies the command that runs when the container starts. This |
| // overrides the container's |
| // [ENTRYPOINT](https://docs.docker.com/engine/reference/builder/#entrypoint). |
| // Specify this field as an array of executable and arguments, similar to a |
| // Docker `ENTRYPOINT`'s "exec" form, not its "shell" form. |
| // |
| // If you do not specify this field, then the container's `ENTRYPOINT` runs, |
| // in conjunction with the |
| // [args][google.cloud.aiplatform.v1.ModelContainerSpec.args] field or the |
| // container's [`CMD`](https://docs.docker.com/engine/reference/builder/#cmd), |
| // if either exists. If this field is not specified and the container does not |
| // have an `ENTRYPOINT`, then refer to the Docker documentation about [how |
| // `CMD` and `ENTRYPOINT` |
| // interact](https://docs.docker.com/engine/reference/builder/#understand-how-cmd-and-entrypoint-interact). |
| // |
| // If you specify this field, then you can also specify the `args` field to |
| // provide additional arguments for this command. However, if you specify this |
| // field, then the container's `CMD` is ignored. See the |
| // [Kubernetes documentation about how the |
| // `command` and `args` fields interact with a container's `ENTRYPOINT` and |
| // `CMD`](https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#notes). |
| // |
| // In this field, you can reference [environment variables set by Vertex |
| // AI](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables) |
| // and environment variables set in the |
| // [env][google.cloud.aiplatform.v1.ModelContainerSpec.env] field. You cannot |
| // reference environment variables set in the Docker image. In order for |
| // environment variables to be expanded, reference them by using the following |
| // syntax: <code>$(<var>VARIABLE_NAME</var>)</code> Note that this differs |
| // from Bash variable expansion, which does not use parentheses. If a variable |
| // cannot be resolved, the reference in the input string is used unchanged. To |
| // avoid variable expansion, you can escape this syntax with `$$`; for |
| // example: <code>$$(<var>VARIABLE_NAME</var>)</code> This field corresponds |
| // to the `command` field of the Kubernetes Containers [v1 core |
| // API](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#container-v1-core). |
| Command []string `protobuf:"bytes,2,rep,name=command,proto3" json:"command,omitempty"` |
| // Immutable. Specifies arguments for the command that runs when the container |
| // starts. This overrides the container's |
| // [`CMD`](https://docs.docker.com/engine/reference/builder/#cmd). Specify |
| // this field as an array of executable and arguments, similar to a Docker |
| // `CMD`'s "default parameters" form. |
| // |
| // If you don't specify this field but do specify the |
| // [command][google.cloud.aiplatform.v1.ModelContainerSpec.command] field, |
| // then the command from the `command` field runs without any additional |
| // arguments. See the [Kubernetes documentation about how the `command` and |
| // `args` fields interact with a container's `ENTRYPOINT` and |
| // `CMD`](https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#notes). |
| // |
| // If you don't specify this field and don't specify the `command` field, |
| // then the container's |
| // [`ENTRYPOINT`](https://docs.docker.com/engine/reference/builder/#cmd) and |
| // `CMD` determine what runs based on their default behavior. See the Docker |
| // documentation about [how `CMD` and `ENTRYPOINT` |
| // interact](https://docs.docker.com/engine/reference/builder/#understand-how-cmd-and-entrypoint-interact). |
| // |
| // In this field, you can reference [environment variables |
| // set by Vertex |
| // AI](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables) |
| // and environment variables set in the |
| // [env][google.cloud.aiplatform.v1.ModelContainerSpec.env] field. You cannot |
| // reference environment variables set in the Docker image. In order for |
| // environment variables to be expanded, reference them by using the following |
| // syntax: <code>$(<var>VARIABLE_NAME</var>)</code> Note that this differs |
| // from Bash variable expansion, which does not use parentheses. If a variable |
| // cannot be resolved, the reference in the input string is used unchanged. To |
| // avoid variable expansion, you can escape this syntax with `$$`; for |
| // example: <code>$$(<var>VARIABLE_NAME</var>)</code> This field corresponds |
| // to the `args` field of the Kubernetes Containers [v1 core |
| // API](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#container-v1-core). |
| Args []string `protobuf:"bytes,3,rep,name=args,proto3" json:"args,omitempty"` |
| // Immutable. List of environment variables to set in the container. After the |
| // container starts running, code running in the container can read these |
| // environment variables. |
| // |
| // Additionally, the |
| // [command][google.cloud.aiplatform.v1.ModelContainerSpec.command] and |
| // [args][google.cloud.aiplatform.v1.ModelContainerSpec.args] fields can |
| // reference these variables. Later entries in this list can also reference |
| // earlier entries. For example, the following example sets the variable |
| // `VAR_2` to have the value `foo bar`: |
| // |
| // ```json |
| // [ |
| // |
| // { |
| // "name": "VAR_1", |
| // "value": "foo" |
| // }, |
| // { |
| // "name": "VAR_2", |
| // "value": "$(VAR_1) bar" |
| // } |
| // |
| // ] |
| // ``` |
| // |
| // If you switch the order of the variables in the example, then the expansion |
| // does not occur. |
| // |
| // This field corresponds to the `env` field of the Kubernetes Containers |
| // [v1 core |
| // API](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#container-v1-core). |
| Env []*EnvVar `protobuf:"bytes,4,rep,name=env,proto3" json:"env,omitempty"` |
| // Immutable. List of ports to expose from the container. Vertex AI sends any |
| // prediction requests that it receives to the first port on this list. Vertex |
| // AI also sends |
| // [liveness and health |
| // checks](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#liveness) |
| // to this port. |
| // |
| // If you do not specify this field, it defaults to following value: |
| // |
| // ```json |
| // [ |
| // |
| // { |
| // "containerPort": 8080 |
| // } |
| // |
| // ] |
| // ``` |
| // |
| // Vertex AI does not use ports other than the first one listed. This field |
| // corresponds to the `ports` field of the Kubernetes Containers |
| // [v1 core |
| // API](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#container-v1-core). |
| Ports []*Port `protobuf:"bytes,5,rep,name=ports,proto3" json:"ports,omitempty"` |
| // Immutable. HTTP path on the container to send prediction requests to. |
| // Vertex AI forwards requests sent using |
| // [projects.locations.endpoints.predict][google.cloud.aiplatform.v1.PredictionService.Predict] |
| // to this path on the container's IP address and port. Vertex AI then returns |
| // the container's response in the API response. |
| // |
| // For example, if you set this field to `/foo`, then when Vertex AI |
| // receives a prediction request, it forwards the request body in a POST |
| // request to the `/foo` path on the port of your container specified by the |
| // first value of this `ModelContainerSpec`'s |
| // [ports][google.cloud.aiplatform.v1.ModelContainerSpec.ports] field. |
| // |
| // If you don't specify this field, it defaults to the following value when |
| // you [deploy this Model to an |
| // Endpoint][google.cloud.aiplatform.v1.EndpointService.DeployModel]: |
| // <code>/v1/endpoints/<var>ENDPOINT</var>/deployedModels/<var>DEPLOYED_MODEL</var>:predict</code> |
| // The placeholders in this value are replaced as follows: |
| // |
| // - <var>ENDPOINT</var>: The last segment (following `endpoints/`)of the |
| // Endpoint.name][] field of the Endpoint where this Model has been |
| // deployed. (Vertex AI makes this value available to your container code |
| // as the [`AIP_ENDPOINT_ID` environment |
| // variable](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables).) |
| // |
| // * <var>DEPLOYED_MODEL</var>: |
| // [DeployedModel.id][google.cloud.aiplatform.v1.DeployedModel.id] of the |
| // `DeployedModel`. |
| // |
| // (Vertex AI makes this value available to your container code |
| // as the [`AIP_DEPLOYED_MODEL_ID` environment |
| // variable](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables).) |
| PredictRoute string `protobuf:"bytes,6,opt,name=predict_route,json=predictRoute,proto3" json:"predict_route,omitempty"` |
| // Immutable. HTTP path on the container to send health checks to. Vertex AI |
| // intermittently sends GET requests to this path on the container's IP |
| // address and port to check that the container is healthy. Read more about |
| // [health |
| // checks](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#health). |
| // |
| // For example, if you set this field to `/bar`, then Vertex AI |
| // intermittently sends a GET request to the `/bar` path on the port of your |
| // container specified by the first value of this `ModelContainerSpec`'s |
| // [ports][google.cloud.aiplatform.v1.ModelContainerSpec.ports] field. |
| // |
| // If you don't specify this field, it defaults to the following value when |
| // you [deploy this Model to an |
| // Endpoint][google.cloud.aiplatform.v1.EndpointService.DeployModel]: |
| // <code>/v1/endpoints/<var>ENDPOINT</var>/deployedModels/<var>DEPLOYED_MODEL</var>:predict</code> |
| // The placeholders in this value are replaced as follows: |
| // |
| // - <var>ENDPOINT</var>: The last segment (following `endpoints/`)of the |
| // Endpoint.name][] field of the Endpoint where this Model has been |
| // deployed. (Vertex AI makes this value available to your container code |
| // as the [`AIP_ENDPOINT_ID` environment |
| // variable](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables).) |
| // |
| // * <var>DEPLOYED_MODEL</var>: |
| // [DeployedModel.id][google.cloud.aiplatform.v1.DeployedModel.id] of the |
| // `DeployedModel`. |
| // |
| // (Vertex AI makes this value available to your container code as the |
| // [`AIP_DEPLOYED_MODEL_ID` environment |
| // variable](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables).) |
| HealthRoute string `protobuf:"bytes,7,opt,name=health_route,json=healthRoute,proto3" json:"health_route,omitempty"` |
| // Immutable. List of ports to expose from the container. Vertex AI sends gRPC |
| // prediction requests that it receives to the first port on this list. Vertex |
| // AI also sends liveness and health checks to this port. |
| // |
| // If you do not specify this field, gRPC requests to the container will be |
| // disabled. |
| // |
| // Vertex AI does not use ports other than the first one listed. This field |
| // corresponds to the `ports` field of the Kubernetes Containers v1 core API. |
| GrpcPorts []*Port `protobuf:"bytes,9,rep,name=grpc_ports,json=grpcPorts,proto3" json:"grpc_ports,omitempty"` |
| // Immutable. Deployment timeout. |
| // Limit for deployment timeout is 2 hours. |
| DeploymentTimeout *durationpb.Duration `protobuf:"bytes,10,opt,name=deployment_timeout,json=deploymentTimeout,proto3" json:"deployment_timeout,omitempty"` |
| // Immutable. The amount of the VM memory to reserve as the shared memory for |
| // the model in megabytes. |
| SharedMemorySizeMb int64 `protobuf:"varint,11,opt,name=shared_memory_size_mb,json=sharedMemorySizeMb,proto3" json:"shared_memory_size_mb,omitempty"` |
| // Immutable. Specification for Kubernetes startup probe. |
| StartupProbe *Probe `protobuf:"bytes,12,opt,name=startup_probe,json=startupProbe,proto3" json:"startup_probe,omitempty"` |
| // Immutable. Specification for Kubernetes readiness probe. |
| HealthProbe *Probe `protobuf:"bytes,13,opt,name=health_probe,json=healthProbe,proto3" json:"health_probe,omitempty"` |
| } |
| |
| func (x *ModelContainerSpec) Reset() { |
| *x = ModelContainerSpec{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[5] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *ModelContainerSpec) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*ModelContainerSpec) ProtoMessage() {} |
| |
| func (x *ModelContainerSpec) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[5] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use ModelContainerSpec.ProtoReflect.Descriptor instead. |
| func (*ModelContainerSpec) Descriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{5} |
| } |
| |
| func (x *ModelContainerSpec) GetImageUri() string { |
| if x != nil { |
| return x.ImageUri |
| } |
| return "" |
| } |
| |
| func (x *ModelContainerSpec) GetCommand() []string { |
| if x != nil { |
| return x.Command |
| } |
| return nil |
| } |
| |
| func (x *ModelContainerSpec) GetArgs() []string { |
| if x != nil { |
| return x.Args |
| } |
| return nil |
| } |
| |
| func (x *ModelContainerSpec) GetEnv() []*EnvVar { |
| if x != nil { |
| return x.Env |
| } |
| return nil |
| } |
| |
| func (x *ModelContainerSpec) GetPorts() []*Port { |
| if x != nil { |
| return x.Ports |
| } |
| return nil |
| } |
| |
| func (x *ModelContainerSpec) GetPredictRoute() string { |
| if x != nil { |
| return x.PredictRoute |
| } |
| return "" |
| } |
| |
| func (x *ModelContainerSpec) GetHealthRoute() string { |
| if x != nil { |
| return x.HealthRoute |
| } |
| return "" |
| } |
| |
| func (x *ModelContainerSpec) GetGrpcPorts() []*Port { |
| if x != nil { |
| return x.GrpcPorts |
| } |
| return nil |
| } |
| |
| func (x *ModelContainerSpec) GetDeploymentTimeout() *durationpb.Duration { |
| if x != nil { |
| return x.DeploymentTimeout |
| } |
| return nil |
| } |
| |
| func (x *ModelContainerSpec) GetSharedMemorySizeMb() int64 { |
| if x != nil { |
| return x.SharedMemorySizeMb |
| } |
| return 0 |
| } |
| |
| func (x *ModelContainerSpec) GetStartupProbe() *Probe { |
| if x != nil { |
| return x.StartupProbe |
| } |
| return nil |
| } |
| |
| func (x *ModelContainerSpec) GetHealthProbe() *Probe { |
| if x != nil { |
| return x.HealthProbe |
| } |
| return nil |
| } |
| |
| // Represents a network port in a container. |
| type Port struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // The number of the port to expose on the pod's IP address. |
| // Must be a valid port number, between 1 and 65535 inclusive. |
| ContainerPort int32 `protobuf:"varint,3,opt,name=container_port,json=containerPort,proto3" json:"container_port,omitempty"` |
| } |
| |
| func (x *Port) Reset() { |
| *x = Port{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[6] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Port) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Port) ProtoMessage() {} |
| |
| func (x *Port) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[6] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Port.ProtoReflect.Descriptor instead. |
| func (*Port) Descriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{6} |
| } |
| |
| func (x *Port) GetContainerPort() int32 { |
| if x != nil { |
| return x.ContainerPort |
| } |
| return 0 |
| } |
| |
| // Detail description of the source information of the model. |
| type ModelSourceInfo struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Type of the model source. |
| SourceType ModelSourceInfo_ModelSourceType `protobuf:"varint,1,opt,name=source_type,json=sourceType,proto3,enum=google.cloud.aiplatform.v1.ModelSourceInfo_ModelSourceType" json:"source_type,omitempty"` |
| // If this Model is copy of another Model. If true then |
| // [source_type][google.cloud.aiplatform.v1.ModelSourceInfo.source_type] |
| // pertains to the original. |
| Copy bool `protobuf:"varint,2,opt,name=copy,proto3" json:"copy,omitempty"` |
| } |
| |
| func (x *ModelSourceInfo) Reset() { |
| *x = ModelSourceInfo{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[7] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *ModelSourceInfo) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*ModelSourceInfo) ProtoMessage() {} |
| |
| func (x *ModelSourceInfo) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[7] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use ModelSourceInfo.ProtoReflect.Descriptor instead. |
| func (*ModelSourceInfo) Descriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{7} |
| } |
| |
| func (x *ModelSourceInfo) GetSourceType() ModelSourceInfo_ModelSourceType { |
| if x != nil { |
| return x.SourceType |
| } |
| return ModelSourceInfo_MODEL_SOURCE_TYPE_UNSPECIFIED |
| } |
| |
| func (x *ModelSourceInfo) GetCopy() bool { |
| if x != nil { |
| return x.Copy |
| } |
| return false |
| } |
| |
| // Probe describes a health check to be performed against a container to |
| // determine whether it is alive or ready to receive traffic. |
| type Probe struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Types that are assignable to ProbeType: |
| // |
| // *Probe_Exec |
| ProbeType isProbe_ProbeType `protobuf_oneof:"probe_type"` |
| // How often (in seconds) to perform the probe. Default to 10 seconds. |
| // Minimum value is 1. Must be less than timeout_seconds. |
| // |
| // Maps to Kubernetes probe argument 'periodSeconds'. |
| PeriodSeconds int32 `protobuf:"varint,2,opt,name=period_seconds,json=periodSeconds,proto3" json:"period_seconds,omitempty"` |
| // Number of seconds after which the probe times out. Defaults to 1 second. |
| // Minimum value is 1. Must be greater or equal to period_seconds. |
| // |
| // Maps to Kubernetes probe argument 'timeoutSeconds'. |
| TimeoutSeconds int32 `protobuf:"varint,3,opt,name=timeout_seconds,json=timeoutSeconds,proto3" json:"timeout_seconds,omitempty"` |
| } |
| |
| func (x *Probe) Reset() { |
| *x = Probe{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[8] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Probe) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Probe) ProtoMessage() {} |
| |
| func (x *Probe) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[8] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Probe.ProtoReflect.Descriptor instead. |
| func (*Probe) Descriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{8} |
| } |
| |
| func (m *Probe) GetProbeType() isProbe_ProbeType { |
| if m != nil { |
| return m.ProbeType |
| } |
| return nil |
| } |
| |
| func (x *Probe) GetExec() *Probe_ExecAction { |
| if x, ok := x.GetProbeType().(*Probe_Exec); ok { |
| return x.Exec |
| } |
| return nil |
| } |
| |
| func (x *Probe) GetPeriodSeconds() int32 { |
| if x != nil { |
| return x.PeriodSeconds |
| } |
| return 0 |
| } |
| |
| func (x *Probe) GetTimeoutSeconds() int32 { |
| if x != nil { |
| return x.TimeoutSeconds |
| } |
| return 0 |
| } |
| |
| type isProbe_ProbeType interface { |
| isProbe_ProbeType() |
| } |
| |
| type Probe_Exec struct { |
| // Exec specifies the action to take. |
| Exec *Probe_ExecAction `protobuf:"bytes,1,opt,name=exec,proto3,oneof"` |
| } |
| |
| func (*Probe_Exec) isProbe_ProbeType() {} |
| |
| // Represents export format supported by the Model. |
| // All formats export to Google Cloud Storage. |
| type Model_ExportFormat struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Output only. The ID of the export format. |
| // The possible format IDs are: |
| // |
| // * `tflite` |
| // Used for Android mobile devices. |
| // |
| // * `edgetpu-tflite` |
| // Used for [Edge TPU](https://cloud.google.com/edge-tpu/) devices. |
| // |
| // * `tf-saved-model` |
| // A tensorflow model in SavedModel format. |
| // |
| // * `tf-js` |
| // A [TensorFlow.js](https://www.tensorflow.org/js) model that can be used |
| // in the browser and in Node.js using JavaScript. |
| // |
| // * `core-ml` |
| // Used for iOS mobile devices. |
| // |
| // * `custom-trained` |
| // A Model that was uploaded or trained by custom code. |
| Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` |
| // Output only. The content of this Model that may be exported. |
| ExportableContents []Model_ExportFormat_ExportableContent `protobuf:"varint,2,rep,packed,name=exportable_contents,json=exportableContents,proto3,enum=google.cloud.aiplatform.v1.Model_ExportFormat_ExportableContent" json:"exportable_contents,omitempty"` |
| } |
| |
| func (x *Model_ExportFormat) Reset() { |
| *x = Model_ExportFormat{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[9] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Model_ExportFormat) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Model_ExportFormat) ProtoMessage() {} |
| |
| func (x *Model_ExportFormat) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[9] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Model_ExportFormat.ProtoReflect.Descriptor instead. |
| func (*Model_ExportFormat) Descriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{0, 0} |
| } |
| |
| func (x *Model_ExportFormat) GetId() string { |
| if x != nil { |
| return x.Id |
| } |
| return "" |
| } |
| |
| func (x *Model_ExportFormat) GetExportableContents() []Model_ExportFormat_ExportableContent { |
| if x != nil { |
| return x.ExportableContents |
| } |
| return nil |
| } |
| |
| // Stats of data used for train or evaluate the Model. |
| type Model_DataStats struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Number of DataItems that were used for training this Model. |
| TrainingDataItemsCount int64 `protobuf:"varint,1,opt,name=training_data_items_count,json=trainingDataItemsCount,proto3" json:"training_data_items_count,omitempty"` |
| // Number of DataItems that were used for validating this Model during |
| // training. |
| ValidationDataItemsCount int64 `protobuf:"varint,2,opt,name=validation_data_items_count,json=validationDataItemsCount,proto3" json:"validation_data_items_count,omitempty"` |
| // Number of DataItems that were used for evaluating this Model. If the |
| // Model is evaluated multiple times, this will be the number of test |
| // DataItems used by the first evaluation. If the Model is not evaluated, |
| // the number is 0. |
| TestDataItemsCount int64 `protobuf:"varint,3,opt,name=test_data_items_count,json=testDataItemsCount,proto3" json:"test_data_items_count,omitempty"` |
| // Number of Annotations that are used for training this Model. |
| TrainingAnnotationsCount int64 `protobuf:"varint,4,opt,name=training_annotations_count,json=trainingAnnotationsCount,proto3" json:"training_annotations_count,omitempty"` |
| // Number of Annotations that are used for validating this Model during |
| // training. |
| ValidationAnnotationsCount int64 `protobuf:"varint,5,opt,name=validation_annotations_count,json=validationAnnotationsCount,proto3" json:"validation_annotations_count,omitempty"` |
| // Number of Annotations that are used for evaluating this Model. If the |
| // Model is evaluated multiple times, this will be the number of test |
| // Annotations used by the first evaluation. If the Model is not evaluated, |
| // the number is 0. |
| TestAnnotationsCount int64 `protobuf:"varint,6,opt,name=test_annotations_count,json=testAnnotationsCount,proto3" json:"test_annotations_count,omitempty"` |
| } |
| |
| func (x *Model_DataStats) Reset() { |
| *x = Model_DataStats{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[10] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Model_DataStats) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Model_DataStats) ProtoMessage() {} |
| |
| func (x *Model_DataStats) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[10] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Model_DataStats.ProtoReflect.Descriptor instead. |
| func (*Model_DataStats) Descriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{0, 1} |
| } |
| |
| func (x *Model_DataStats) GetTrainingDataItemsCount() int64 { |
| if x != nil { |
| return x.TrainingDataItemsCount |
| } |
| return 0 |
| } |
| |
| func (x *Model_DataStats) GetValidationDataItemsCount() int64 { |
| if x != nil { |
| return x.ValidationDataItemsCount |
| } |
| return 0 |
| } |
| |
| func (x *Model_DataStats) GetTestDataItemsCount() int64 { |
| if x != nil { |
| return x.TestDataItemsCount |
| } |
| return 0 |
| } |
| |
| func (x *Model_DataStats) GetTrainingAnnotationsCount() int64 { |
| if x != nil { |
| return x.TrainingAnnotationsCount |
| } |
| return 0 |
| } |
| |
| func (x *Model_DataStats) GetValidationAnnotationsCount() int64 { |
| if x != nil { |
| return x.ValidationAnnotationsCount |
| } |
| return 0 |
| } |
| |
| func (x *Model_DataStats) GetTestAnnotationsCount() int64 { |
| if x != nil { |
| return x.TestAnnotationsCount |
| } |
| return 0 |
| } |
| |
| // Contains information about the original Model if this Model is a copy. |
| type Model_OriginalModelInfo struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Output only. The resource name of the Model this Model is a copy of, |
| // including the revision. Format: |
| // `projects/{project}/locations/{location}/models/{model_id}@{version_id}` |
| Model string `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"` |
| } |
| |
| func (x *Model_OriginalModelInfo) Reset() { |
| *x = Model_OriginalModelInfo{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[11] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Model_OriginalModelInfo) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Model_OriginalModelInfo) ProtoMessage() {} |
| |
| func (x *Model_OriginalModelInfo) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[11] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Model_OriginalModelInfo.ProtoReflect.Descriptor instead. |
| func (*Model_OriginalModelInfo) Descriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{0, 2} |
| } |
| |
| func (x *Model_OriginalModelInfo) GetModel() string { |
| if x != nil { |
| return x.Model |
| } |
| return "" |
| } |
| |
| // User input field to specify the base model source. Currently it only |
| // supports specifing the Model Garden models and Genie models. |
| type Model_BaseModelSource struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Types that are assignable to Source: |
| // |
| // *Model_BaseModelSource_ModelGardenSource |
| // *Model_BaseModelSource_GenieSource |
| Source isModel_BaseModelSource_Source `protobuf_oneof:"source"` |
| } |
| |
| func (x *Model_BaseModelSource) Reset() { |
| *x = Model_BaseModelSource{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[12] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Model_BaseModelSource) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Model_BaseModelSource) ProtoMessage() {} |
| |
| func (x *Model_BaseModelSource) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[12] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Model_BaseModelSource.ProtoReflect.Descriptor instead. |
| func (*Model_BaseModelSource) Descriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{0, 3} |
| } |
| |
| func (m *Model_BaseModelSource) GetSource() isModel_BaseModelSource_Source { |
| if m != nil { |
| return m.Source |
| } |
| return nil |
| } |
| |
| func (x *Model_BaseModelSource) GetModelGardenSource() *ModelGardenSource { |
| if x, ok := x.GetSource().(*Model_BaseModelSource_ModelGardenSource); ok { |
| return x.ModelGardenSource |
| } |
| return nil |
| } |
| |
| func (x *Model_BaseModelSource) GetGenieSource() *GenieSource { |
| if x, ok := x.GetSource().(*Model_BaseModelSource_GenieSource); ok { |
| return x.GenieSource |
| } |
| return nil |
| } |
| |
| type isModel_BaseModelSource_Source interface { |
| isModel_BaseModelSource_Source() |
| } |
| |
| type Model_BaseModelSource_ModelGardenSource struct { |
| // Source information of Model Garden models. |
| ModelGardenSource *ModelGardenSource `protobuf:"bytes,1,opt,name=model_garden_source,json=modelGardenSource,proto3,oneof"` |
| } |
| |
| type Model_BaseModelSource_GenieSource struct { |
| // Information about the base model of Genie models. |
| GenieSource *GenieSource `protobuf:"bytes,2,opt,name=genie_source,json=genieSource,proto3,oneof"` |
| } |
| |
| func (*Model_BaseModelSource_ModelGardenSource) isModel_BaseModelSource_Source() {} |
| |
| func (*Model_BaseModelSource_GenieSource) isModel_BaseModelSource_Source() {} |
| |
| // ExecAction specifies a command to execute. |
| type Probe_ExecAction struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Command is the command line to execute inside the container, the working |
| // directory for the command is root ('/') in the container's filesystem. |
| // The command is simply exec'd, it is not run inside a shell, so |
| // traditional shell instructions ('|', etc) won't work. To use a shell, you |
| // need to explicitly call out to that shell. Exit status of 0 is treated as |
| // live/healthy and non-zero is unhealthy. |
| Command []string `protobuf:"bytes,1,rep,name=command,proto3" json:"command,omitempty"` |
| } |
| |
| func (x *Probe_ExecAction) Reset() { |
| *x = Probe_ExecAction{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[14] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Probe_ExecAction) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Probe_ExecAction) ProtoMessage() {} |
| |
| func (x *Probe_ExecAction) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_aiplatform_v1_model_proto_msgTypes[14] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Probe_ExecAction.ProtoReflect.Descriptor instead. |
| func (*Probe_ExecAction) Descriptor() ([]byte, []int) { |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP(), []int{8, 0} |
| } |
| |
| func (x *Probe_ExecAction) GetCommand() []string { |
| if x != nil { |
| return x.Command |
| } |
| return nil |
| } |
| |
| var File_google_cloud_aiplatform_v1_model_proto protoreflect.FileDescriptor |
| |
| var file_google_cloud_aiplatform_v1_model_proto_rawDesc = []byte{ |
| 0x0a, 0x26, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, |
| 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x6f, 0x64, |
| 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, |
| 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, |
| 0x6d, 0x2e, 0x76, 0x31, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, |
| 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, |
| 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, |
| 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, |
| 0x1a, 0x33, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, |
| 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x65, 0x70, |
| 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x2e, |
| 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x30, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, |
| 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, |
| 0x31, 0x2f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x70, 0x65, |
| 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x28, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, |
| 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, |
| 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x6e, 0x76, 0x5f, 0x76, 0x61, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, |
| 0x6f, 0x1a, 0x2c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, |
| 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x78, |
| 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, |
| 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, |
| 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, |
| 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, |
| 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, |
| 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, |
| 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xdc, |
| 0x1a, 0x0a, 0x05, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, |
| 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0a, |
| 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x09, |
| 0x42, 0x06, 0xe0, 0x41, 0x05, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, |
| 0x6e, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x61, |
| 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x18, 0x1d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x76, 0x65, |
| 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x12, 0x4f, 0x0a, 0x13, |
| 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, |
| 0x69, 0x6d, 0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, |
| 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, |
| 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x76, 0x65, 0x72, 0x73, |
| 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x4f, 0x0a, |
| 0x13, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, |
| 0x74, 0x69, 0x6d, 0x65, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, |
| 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, |
| 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x76, 0x65, 0x72, |
| 0x73, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26, |
| 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, |
| 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, |
| 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, |
| 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, |
| 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x13, 0x76, 0x65, 0x72, 0x73, |
| 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, |
| 0x1e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x44, 0x65, |
| 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x56, 0x0a, 0x10, 0x70, 0x72, 0x65, |
| 0x64, 0x69, 0x63, 0x74, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, |
| 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, |
| 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, |
| 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x74, 0x61, |
| 0x52, 0x0f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x74, |
| 0x61, 0x12, 0x33, 0x0a, 0x13, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x63, |
| 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, |
| 0xe0, 0x41, 0x05, 0x52, 0x11, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x53, 0x63, 0x68, |
| 0x65, 0x6d, 0x61, 0x55, 0x72, 0x69, 0x12, 0x37, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, |
| 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, |
| 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, |
| 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, |
| 0x6d, 0x0a, 0x18, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x78, 0x70, |
| 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, |
| 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, |
| 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, |
| 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x61, |
| 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x16, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, |
| 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x12, 0x5f, |
| 0x0a, 0x11, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, |
| 0x69, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x32, 0xe0, 0x41, 0x03, 0xfa, 0x41, |
| 0x2c, 0x0a, 0x2a, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, |
| 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x72, 0x61, |
| 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x10, 0x74, |
| 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, |
| 0x50, 0x0a, 0x0c, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6a, 0x6f, 0x62, 0x18, |
| 0x2f, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x01, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x61, |
| 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, |
| 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, |
| 0x65, 0x4a, 0x6f, 0x62, 0x52, 0x0b, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x6f, |
| 0x62, 0x12, 0x5a, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x73, |
| 0x70, 0x65, 0x63, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, |
| 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, |
| 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x74, |
| 0x61, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x42, 0x03, 0xe0, 0x41, 0x04, 0x52, 0x0d, |
| 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x12, 0x26, 0x0a, |
| 0x0c, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x1a, 0x20, |
| 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, |
| 0x63, 0x74, 0x55, 0x72, 0x69, 0x12, 0x8f, 0x01, 0x0a, 0x24, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, |
| 0x74, 0x65, 0x64, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, |
| 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x0a, |
| 0x20, 0x03, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, |
| 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, |
| 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, |
| 0x6e, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x42, |
| 0x03, 0xe0, 0x41, 0x03, 0x52, 0x21, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x44, |
| 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, |
| 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x4a, 0x0a, 0x1f, 0x73, 0x75, 0x70, 0x70, 0x6f, |
| 0x72, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, |
| 0x67, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, |
| 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x1c, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, |
| 0x49, 0x6e, 0x70, 0x75, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x46, 0x6f, 0x72, 0x6d, |
| 0x61, 0x74, 0x73, 0x12, 0x4c, 0x0a, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, |
| 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, |
| 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, |
| 0x41, 0x03, 0x52, 0x1d, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x4f, 0x75, 0x74, |
| 0x70, 0x75, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, |
| 0x73, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, |
| 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, |
| 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, |
| 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, |
| 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, |
| 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, |
| 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, |
| 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, |
| 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x5a, 0x0a, 0x0f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, |
| 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, |
| 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, |
| 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x70, 0x6c, |
| 0x6f, 0x79, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x66, 0x42, 0x03, 0xe0, 0x41, |
| 0x03, 0x52, 0x0e, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, |
| 0x73, 0x12, 0x56, 0x0a, 0x10, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, |
| 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, |
| 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, |
| 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, |
| 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x52, 0x0f, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, |
| 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, |
| 0x67, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x45, 0x0a, |
| 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, |
| 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, |
| 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, |
| 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, |
| 0x62, 0x65, 0x6c, 0x73, 0x12, 0x4a, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x74, 0x61, |
| 0x74, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, |
| 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, |
| 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x44, 0x61, 0x74, 0x61, |
| 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x53, 0x74, 0x61, 0x74, 0x73, |
| 0x12, 0x53, 0x0a, 0x0f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, |
| 0x70, 0x65, 0x63, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, |
| 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, |
| 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, |
| 0x6e, 0x53, 0x70, 0x65, 0x63, 0x52, 0x0e, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, |
| 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x5c, 0x0a, 0x11, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x73, |
| 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0b, |
| 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, |
| 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, |
| 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x03, 0xe0, |
| 0x41, 0x03, 0x52, 0x0f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, |
| 0x6e, 0x66, 0x6f, 0x12, 0x68, 0x0a, 0x13, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, |
| 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, |
| 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, |
| 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, |
| 0x64, 0x65, 0x6c, 0x2e, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x4d, 0x6f, 0x64, 0x65, |
| 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x6f, 0x72, 0x69, 0x67, |
| 0x69, 0x6e, 0x61, 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x30, 0x0a, |
| 0x11, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, |
| 0x63, 0x74, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x10, 0x6d, |
| 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, |
| 0x62, 0x0a, 0x11, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x73, 0x6f, |
| 0x75, 0x72, 0x63, 0x65, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, |
| 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, |
| 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x42, 0x61, |
| 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x03, 0xe0, |
| 0x41, 0x01, 0x52, 0x0f, 0x62, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, |
| 0x72, 0x63, 0x65, 0x1a, 0xed, 0x01, 0x0a, 0x0c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, |
| 0x72, 0x6d, 0x61, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, |
| 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x76, 0x0a, 0x13, 0x65, 0x78, 0x70, |
| 0x6f, 0x72, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, |
| 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, |
| 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, |
| 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, |
| 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x62, 0x6c, |
| 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x65, |
| 0x78, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, |
| 0x73, 0x22, 0x50, 0x0a, 0x11, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x43, |
| 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x1e, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, |
| 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x4e, 0x53, |
| 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x52, |
| 0x54, 0x49, 0x46, 0x41, 0x43, 0x54, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4d, 0x41, 0x47, |
| 0x45, 0x10, 0x02, 0x1a, 0xee, 0x02, 0x0a, 0x09, 0x44, 0x61, 0x74, 0x61, 0x53, 0x74, 0x61, 0x74, |
| 0x73, 0x12, 0x39, 0x0a, 0x19, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, |
| 0x74, 0x61, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, |
| 0x20, 0x01, 0x28, 0x03, 0x52, 0x16, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, |
| 0x74, 0x61, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3d, 0x0a, 0x1b, |
| 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, |
| 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, |
| 0x03, 0x52, 0x18, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, |
| 0x61, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x15, 0x74, |
| 0x65, 0x73, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x5f, 0x63, |
| 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x74, 0x65, 0x73, 0x74, |
| 0x44, 0x61, 0x74, 0x61, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3c, |
| 0x0a, 0x1a, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, |
| 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, |
| 0x28, 0x03, 0x52, 0x18, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x41, 0x6e, 0x6e, 0x6f, |
| 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x40, 0x0a, 0x1c, |
| 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, |
| 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, |
| 0x28, 0x03, 0x52, 0x1a, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6e, |
| 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x34, |
| 0x0a, 0x16, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, |
| 0x6e, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x14, |
| 0x74, 0x65, 0x73, 0x74, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x43, |
| 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x52, 0x0a, 0x11, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, |
| 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3d, 0x0a, 0x05, 0x6d, 0x6f, 0x64, |
| 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x03, 0xfa, 0x41, 0x21, |
| 0x0a, 0x1f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, |
| 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x6f, 0x64, 0x65, |
| 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x1a, 0xca, 0x01, 0x0a, 0x0f, 0x42, 0x61, 0x73, |
| 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x5f, 0x0a, 0x13, |
| 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x67, 0x61, 0x72, 0x64, 0x65, 0x6e, 0x5f, 0x73, 0x6f, 0x75, |
| 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, |
| 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, |
| 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x47, 0x61, 0x72, 0x64, |
| 0x65, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x11, 0x6d, 0x6f, 0x64, 0x65, |
| 0x6c, 0x47, 0x61, 0x72, 0x64, 0x65, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x4c, 0x0a, |
| 0x0c, 0x67, 0x65, 0x6e, 0x69, 0x65, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, |
| 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, |
| 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, |
| 0x2e, 0x47, 0x65, 0x6e, 0x69, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x0b, |
| 0x67, 0x65, 0x6e, 0x69, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x73, |
| 0x6f, 0x75, 0x72, 0x63, 0x65, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, |
| 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, |
| 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, |
| 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, |
| 0x22, 0x8c, 0x01, 0x0a, 0x17, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, |
| 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x25, |
| 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, |
| 0x52, 0x43, 0x45, 0x53, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, |
| 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x45, 0x44, 0x49, 0x43, |
| 0x41, 0x54, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x53, 0x10, 0x01, |
| 0x12, 0x17, 0x0a, 0x13, 0x41, 0x55, 0x54, 0x4f, 0x4d, 0x41, 0x54, 0x49, 0x43, 0x5f, 0x52, 0x45, |
| 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x53, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x48, 0x41, |
| 0x52, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x53, 0x10, 0x03, 0x3a, |
| 0x5c, 0xea, 0x41, 0x59, 0x0a, 0x1f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, |
| 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, |
| 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x36, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, |
| 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, |
| 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x6d, |
| 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x7b, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x7d, 0x22, 0x2e, 0x0a, |
| 0x13, 0x4c, 0x61, 0x72, 0x67, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x66, 0x65, 0x72, |
| 0x65, 0x6e, 0x63, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, |
| 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x44, 0x0a, |
| 0x11, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x47, 0x61, 0x72, 0x64, 0x65, 0x6e, 0x53, 0x6f, 0x75, 0x72, |
| 0x63, 0x65, 0x12, 0x2f, 0x0a, 0x11, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6d, 0x6f, 0x64, |
| 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, |
| 0x41, 0x02, 0x52, 0x0f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, |
| 0x61, 0x6d, 0x65, 0x22, 0x38, 0x0a, 0x0b, 0x47, 0x65, 0x6e, 0x69, 0x65, 0x53, 0x6f, 0x75, 0x72, |
| 0x63, 0x65, 0x12, 0x29, 0x0a, 0x0e, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, |
| 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, |
| 0x0c, 0x62, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x55, 0x72, 0x69, 0x22, 0xb8, 0x01, |
| 0x0a, 0x0f, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x74, |
| 0x61, 0x12, 0x33, 0x0a, 0x13, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x63, |
| 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, |
| 0xe0, 0x41, 0x05, 0x52, 0x11, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x63, 0x68, |
| 0x65, 0x6d, 0x61, 0x55, 0x72, 0x69, 0x12, 0x37, 0x0a, 0x15, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, |
| 0x74, 0x65, 0x72, 0x73, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x75, 0x72, 0x69, 0x18, |
| 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x13, 0x70, 0x61, 0x72, 0x61, |
| 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x55, 0x72, 0x69, 0x12, |
| 0x37, 0x0a, 0x15, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x63, |
| 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, |
| 0xe0, 0x41, 0x05, 0x52, 0x13, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, |
| 0x63, 0x68, 0x65, 0x6d, 0x61, 0x55, 0x72, 0x69, 0x22, 0xa0, 0x05, 0x0a, 0x12, 0x4d, 0x6f, 0x64, |
| 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x12, |
| 0x23, 0x0a, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, |
| 0x28, 0x09, 0x42, 0x06, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, |
| 0x65, 0x55, 0x72, 0x69, 0x12, 0x1d, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, |
| 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, |
| 0x61, 0x6e, 0x64, 0x12, 0x17, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, |
| 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x39, 0x0a, 0x03, |
| 0x65, 0x6e, 0x76, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, |
| 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, |
| 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x76, 0x56, 0x61, 0x72, 0x42, 0x03, 0xe0, |
| 0x41, 0x05, 0x52, 0x03, 0x65, 0x6e, 0x76, 0x12, 0x3b, 0x0a, 0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, |
| 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, |
| 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, |
| 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x05, 0x70, |
| 0x6f, 0x72, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x0d, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, |
| 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, |
| 0x52, 0x0c, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x26, |
| 0x0a, 0x0c, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x07, |
| 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0b, 0x68, 0x65, 0x61, 0x6c, 0x74, |
| 0x68, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x44, 0x0a, 0x0a, 0x67, 0x72, 0x70, 0x63, 0x5f, 0x70, |
| 0x6f, 0x72, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, |
| 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, |
| 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x42, 0x03, 0xe0, 0x41, |
| 0x05, 0x52, 0x09, 0x67, 0x72, 0x70, 0x63, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x4d, 0x0a, 0x12, |
| 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, |
| 0x75, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, |
| 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, |
| 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x11, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, |
| 0x6d, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x36, 0x0a, 0x15, 0x73, |
| 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x73, 0x69, 0x7a, |
| 0x65, 0x5f, 0x6d, 0x62, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, |
| 0x12, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x53, 0x69, 0x7a, |
| 0x65, 0x4d, 0x62, 0x12, 0x4b, 0x0a, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x5f, 0x70, |
| 0x72, 0x6f, 0x62, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x6f, |
| 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, |
| 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x42, 0x03, 0xe0, |
| 0x41, 0x05, 0x52, 0x0c, 0x73, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x50, 0x72, 0x6f, 0x62, 0x65, |
| 0x12, 0x49, 0x0a, 0x0c, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x65, |
| 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, |
| 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, |
| 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0b, |
| 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x22, 0x2d, 0x0a, 0x04, 0x50, |
| 0x6f, 0x72, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, |
| 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x63, 0x6f, 0x6e, |
| 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x50, 0x6f, 0x72, 0x74, 0x22, 0xa5, 0x02, 0x0a, 0x0f, 0x4d, |
| 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5c, |
| 0x0a, 0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, |
| 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, |
| 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, |
| 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, |
| 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, |
| 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, |
| 0x63, 0x6f, 0x70, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x63, 0x6f, 0x70, 0x79, |
| 0x22, 0x9f, 0x01, 0x0a, 0x0f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, |
| 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x1d, 0x4d, 0x4f, 0x44, 0x45, 0x4c, 0x5f, 0x53, 0x4f, |
| 0x55, 0x52, 0x43, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, |
| 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x55, 0x54, 0x4f, 0x4d, |
| 0x4c, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x10, 0x02, 0x12, |
| 0x08, 0x0a, 0x04, 0x42, 0x51, 0x4d, 0x4c, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x4f, 0x44, |
| 0x45, 0x4c, 0x5f, 0x47, 0x41, 0x52, 0x44, 0x45, 0x4e, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x47, |
| 0x45, 0x4e, 0x49, 0x45, 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, |
| 0x5f, 0x54, 0x45, 0x58, 0x54, 0x5f, 0x45, 0x4d, 0x42, 0x45, 0x44, 0x44, 0x49, 0x4e, 0x47, 0x10, |
| 0x06, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x41, 0x52, 0x4b, 0x45, 0x54, 0x50, 0x4c, 0x41, 0x43, 0x45, |
| 0x10, 0x07, 0x22, 0xd1, 0x01, 0x0a, 0x05, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x12, 0x42, 0x0a, 0x04, |
| 0x65, 0x78, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, |
| 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, |
| 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x2e, 0x45, 0x78, |
| 0x65, 0x63, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x04, 0x65, 0x78, 0x65, 0x63, |
| 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, |
| 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, |
| 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x69, 0x6d, 0x65, 0x6f, |
| 0x75, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, |
| 0x52, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, |
| 0x1a, 0x26, 0x0a, 0x0a, 0x45, 0x78, 0x65, 0x63, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, |
| 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, |
| 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x62, |
| 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0xc8, 0x01, 0x0a, 0x1e, 0x63, 0x6f, 0x6d, 0x2e, 0x67, |
| 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, |
| 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x4d, 0x6f, 0x64, 0x65, 0x6c, |
| 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, |
| 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x61, 0x69, 0x70, |
| 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x31, 0x2f, 0x61, 0x69, |
| 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x70, 0x62, 0x3b, 0x61, 0x69, 0x70, 0x6c, 0x61, |
| 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x70, 0x62, 0xaa, 0x02, 0x1a, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, |
| 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, |
| 0x6d, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x1a, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, |
| 0x6f, 0x75, 0x64, 0x5c, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5c, 0x56, |
| 0x31, 0xea, 0x02, 0x1d, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, |
| 0x64, 0x3a, 0x3a, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x3a, 0x3a, 0x56, |
| 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, |
| } |
| |
| var ( |
| file_google_cloud_aiplatform_v1_model_proto_rawDescOnce sync.Once |
| file_google_cloud_aiplatform_v1_model_proto_rawDescData = file_google_cloud_aiplatform_v1_model_proto_rawDesc |
| ) |
| |
| func file_google_cloud_aiplatform_v1_model_proto_rawDescGZIP() []byte { |
| file_google_cloud_aiplatform_v1_model_proto_rawDescOnce.Do(func() { |
| file_google_cloud_aiplatform_v1_model_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_aiplatform_v1_model_proto_rawDescData) |
| }) |
| return file_google_cloud_aiplatform_v1_model_proto_rawDescData |
| } |
| |
| var file_google_cloud_aiplatform_v1_model_proto_enumTypes = make([]protoimpl.EnumInfo, 3) |
| var file_google_cloud_aiplatform_v1_model_proto_msgTypes = make([]protoimpl.MessageInfo, 15) |
| var file_google_cloud_aiplatform_v1_model_proto_goTypes = []interface{}{ |
| (Model_DeploymentResourcesType)(0), // 0: google.cloud.aiplatform.v1.Model.DeploymentResourcesType |
| (Model_ExportFormat_ExportableContent)(0), // 1: google.cloud.aiplatform.v1.Model.ExportFormat.ExportableContent |
| (ModelSourceInfo_ModelSourceType)(0), // 2: google.cloud.aiplatform.v1.ModelSourceInfo.ModelSourceType |
| (*Model)(nil), // 3: google.cloud.aiplatform.v1.Model |
| (*LargeModelReference)(nil), // 4: google.cloud.aiplatform.v1.LargeModelReference |
| (*ModelGardenSource)(nil), // 5: google.cloud.aiplatform.v1.ModelGardenSource |
| (*GenieSource)(nil), // 6: google.cloud.aiplatform.v1.GenieSource |
| (*PredictSchemata)(nil), // 7: google.cloud.aiplatform.v1.PredictSchemata |
| (*ModelContainerSpec)(nil), // 8: google.cloud.aiplatform.v1.ModelContainerSpec |
| (*Port)(nil), // 9: google.cloud.aiplatform.v1.Port |
| (*ModelSourceInfo)(nil), // 10: google.cloud.aiplatform.v1.ModelSourceInfo |
| (*Probe)(nil), // 11: google.cloud.aiplatform.v1.Probe |
| (*Model_ExportFormat)(nil), // 12: google.cloud.aiplatform.v1.Model.ExportFormat |
| (*Model_DataStats)(nil), // 13: google.cloud.aiplatform.v1.Model.DataStats |
| (*Model_OriginalModelInfo)(nil), // 14: google.cloud.aiplatform.v1.Model.OriginalModelInfo |
| (*Model_BaseModelSource)(nil), // 15: google.cloud.aiplatform.v1.Model.BaseModelSource |
| nil, // 16: google.cloud.aiplatform.v1.Model.LabelsEntry |
| (*Probe_ExecAction)(nil), // 17: google.cloud.aiplatform.v1.Probe.ExecAction |
| (*timestamppb.Timestamp)(nil), // 18: google.protobuf.Timestamp |
| (*structpb.Value)(nil), // 19: google.protobuf.Value |
| (*DeployedModelRef)(nil), // 20: google.cloud.aiplatform.v1.DeployedModelRef |
| (*ExplanationSpec)(nil), // 21: google.cloud.aiplatform.v1.ExplanationSpec |
| (*EncryptionSpec)(nil), // 22: google.cloud.aiplatform.v1.EncryptionSpec |
| (*EnvVar)(nil), // 23: google.cloud.aiplatform.v1.EnvVar |
| (*durationpb.Duration)(nil), // 24: google.protobuf.Duration |
| } |
| var file_google_cloud_aiplatform_v1_model_proto_depIdxs = []int32{ |
| 18, // 0: google.cloud.aiplatform.v1.Model.version_create_time:type_name -> google.protobuf.Timestamp |
| 18, // 1: google.cloud.aiplatform.v1.Model.version_update_time:type_name -> google.protobuf.Timestamp |
| 7, // 2: google.cloud.aiplatform.v1.Model.predict_schemata:type_name -> google.cloud.aiplatform.v1.PredictSchemata |
| 19, // 3: google.cloud.aiplatform.v1.Model.metadata:type_name -> google.protobuf.Value |
| 12, // 4: google.cloud.aiplatform.v1.Model.supported_export_formats:type_name -> google.cloud.aiplatform.v1.Model.ExportFormat |
| 8, // 5: google.cloud.aiplatform.v1.Model.container_spec:type_name -> google.cloud.aiplatform.v1.ModelContainerSpec |
| 0, // 6: google.cloud.aiplatform.v1.Model.supported_deployment_resources_types:type_name -> google.cloud.aiplatform.v1.Model.DeploymentResourcesType |
| 18, // 7: google.cloud.aiplatform.v1.Model.create_time:type_name -> google.protobuf.Timestamp |
| 18, // 8: google.cloud.aiplatform.v1.Model.update_time:type_name -> google.protobuf.Timestamp |
| 20, // 9: google.cloud.aiplatform.v1.Model.deployed_models:type_name -> google.cloud.aiplatform.v1.DeployedModelRef |
| 21, // 10: google.cloud.aiplatform.v1.Model.explanation_spec:type_name -> google.cloud.aiplatform.v1.ExplanationSpec |
| 16, // 11: google.cloud.aiplatform.v1.Model.labels:type_name -> google.cloud.aiplatform.v1.Model.LabelsEntry |
| 13, // 12: google.cloud.aiplatform.v1.Model.data_stats:type_name -> google.cloud.aiplatform.v1.Model.DataStats |
| 22, // 13: google.cloud.aiplatform.v1.Model.encryption_spec:type_name -> google.cloud.aiplatform.v1.EncryptionSpec |
| 10, // 14: google.cloud.aiplatform.v1.Model.model_source_info:type_name -> google.cloud.aiplatform.v1.ModelSourceInfo |
| 14, // 15: google.cloud.aiplatform.v1.Model.original_model_info:type_name -> google.cloud.aiplatform.v1.Model.OriginalModelInfo |
| 15, // 16: google.cloud.aiplatform.v1.Model.base_model_source:type_name -> google.cloud.aiplatform.v1.Model.BaseModelSource |
| 23, // 17: google.cloud.aiplatform.v1.ModelContainerSpec.env:type_name -> google.cloud.aiplatform.v1.EnvVar |
| 9, // 18: google.cloud.aiplatform.v1.ModelContainerSpec.ports:type_name -> google.cloud.aiplatform.v1.Port |
| 9, // 19: google.cloud.aiplatform.v1.ModelContainerSpec.grpc_ports:type_name -> google.cloud.aiplatform.v1.Port |
| 24, // 20: google.cloud.aiplatform.v1.ModelContainerSpec.deployment_timeout:type_name -> google.protobuf.Duration |
| 11, // 21: google.cloud.aiplatform.v1.ModelContainerSpec.startup_probe:type_name -> google.cloud.aiplatform.v1.Probe |
| 11, // 22: google.cloud.aiplatform.v1.ModelContainerSpec.health_probe:type_name -> google.cloud.aiplatform.v1.Probe |
| 2, // 23: google.cloud.aiplatform.v1.ModelSourceInfo.source_type:type_name -> google.cloud.aiplatform.v1.ModelSourceInfo.ModelSourceType |
| 17, // 24: google.cloud.aiplatform.v1.Probe.exec:type_name -> google.cloud.aiplatform.v1.Probe.ExecAction |
| 1, // 25: google.cloud.aiplatform.v1.Model.ExportFormat.exportable_contents:type_name -> google.cloud.aiplatform.v1.Model.ExportFormat.ExportableContent |
| 5, // 26: google.cloud.aiplatform.v1.Model.BaseModelSource.model_garden_source:type_name -> google.cloud.aiplatform.v1.ModelGardenSource |
| 6, // 27: google.cloud.aiplatform.v1.Model.BaseModelSource.genie_source:type_name -> google.cloud.aiplatform.v1.GenieSource |
| 28, // [28:28] is the sub-list for method output_type |
| 28, // [28:28] is the sub-list for method input_type |
| 28, // [28:28] is the sub-list for extension type_name |
| 28, // [28:28] is the sub-list for extension extendee |
| 0, // [0:28] is the sub-list for field type_name |
| } |
| |
| func init() { file_google_cloud_aiplatform_v1_model_proto_init() } |
| func file_google_cloud_aiplatform_v1_model_proto_init() { |
| if File_google_cloud_aiplatform_v1_model_proto != nil { |
| return |
| } |
| file_google_cloud_aiplatform_v1_deployed_model_ref_proto_init() |
| file_google_cloud_aiplatform_v1_encryption_spec_proto_init() |
| file_google_cloud_aiplatform_v1_env_var_proto_init() |
| file_google_cloud_aiplatform_v1_explanation_proto_init() |
| if !protoimpl.UnsafeEnabled { |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Model); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*LargeModelReference); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*ModelGardenSource); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*GenieSource); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*PredictSchemata); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*ModelContainerSpec); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Port); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*ModelSourceInfo); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Probe); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Model_ExportFormat); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Model_DataStats); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Model_OriginalModelInfo); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Model_BaseModelSource); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Probe_ExecAction); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| } |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[8].OneofWrappers = []interface{}{ |
| (*Probe_Exec)(nil), |
| } |
| file_google_cloud_aiplatform_v1_model_proto_msgTypes[12].OneofWrappers = []interface{}{ |
| (*Model_BaseModelSource_ModelGardenSource)(nil), |
| (*Model_BaseModelSource_GenieSource)(nil), |
| } |
| type x struct{} |
| out := protoimpl.TypeBuilder{ |
| File: protoimpl.DescBuilder{ |
| GoPackagePath: reflect.TypeOf(x{}).PkgPath(), |
| RawDescriptor: file_google_cloud_aiplatform_v1_model_proto_rawDesc, |
| NumEnums: 3, |
| NumMessages: 15, |
| NumExtensions: 0, |
| NumServices: 0, |
| }, |
| GoTypes: file_google_cloud_aiplatform_v1_model_proto_goTypes, |
| DependencyIndexes: file_google_cloud_aiplatform_v1_model_proto_depIdxs, |
| EnumInfos: file_google_cloud_aiplatform_v1_model_proto_enumTypes, |
| MessageInfos: file_google_cloud_aiplatform_v1_model_proto_msgTypes, |
| }.Build() |
| File_google_cloud_aiplatform_v1_model_proto = out.File |
| file_google_cloud_aiplatform_v1_model_proto_rawDesc = nil |
| file_google_cloud_aiplatform_v1_model_proto_goTypes = nil |
| file_google_cloud_aiplatform_v1_model_proto_depIdxs = nil |
| } |