cloud.google.com/go/aiplatform@v1.106.0/apiv1beta1/aiplatformpb/model.pb.go (about)

     1  // Copyright 2025 Google LLC
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by protoc-gen-go. DO NOT EDIT.
    16  // versions:
    17  // 	protoc-gen-go v1.35.2
    18  // 	protoc        v4.25.7
    19  // source: google/cloud/aiplatform/v1beta1/model.proto
    20  
    21  package aiplatformpb
    22  
    23  import (
    24  	_ "google.golang.org/genproto/googleapis/api/annotations"
    25  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    26  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    27  	durationpb "google.golang.org/protobuf/types/known/durationpb"
    28  	structpb "google.golang.org/protobuf/types/known/structpb"
    29  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    30  	reflect "reflect"
    31  	sync "sync"
    32  )
    33  
    34  const (
    35  	// Verify that this generated code is sufficiently up-to-date.
    36  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    37  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    38  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    39  )
    40  
    41  // Identifies a type of Model's prediction resources.
    42  type Model_DeploymentResourcesType int32
    43  
    44  const (
    45  	// Should not be used.
    46  	Model_DEPLOYMENT_RESOURCES_TYPE_UNSPECIFIED Model_DeploymentResourcesType = 0
    47  	// Resources that are dedicated to the
    48  	// [DeployedModel][google.cloud.aiplatform.v1beta1.DeployedModel], and that
    49  	// need a higher degree of manual configuration.
    50  	Model_DEDICATED_RESOURCES Model_DeploymentResourcesType = 1
    51  	// Resources that to large degree are decided by Vertex AI, and require
    52  	// only a modest additional configuration.
    53  	Model_AUTOMATIC_RESOURCES Model_DeploymentResourcesType = 2
    54  	// Resources that can be shared by multiple
    55  	// [DeployedModels][google.cloud.aiplatform.v1beta1.DeployedModel]. A
    56  	// pre-configured
    57  	// [DeploymentResourcePool][google.cloud.aiplatform.v1beta1.DeploymentResourcePool]
    58  	// is required.
    59  	Model_SHARED_RESOURCES Model_DeploymentResourcesType = 3
    60  )
    61  
    62  // Enum value maps for Model_DeploymentResourcesType.
    63  var (
    64  	Model_DeploymentResourcesType_name = map[int32]string{
    65  		0: "DEPLOYMENT_RESOURCES_TYPE_UNSPECIFIED",
    66  		1: "DEDICATED_RESOURCES",
    67  		2: "AUTOMATIC_RESOURCES",
    68  		3: "SHARED_RESOURCES",
    69  	}
    70  	Model_DeploymentResourcesType_value = map[string]int32{
    71  		"DEPLOYMENT_RESOURCES_TYPE_UNSPECIFIED": 0,
    72  		"DEDICATED_RESOURCES":                   1,
    73  		"AUTOMATIC_RESOURCES":                   2,
    74  		"SHARED_RESOURCES":                      3,
    75  	}
    76  )
    77  
    78  func (x Model_DeploymentResourcesType) Enum() *Model_DeploymentResourcesType {
    79  	p := new(Model_DeploymentResourcesType)
    80  	*p = x
    81  	return p
    82  }
    83  
    84  func (x Model_DeploymentResourcesType) String() string {
    85  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    86  }
    87  
    88  func (Model_DeploymentResourcesType) Descriptor() protoreflect.EnumDescriptor {
    89  	return file_google_cloud_aiplatform_v1beta1_model_proto_enumTypes[0].Descriptor()
    90  }
    91  
    92  func (Model_DeploymentResourcesType) Type() protoreflect.EnumType {
    93  	return &file_google_cloud_aiplatform_v1beta1_model_proto_enumTypes[0]
    94  }
    95  
    96  func (x Model_DeploymentResourcesType) Number() protoreflect.EnumNumber {
    97  	return protoreflect.EnumNumber(x)
    98  }
    99  
   100  // Deprecated: Use Model_DeploymentResourcesType.Descriptor instead.
   101  func (Model_DeploymentResourcesType) EnumDescriptor() ([]byte, []int) {
   102  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{0, 0}
   103  }
   104  
   105  // The Model content that can be exported.
   106  type Model_ExportFormat_ExportableContent int32
   107  
   108  const (
   109  	// Should not be used.
   110  	Model_ExportFormat_EXPORTABLE_CONTENT_UNSPECIFIED Model_ExportFormat_ExportableContent = 0
   111  	// Model artifact and any of its supported files. Will be exported to the
   112  	// location specified by the `artifactDestination` field of the
   113  	// [ExportModelRequest.output_config][google.cloud.aiplatform.v1beta1.ExportModelRequest.output_config]
   114  	// object.
   115  	Model_ExportFormat_ARTIFACT Model_ExportFormat_ExportableContent = 1
   116  	// The container image that is to be used when deploying this Model. Will
   117  	// be exported to the location specified by the `imageDestination` field
   118  	// of the
   119  	// [ExportModelRequest.output_config][google.cloud.aiplatform.v1beta1.ExportModelRequest.output_config]
   120  	// object.
   121  	Model_ExportFormat_IMAGE Model_ExportFormat_ExportableContent = 2
   122  )
   123  
   124  // Enum value maps for Model_ExportFormat_ExportableContent.
   125  var (
   126  	Model_ExportFormat_ExportableContent_name = map[int32]string{
   127  		0: "EXPORTABLE_CONTENT_UNSPECIFIED",
   128  		1: "ARTIFACT",
   129  		2: "IMAGE",
   130  	}
   131  	Model_ExportFormat_ExportableContent_value = map[string]int32{
   132  		"EXPORTABLE_CONTENT_UNSPECIFIED": 0,
   133  		"ARTIFACT":                       1,
   134  		"IMAGE":                          2,
   135  	}
   136  )
   137  
   138  func (x Model_ExportFormat_ExportableContent) Enum() *Model_ExportFormat_ExportableContent {
   139  	p := new(Model_ExportFormat_ExportableContent)
   140  	*p = x
   141  	return p
   142  }
   143  
   144  func (x Model_ExportFormat_ExportableContent) String() string {
   145  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   146  }
   147  
   148  func (Model_ExportFormat_ExportableContent) Descriptor() protoreflect.EnumDescriptor {
   149  	return file_google_cloud_aiplatform_v1beta1_model_proto_enumTypes[1].Descriptor()
   150  }
   151  
   152  func (Model_ExportFormat_ExportableContent) Type() protoreflect.EnumType {
   153  	return &file_google_cloud_aiplatform_v1beta1_model_proto_enumTypes[1]
   154  }
   155  
   156  func (x Model_ExportFormat_ExportableContent) Number() protoreflect.EnumNumber {
   157  	return protoreflect.EnumNumber(x)
   158  }
   159  
   160  // Deprecated: Use Model_ExportFormat_ExportableContent.Descriptor instead.
   161  func (Model_ExportFormat_ExportableContent) EnumDescriptor() ([]byte, []int) {
   162  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{0, 0, 0}
   163  }
   164  
   165  // Source of the model.
   166  // Different from `objective` field, this `ModelSourceType` enum
   167  // indicates the source from which the model was accessed or obtained,
   168  // whereas the `objective` indicates the overall aim or function of this
   169  // model.
   170  type ModelSourceInfo_ModelSourceType int32
   171  
   172  const (
   173  	// Should not be used.
   174  	ModelSourceInfo_MODEL_SOURCE_TYPE_UNSPECIFIED ModelSourceInfo_ModelSourceType = 0
   175  	// The Model is uploaded by automl training pipeline.
   176  	ModelSourceInfo_AUTOML ModelSourceInfo_ModelSourceType = 1
   177  	// The Model is uploaded by user or custom training pipeline.
   178  	ModelSourceInfo_CUSTOM ModelSourceInfo_ModelSourceType = 2
   179  	// The Model is registered and sync'ed from BigQuery ML.
   180  	ModelSourceInfo_BQML ModelSourceInfo_ModelSourceType = 3
   181  	// The Model is saved or tuned from Model Garden.
   182  	ModelSourceInfo_MODEL_GARDEN ModelSourceInfo_ModelSourceType = 4
   183  	// The Model is saved or tuned from Genie.
   184  	ModelSourceInfo_GENIE ModelSourceInfo_ModelSourceType = 5
   185  	// The Model is uploaded by text embedding finetuning pipeline.
   186  	ModelSourceInfo_CUSTOM_TEXT_EMBEDDING ModelSourceInfo_ModelSourceType = 6
   187  	// The Model is saved or tuned from Marketplace.
   188  	ModelSourceInfo_MARKETPLACE ModelSourceInfo_ModelSourceType = 7
   189  )
   190  
   191  // Enum value maps for ModelSourceInfo_ModelSourceType.
   192  var (
   193  	ModelSourceInfo_ModelSourceType_name = map[int32]string{
   194  		0: "MODEL_SOURCE_TYPE_UNSPECIFIED",
   195  		1: "AUTOML",
   196  		2: "CUSTOM",
   197  		3: "BQML",
   198  		4: "MODEL_GARDEN",
   199  		5: "GENIE",
   200  		6: "CUSTOM_TEXT_EMBEDDING",
   201  		7: "MARKETPLACE",
   202  	}
   203  	ModelSourceInfo_ModelSourceType_value = map[string]int32{
   204  		"MODEL_SOURCE_TYPE_UNSPECIFIED": 0,
   205  		"AUTOML":                        1,
   206  		"CUSTOM":                        2,
   207  		"BQML":                          3,
   208  		"MODEL_GARDEN":                  4,
   209  		"GENIE":                         5,
   210  		"CUSTOM_TEXT_EMBEDDING":         6,
   211  		"MARKETPLACE":                   7,
   212  	}
   213  )
   214  
   215  func (x ModelSourceInfo_ModelSourceType) Enum() *ModelSourceInfo_ModelSourceType {
   216  	p := new(ModelSourceInfo_ModelSourceType)
   217  	*p = x
   218  	return p
   219  }
   220  
   221  func (x ModelSourceInfo_ModelSourceType) String() string {
   222  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   223  }
   224  
   225  func (ModelSourceInfo_ModelSourceType) Descriptor() protoreflect.EnumDescriptor {
   226  	return file_google_cloud_aiplatform_v1beta1_model_proto_enumTypes[2].Descriptor()
   227  }
   228  
   229  func (ModelSourceInfo_ModelSourceType) Type() protoreflect.EnumType {
   230  	return &file_google_cloud_aiplatform_v1beta1_model_proto_enumTypes[2]
   231  }
   232  
   233  func (x ModelSourceInfo_ModelSourceType) Number() protoreflect.EnumNumber {
   234  	return protoreflect.EnumNumber(x)
   235  }
   236  
   237  // Deprecated: Use ModelSourceInfo_ModelSourceType.Descriptor instead.
   238  func (ModelSourceInfo_ModelSourceType) EnumDescriptor() ([]byte, []int) {
   239  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{7, 0}
   240  }
   241  
   242  // A trained machine learning Model.
   243  type Model struct {
   244  	state         protoimpl.MessageState
   245  	sizeCache     protoimpl.SizeCache
   246  	unknownFields protoimpl.UnknownFields
   247  
   248  	// The resource name of the Model.
   249  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   250  	// Output only. Immutable. The version ID of the model.
   251  	// A new version is committed when a new model version is uploaded or
   252  	// trained under an existing model id. It is an auto-incrementing decimal
   253  	// number in string representation.
   254  	VersionId string `protobuf:"bytes,28,opt,name=version_id,json=versionId,proto3" json:"version_id,omitempty"`
   255  	// User provided version aliases so that a model version can be referenced via
   256  	// alias (i.e.
   257  	// `projects/{project}/locations/{location}/models/{model_id}@{version_alias}`
   258  	// instead of auto-generated version id (i.e.
   259  	// `projects/{project}/locations/{location}/models/{model_id}@{version_id})`.
   260  	// The format is [a-z][a-zA-Z0-9-]{0,126}[a-z0-9] to distinguish from
   261  	// version_id. A default version alias will be created for the first version
   262  	// of the model, and there must be exactly one default version alias for a
   263  	// model.
   264  	VersionAliases []string `protobuf:"bytes,29,rep,name=version_aliases,json=versionAliases,proto3" json:"version_aliases,omitempty"`
   265  	// Output only. Timestamp when this version was created.
   266  	VersionCreateTime *timestamppb.Timestamp `protobuf:"bytes,31,opt,name=version_create_time,json=versionCreateTime,proto3" json:"version_create_time,omitempty"`
   267  	// Output only. Timestamp when this version was most recently updated.
   268  	VersionUpdateTime *timestamppb.Timestamp `protobuf:"bytes,32,opt,name=version_update_time,json=versionUpdateTime,proto3" json:"version_update_time,omitempty"`
   269  	// Required. The display name of the Model.
   270  	// The name can be up to 128 characters long and can consist of any UTF-8
   271  	// characters.
   272  	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
   273  	// The description of the Model.
   274  	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
   275  	// The description of this version.
   276  	VersionDescription string `protobuf:"bytes,30,opt,name=version_description,json=versionDescription,proto3" json:"version_description,omitempty"`
   277  	// The default checkpoint id of a model version.
   278  	DefaultCheckpointId string `protobuf:"bytes,53,opt,name=default_checkpoint_id,json=defaultCheckpointId,proto3" json:"default_checkpoint_id,omitempty"`
   279  	// The schemata that describe formats of the Model's predictions and
   280  	// explanations as given and returned via
   281  	// [PredictionService.Predict][google.cloud.aiplatform.v1beta1.PredictionService.Predict]
   282  	// and
   283  	// [PredictionService.Explain][google.cloud.aiplatform.v1beta1.PredictionService.Explain].
   284  	PredictSchemata *PredictSchemata `protobuf:"bytes,4,opt,name=predict_schemata,json=predictSchemata,proto3" json:"predict_schemata,omitempty"`
   285  	// Immutable. Points to a YAML file stored on Google Cloud Storage describing
   286  	// additional information about the Model, that is specific to it. Unset if
   287  	// the Model does not have any additional information. The schema is defined
   288  	// as an OpenAPI 3.0.2 [Schema
   289  	// Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject).
   290  	// AutoML Models always have this field populated by Vertex AI, if no
   291  	// additional metadata is needed, this field is set to an empty string.
   292  	// Note: The URI given on output will be immutable and probably different,
   293  	// including the URI scheme, than the one given on input. The output URI will
   294  	// point to a location where the user only has a read access.
   295  	MetadataSchemaUri string `protobuf:"bytes,5,opt,name=metadata_schema_uri,json=metadataSchemaUri,proto3" json:"metadata_schema_uri,omitempty"`
   296  	// Immutable. An additional information about the Model; the schema of the
   297  	// metadata can be found in
   298  	// [metadata_schema][google.cloud.aiplatform.v1beta1.Model.metadata_schema_uri].
   299  	// Unset if the Model does not have any additional information.
   300  	Metadata *structpb.Value `protobuf:"bytes,6,opt,name=metadata,proto3" json:"metadata,omitempty"`
   301  	// Output only. The formats in which this Model may be exported. If empty,
   302  	// this Model is not available for export.
   303  	SupportedExportFormats []*Model_ExportFormat `protobuf:"bytes,20,rep,name=supported_export_formats,json=supportedExportFormats,proto3" json:"supported_export_formats,omitempty"`
   304  	// Output only. The resource name of the TrainingPipeline that uploaded this
   305  	// Model, if any.
   306  	TrainingPipeline string `protobuf:"bytes,7,opt,name=training_pipeline,json=trainingPipeline,proto3" json:"training_pipeline,omitempty"`
   307  	// Input only. The specification of the container that is to be used when
   308  	// deploying this Model. The specification is ingested upon
   309  	// [ModelService.UploadModel][google.cloud.aiplatform.v1beta1.ModelService.UploadModel],
   310  	// and all binaries it contains are copied and stored internally by Vertex AI.
   311  	// Not required for AutoML Models.
   312  	ContainerSpec *ModelContainerSpec `protobuf:"bytes,9,opt,name=container_spec,json=containerSpec,proto3" json:"container_spec,omitempty"`
   313  	// Immutable. The path to the directory containing the Model artifact and any
   314  	// of its supporting files. Not required for AutoML Models.
   315  	ArtifactUri string `protobuf:"bytes,26,opt,name=artifact_uri,json=artifactUri,proto3" json:"artifact_uri,omitempty"`
   316  	// Output only. When this Model is deployed, its prediction resources are
   317  	// described by the `prediction_resources` field of the
   318  	// [Endpoint.deployed_models][google.cloud.aiplatform.v1beta1.Endpoint.deployed_models]
   319  	// object. Because not all Models support all resource configuration types,
   320  	// the configuration types this Model supports are listed here. If no
   321  	// configuration types are listed, the Model cannot be deployed to an
   322  	// [Endpoint][google.cloud.aiplatform.v1beta1.Endpoint] and does not support
   323  	// online predictions
   324  	// ([PredictionService.Predict][google.cloud.aiplatform.v1beta1.PredictionService.Predict]
   325  	// or
   326  	// [PredictionService.Explain][google.cloud.aiplatform.v1beta1.PredictionService.Explain]).
   327  	// Such a Model can serve predictions by using a
   328  	// [BatchPredictionJob][google.cloud.aiplatform.v1beta1.BatchPredictionJob],
   329  	// if it has at least one entry each in
   330  	// [supported_input_storage_formats][google.cloud.aiplatform.v1beta1.Model.supported_input_storage_formats]
   331  	// and
   332  	// [supported_output_storage_formats][google.cloud.aiplatform.v1beta1.Model.supported_output_storage_formats].
   333  	SupportedDeploymentResourcesTypes []Model_DeploymentResourcesType `protobuf:"varint,10,rep,packed,name=supported_deployment_resources_types,json=supportedDeploymentResourcesTypes,proto3,enum=google.cloud.aiplatform.v1beta1.Model_DeploymentResourcesType" json:"supported_deployment_resources_types,omitempty"`
   334  	// Output only. The formats this Model supports in
   335  	// [BatchPredictionJob.input_config][google.cloud.aiplatform.v1beta1.BatchPredictionJob.input_config].
   336  	// If
   337  	// [PredictSchemata.instance_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.instance_schema_uri]
   338  	// exists, the instances should be given as per that schema.
   339  	//
   340  	// The possible formats are:
   341  	//
   342  	// * `jsonl`
   343  	// The JSON Lines format, where each instance is a single line. Uses
   344  	// [GcsSource][google.cloud.aiplatform.v1beta1.BatchPredictionJob.InputConfig.gcs_source].
   345  	//
   346  	// * `csv`
   347  	// The CSV format, where each instance is a single comma-separated line.
   348  	// The first line in the file is the header, containing comma-separated field
   349  	// names. Uses
   350  	// [GcsSource][google.cloud.aiplatform.v1beta1.BatchPredictionJob.InputConfig.gcs_source].
   351  	//
   352  	// * `tf-record`
   353  	// The TFRecord format, where each instance is a single record in tfrecord
   354  	// syntax. Uses
   355  	// [GcsSource][google.cloud.aiplatform.v1beta1.BatchPredictionJob.InputConfig.gcs_source].
   356  	//
   357  	// * `tf-record-gzip`
   358  	// Similar to `tf-record`, but the file is gzipped. Uses
   359  	// [GcsSource][google.cloud.aiplatform.v1beta1.BatchPredictionJob.InputConfig.gcs_source].
   360  	//
   361  	// * `bigquery`
   362  	// Each instance is a single row in BigQuery. Uses
   363  	// [BigQuerySource][google.cloud.aiplatform.v1beta1.BatchPredictionJob.InputConfig.bigquery_source].
   364  	//
   365  	// * `file-list`
   366  	// Each line of the file is the location of an instance to process, uses
   367  	// `gcs_source` field of the
   368  	// [InputConfig][google.cloud.aiplatform.v1beta1.BatchPredictionJob.InputConfig]
   369  	// object.
   370  	//
   371  	// If this Model doesn't support any of these formats it means it cannot be
   372  	// used with a
   373  	// [BatchPredictionJob][google.cloud.aiplatform.v1beta1.BatchPredictionJob].
   374  	// However, if it has
   375  	// [supported_deployment_resources_types][google.cloud.aiplatform.v1beta1.Model.supported_deployment_resources_types],
   376  	// it could serve online predictions by using
   377  	// [PredictionService.Predict][google.cloud.aiplatform.v1beta1.PredictionService.Predict]
   378  	// or
   379  	// [PredictionService.Explain][google.cloud.aiplatform.v1beta1.PredictionService.Explain].
   380  	SupportedInputStorageFormats []string `protobuf:"bytes,11,rep,name=supported_input_storage_formats,json=supportedInputStorageFormats,proto3" json:"supported_input_storage_formats,omitempty"`
   381  	// Output only. The formats this Model supports in
   382  	// [BatchPredictionJob.output_config][google.cloud.aiplatform.v1beta1.BatchPredictionJob.output_config].
   383  	// If both
   384  	// [PredictSchemata.instance_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.instance_schema_uri]
   385  	// and
   386  	// [PredictSchemata.prediction_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.prediction_schema_uri]
   387  	// exist, the predictions are returned together with their instances. In other
   388  	// words, the prediction has the original instance data first, followed by the
   389  	// actual prediction content (as per the schema).
   390  	//
   391  	// The possible formats are:
   392  	//
   393  	// * `jsonl`
   394  	// The JSON Lines format, where each prediction is a single line. Uses
   395  	// [GcsDestination][google.cloud.aiplatform.v1beta1.BatchPredictionJob.OutputConfig.gcs_destination].
   396  	//
   397  	// * `csv`
   398  	// The CSV format, where each prediction is a single comma-separated line.
   399  	// The first line in the file is the header, containing comma-separated field
   400  	// names. Uses
   401  	// [GcsDestination][google.cloud.aiplatform.v1beta1.BatchPredictionJob.OutputConfig.gcs_destination].
   402  	//
   403  	// * `bigquery`
   404  	// Each prediction is a single row in a BigQuery table, uses
   405  	// [BigQueryDestination][google.cloud.aiplatform.v1beta1.BatchPredictionJob.OutputConfig.bigquery_destination]
   406  	// .
   407  	//
   408  	// If this Model doesn't support any of these formats it means it cannot be
   409  	// used with a
   410  	// [BatchPredictionJob][google.cloud.aiplatform.v1beta1.BatchPredictionJob].
   411  	// However, if it has
   412  	// [supported_deployment_resources_types][google.cloud.aiplatform.v1beta1.Model.supported_deployment_resources_types],
   413  	// it could serve online predictions by using
   414  	// [PredictionService.Predict][google.cloud.aiplatform.v1beta1.PredictionService.Predict]
   415  	// or
   416  	// [PredictionService.Explain][google.cloud.aiplatform.v1beta1.PredictionService.Explain].
   417  	SupportedOutputStorageFormats []string `protobuf:"bytes,12,rep,name=supported_output_storage_formats,json=supportedOutputStorageFormats,proto3" json:"supported_output_storage_formats,omitempty"`
   418  	// Output only. Timestamp when this Model was uploaded into Vertex AI.
   419  	CreateTime *timestamppb.Timestamp `protobuf:"bytes,13,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
   420  	// Output only. Timestamp when this Model was most recently updated.
   421  	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,14,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
   422  	// Output only. The pointers to DeployedModels created from this Model. Note
   423  	// that Model could have been deployed to Endpoints in different Locations.
   424  	DeployedModels []*DeployedModelRef `protobuf:"bytes,15,rep,name=deployed_models,json=deployedModels,proto3" json:"deployed_models,omitempty"`
   425  	// The default explanation specification for this Model.
   426  	//
   427  	// The Model can be used for
   428  	// [requesting
   429  	// explanation][google.cloud.aiplatform.v1beta1.PredictionService.Explain]
   430  	// after being
   431  	// [deployed][google.cloud.aiplatform.v1beta1.EndpointService.DeployModel] if
   432  	// it is populated. The Model can be used for [batch
   433  	// explanation][google.cloud.aiplatform.v1beta1.BatchPredictionJob.generate_explanation]
   434  	// if it is populated.
   435  	//
   436  	// All fields of the explanation_spec can be overridden by
   437  	// [explanation_spec][google.cloud.aiplatform.v1beta1.DeployedModel.explanation_spec]
   438  	// of
   439  	// [DeployModelRequest.deployed_model][google.cloud.aiplatform.v1beta1.DeployModelRequest.deployed_model],
   440  	// or
   441  	// [explanation_spec][google.cloud.aiplatform.v1beta1.BatchPredictionJob.explanation_spec]
   442  	// of
   443  	// [BatchPredictionJob][google.cloud.aiplatform.v1beta1.BatchPredictionJob].
   444  	//
   445  	// If the default explanation specification is not set for this Model, this
   446  	// Model can still be used for
   447  	// [requesting
   448  	// explanation][google.cloud.aiplatform.v1beta1.PredictionService.Explain] by
   449  	// setting
   450  	// [explanation_spec][google.cloud.aiplatform.v1beta1.DeployedModel.explanation_spec]
   451  	// of
   452  	// [DeployModelRequest.deployed_model][google.cloud.aiplatform.v1beta1.DeployModelRequest.deployed_model]
   453  	// and for [batch
   454  	// explanation][google.cloud.aiplatform.v1beta1.BatchPredictionJob.generate_explanation]
   455  	// by setting
   456  	// [explanation_spec][google.cloud.aiplatform.v1beta1.BatchPredictionJob.explanation_spec]
   457  	// of
   458  	// [BatchPredictionJob][google.cloud.aiplatform.v1beta1.BatchPredictionJob].
   459  	ExplanationSpec *ExplanationSpec `protobuf:"bytes,23,opt,name=explanation_spec,json=explanationSpec,proto3" json:"explanation_spec,omitempty"`
   460  	// Used to perform consistent read-modify-write updates. If not set, a blind
   461  	// "overwrite" update happens.
   462  	Etag string `protobuf:"bytes,16,opt,name=etag,proto3" json:"etag,omitempty"`
   463  	// The labels with user-defined metadata to organize your Models.
   464  	//
   465  	// Label keys and values can be no longer than 64 characters
   466  	// (Unicode codepoints), can only contain lowercase letters, numeric
   467  	// characters, underscores and dashes. International characters are allowed.
   468  	//
   469  	// See https://goo.gl/xmQnxf for more information and examples of labels.
   470  	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"`
   471  	// Customer-managed encryption key spec for a Model. If set, this
   472  	// Model and all sub-resources of this Model will be secured by this key.
   473  	EncryptionSpec *EncryptionSpec `protobuf:"bytes,24,opt,name=encryption_spec,json=encryptionSpec,proto3" json:"encryption_spec,omitempty"`
   474  	// Output only. Source of a model. It can either be automl training pipeline,
   475  	// custom training pipeline, BigQuery ML, or saved and tuned from Genie or
   476  	// Model Garden.
   477  	ModelSourceInfo *ModelSourceInfo `protobuf:"bytes,38,opt,name=model_source_info,json=modelSourceInfo,proto3" json:"model_source_info,omitempty"`
   478  	// Output only. If this Model is a copy of another Model, this contains info
   479  	// about the original.
   480  	OriginalModelInfo *Model_OriginalModelInfo `protobuf:"bytes,34,opt,name=original_model_info,json=originalModelInfo,proto3" json:"original_model_info,omitempty"`
   481  	// Output only. The resource name of the Artifact that was created in
   482  	// MetadataStore when creating the Model. The Artifact resource name pattern
   483  	// is
   484  	// `projects/{project}/locations/{location}/metadataStores/{metadata_store}/artifacts/{artifact}`.
   485  	MetadataArtifact string `protobuf:"bytes,44,opt,name=metadata_artifact,json=metadataArtifact,proto3" json:"metadata_artifact,omitempty"`
   486  	// Optional. User input field to specify the base model source. Currently it
   487  	// only supports specifing the Model Garden models and Genie models.
   488  	BaseModelSource *Model_BaseModelSource `protobuf:"bytes,50,opt,name=base_model_source,json=baseModelSource,proto3" json:"base_model_source,omitempty"`
   489  	// Output only. Reserved for future use.
   490  	SatisfiesPzs bool `protobuf:"varint,51,opt,name=satisfies_pzs,json=satisfiesPzs,proto3" json:"satisfies_pzs,omitempty"`
   491  	// Output only. Reserved for future use.
   492  	SatisfiesPzi bool `protobuf:"varint,52,opt,name=satisfies_pzi,json=satisfiesPzi,proto3" json:"satisfies_pzi,omitempty"`
   493  	// Optional. Output only. The checkpoints of the model.
   494  	Checkpoints []*Checkpoint `protobuf:"bytes,57,rep,name=checkpoints,proto3" json:"checkpoints,omitempty"`
   495  }
   496  
   497  func (x *Model) Reset() {
   498  	*x = Model{}
   499  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[0]
   500  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   501  	ms.StoreMessageInfo(mi)
   502  }
   503  
   504  func (x *Model) String() string {
   505  	return protoimpl.X.MessageStringOf(x)
   506  }
   507  
   508  func (*Model) ProtoMessage() {}
   509  
   510  func (x *Model) ProtoReflect() protoreflect.Message {
   511  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[0]
   512  	if x != nil {
   513  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   514  		if ms.LoadMessageInfo() == nil {
   515  			ms.StoreMessageInfo(mi)
   516  		}
   517  		return ms
   518  	}
   519  	return mi.MessageOf(x)
   520  }
   521  
   522  // Deprecated: Use Model.ProtoReflect.Descriptor instead.
   523  func (*Model) Descriptor() ([]byte, []int) {
   524  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{0}
   525  }
   526  
   527  func (x *Model) GetName() string {
   528  	if x != nil {
   529  		return x.Name
   530  	}
   531  	return ""
   532  }
   533  
   534  func (x *Model) GetVersionId() string {
   535  	if x != nil {
   536  		return x.VersionId
   537  	}
   538  	return ""
   539  }
   540  
   541  func (x *Model) GetVersionAliases() []string {
   542  	if x != nil {
   543  		return x.VersionAliases
   544  	}
   545  	return nil
   546  }
   547  
   548  func (x *Model) GetVersionCreateTime() *timestamppb.Timestamp {
   549  	if x != nil {
   550  		return x.VersionCreateTime
   551  	}
   552  	return nil
   553  }
   554  
   555  func (x *Model) GetVersionUpdateTime() *timestamppb.Timestamp {
   556  	if x != nil {
   557  		return x.VersionUpdateTime
   558  	}
   559  	return nil
   560  }
   561  
   562  func (x *Model) GetDisplayName() string {
   563  	if x != nil {
   564  		return x.DisplayName
   565  	}
   566  	return ""
   567  }
   568  
   569  func (x *Model) GetDescription() string {
   570  	if x != nil {
   571  		return x.Description
   572  	}
   573  	return ""
   574  }
   575  
   576  func (x *Model) GetVersionDescription() string {
   577  	if x != nil {
   578  		return x.VersionDescription
   579  	}
   580  	return ""
   581  }
   582  
   583  func (x *Model) GetDefaultCheckpointId() string {
   584  	if x != nil {
   585  		return x.DefaultCheckpointId
   586  	}
   587  	return ""
   588  }
   589  
   590  func (x *Model) GetPredictSchemata() *PredictSchemata {
   591  	if x != nil {
   592  		return x.PredictSchemata
   593  	}
   594  	return nil
   595  }
   596  
   597  func (x *Model) GetMetadataSchemaUri() string {
   598  	if x != nil {
   599  		return x.MetadataSchemaUri
   600  	}
   601  	return ""
   602  }
   603  
   604  func (x *Model) GetMetadata() *structpb.Value {
   605  	if x != nil {
   606  		return x.Metadata
   607  	}
   608  	return nil
   609  }
   610  
   611  func (x *Model) GetSupportedExportFormats() []*Model_ExportFormat {
   612  	if x != nil {
   613  		return x.SupportedExportFormats
   614  	}
   615  	return nil
   616  }
   617  
   618  func (x *Model) GetTrainingPipeline() string {
   619  	if x != nil {
   620  		return x.TrainingPipeline
   621  	}
   622  	return ""
   623  }
   624  
   625  func (x *Model) GetContainerSpec() *ModelContainerSpec {
   626  	if x != nil {
   627  		return x.ContainerSpec
   628  	}
   629  	return nil
   630  }
   631  
   632  func (x *Model) GetArtifactUri() string {
   633  	if x != nil {
   634  		return x.ArtifactUri
   635  	}
   636  	return ""
   637  }
   638  
   639  func (x *Model) GetSupportedDeploymentResourcesTypes() []Model_DeploymentResourcesType {
   640  	if x != nil {
   641  		return x.SupportedDeploymentResourcesTypes
   642  	}
   643  	return nil
   644  }
   645  
   646  func (x *Model) GetSupportedInputStorageFormats() []string {
   647  	if x != nil {
   648  		return x.SupportedInputStorageFormats
   649  	}
   650  	return nil
   651  }
   652  
   653  func (x *Model) GetSupportedOutputStorageFormats() []string {
   654  	if x != nil {
   655  		return x.SupportedOutputStorageFormats
   656  	}
   657  	return nil
   658  }
   659  
   660  func (x *Model) GetCreateTime() *timestamppb.Timestamp {
   661  	if x != nil {
   662  		return x.CreateTime
   663  	}
   664  	return nil
   665  }
   666  
   667  func (x *Model) GetUpdateTime() *timestamppb.Timestamp {
   668  	if x != nil {
   669  		return x.UpdateTime
   670  	}
   671  	return nil
   672  }
   673  
   674  func (x *Model) GetDeployedModels() []*DeployedModelRef {
   675  	if x != nil {
   676  		return x.DeployedModels
   677  	}
   678  	return nil
   679  }
   680  
   681  func (x *Model) GetExplanationSpec() *ExplanationSpec {
   682  	if x != nil {
   683  		return x.ExplanationSpec
   684  	}
   685  	return nil
   686  }
   687  
   688  func (x *Model) GetEtag() string {
   689  	if x != nil {
   690  		return x.Etag
   691  	}
   692  	return ""
   693  }
   694  
   695  func (x *Model) GetLabels() map[string]string {
   696  	if x != nil {
   697  		return x.Labels
   698  	}
   699  	return nil
   700  }
   701  
   702  func (x *Model) GetEncryptionSpec() *EncryptionSpec {
   703  	if x != nil {
   704  		return x.EncryptionSpec
   705  	}
   706  	return nil
   707  }
   708  
   709  func (x *Model) GetModelSourceInfo() *ModelSourceInfo {
   710  	if x != nil {
   711  		return x.ModelSourceInfo
   712  	}
   713  	return nil
   714  }
   715  
   716  func (x *Model) GetOriginalModelInfo() *Model_OriginalModelInfo {
   717  	if x != nil {
   718  		return x.OriginalModelInfo
   719  	}
   720  	return nil
   721  }
   722  
   723  func (x *Model) GetMetadataArtifact() string {
   724  	if x != nil {
   725  		return x.MetadataArtifact
   726  	}
   727  	return ""
   728  }
   729  
   730  func (x *Model) GetBaseModelSource() *Model_BaseModelSource {
   731  	if x != nil {
   732  		return x.BaseModelSource
   733  	}
   734  	return nil
   735  }
   736  
   737  func (x *Model) GetSatisfiesPzs() bool {
   738  	if x != nil {
   739  		return x.SatisfiesPzs
   740  	}
   741  	return false
   742  }
   743  
   744  func (x *Model) GetSatisfiesPzi() bool {
   745  	if x != nil {
   746  		return x.SatisfiesPzi
   747  	}
   748  	return false
   749  }
   750  
   751  func (x *Model) GetCheckpoints() []*Checkpoint {
   752  	if x != nil {
   753  		return x.Checkpoints
   754  	}
   755  	return nil
   756  }
   757  
   758  // Contains information about the Large Model.
   759  type LargeModelReference struct {
   760  	state         protoimpl.MessageState
   761  	sizeCache     protoimpl.SizeCache
   762  	unknownFields protoimpl.UnknownFields
   763  
   764  	// Required. The unique name of the large Foundation or pre-built model. Like
   765  	// "chat-bison", "text-bison". Or model name with version ID, like
   766  	// "chat-bison@001", "text-bison@005", etc.
   767  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   768  }
   769  
   770  func (x *LargeModelReference) Reset() {
   771  	*x = LargeModelReference{}
   772  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[1]
   773  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   774  	ms.StoreMessageInfo(mi)
   775  }
   776  
   777  func (x *LargeModelReference) String() string {
   778  	return protoimpl.X.MessageStringOf(x)
   779  }
   780  
   781  func (*LargeModelReference) ProtoMessage() {}
   782  
   783  func (x *LargeModelReference) ProtoReflect() protoreflect.Message {
   784  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[1]
   785  	if x != nil {
   786  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   787  		if ms.LoadMessageInfo() == nil {
   788  			ms.StoreMessageInfo(mi)
   789  		}
   790  		return ms
   791  	}
   792  	return mi.MessageOf(x)
   793  }
   794  
   795  // Deprecated: Use LargeModelReference.ProtoReflect.Descriptor instead.
   796  func (*LargeModelReference) Descriptor() ([]byte, []int) {
   797  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{1}
   798  }
   799  
   800  func (x *LargeModelReference) GetName() string {
   801  	if x != nil {
   802  		return x.Name
   803  	}
   804  	return ""
   805  }
   806  
   807  // Contains information about the source of the models generated from Model
   808  // Garden.
   809  type ModelGardenSource struct {
   810  	state         protoimpl.MessageState
   811  	sizeCache     protoimpl.SizeCache
   812  	unknownFields protoimpl.UnknownFields
   813  
   814  	// Required. The model garden source model resource name.
   815  	PublicModelName string `protobuf:"bytes,1,opt,name=public_model_name,json=publicModelName,proto3" json:"public_model_name,omitempty"`
   816  	// Optional. The model garden source model version ID.
   817  	VersionId string `protobuf:"bytes,3,opt,name=version_id,json=versionId,proto3" json:"version_id,omitempty"`
   818  	// Optional. Whether to avoid pulling the model from the HF cache.
   819  	SkipHfModelCache bool `protobuf:"varint,4,opt,name=skip_hf_model_cache,json=skipHfModelCache,proto3" json:"skip_hf_model_cache,omitempty"`
   820  }
   821  
   822  func (x *ModelGardenSource) Reset() {
   823  	*x = ModelGardenSource{}
   824  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[2]
   825  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   826  	ms.StoreMessageInfo(mi)
   827  }
   828  
   829  func (x *ModelGardenSource) String() string {
   830  	return protoimpl.X.MessageStringOf(x)
   831  }
   832  
   833  func (*ModelGardenSource) ProtoMessage() {}
   834  
   835  func (x *ModelGardenSource) ProtoReflect() protoreflect.Message {
   836  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[2]
   837  	if x != nil {
   838  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   839  		if ms.LoadMessageInfo() == nil {
   840  			ms.StoreMessageInfo(mi)
   841  		}
   842  		return ms
   843  	}
   844  	return mi.MessageOf(x)
   845  }
   846  
   847  // Deprecated: Use ModelGardenSource.ProtoReflect.Descriptor instead.
   848  func (*ModelGardenSource) Descriptor() ([]byte, []int) {
   849  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{2}
   850  }
   851  
   852  func (x *ModelGardenSource) GetPublicModelName() string {
   853  	if x != nil {
   854  		return x.PublicModelName
   855  	}
   856  	return ""
   857  }
   858  
   859  func (x *ModelGardenSource) GetVersionId() string {
   860  	if x != nil {
   861  		return x.VersionId
   862  	}
   863  	return ""
   864  }
   865  
   866  func (x *ModelGardenSource) GetSkipHfModelCache() bool {
   867  	if x != nil {
   868  		return x.SkipHfModelCache
   869  	}
   870  	return false
   871  }
   872  
   873  // Contains information about the source of the models generated from Generative
   874  // AI Studio.
   875  type GenieSource struct {
   876  	state         protoimpl.MessageState
   877  	sizeCache     protoimpl.SizeCache
   878  	unknownFields protoimpl.UnknownFields
   879  
   880  	// Required. The public base model URI.
   881  	BaseModelUri string `protobuf:"bytes,1,opt,name=base_model_uri,json=baseModelUri,proto3" json:"base_model_uri,omitempty"`
   882  }
   883  
   884  func (x *GenieSource) Reset() {
   885  	*x = GenieSource{}
   886  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[3]
   887  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   888  	ms.StoreMessageInfo(mi)
   889  }
   890  
   891  func (x *GenieSource) String() string {
   892  	return protoimpl.X.MessageStringOf(x)
   893  }
   894  
   895  func (*GenieSource) ProtoMessage() {}
   896  
   897  func (x *GenieSource) ProtoReflect() protoreflect.Message {
   898  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[3]
   899  	if x != nil {
   900  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   901  		if ms.LoadMessageInfo() == nil {
   902  			ms.StoreMessageInfo(mi)
   903  		}
   904  		return ms
   905  	}
   906  	return mi.MessageOf(x)
   907  }
   908  
   909  // Deprecated: Use GenieSource.ProtoReflect.Descriptor instead.
   910  func (*GenieSource) Descriptor() ([]byte, []int) {
   911  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{3}
   912  }
   913  
   914  func (x *GenieSource) GetBaseModelUri() string {
   915  	if x != nil {
   916  		return x.BaseModelUri
   917  	}
   918  	return ""
   919  }
   920  
   921  // Contains the schemata used in Model's predictions and explanations via
   922  // [PredictionService.Predict][google.cloud.aiplatform.v1beta1.PredictionService.Predict],
   923  // [PredictionService.Explain][google.cloud.aiplatform.v1beta1.PredictionService.Explain]
   924  // and [BatchPredictionJob][google.cloud.aiplatform.v1beta1.BatchPredictionJob].
   925  type PredictSchemata struct {
   926  	state         protoimpl.MessageState
   927  	sizeCache     protoimpl.SizeCache
   928  	unknownFields protoimpl.UnknownFields
   929  
   930  	// Immutable. Points to a YAML file stored on Google Cloud Storage describing
   931  	// the format of a single instance, which are used in
   932  	// [PredictRequest.instances][google.cloud.aiplatform.v1beta1.PredictRequest.instances],
   933  	// [ExplainRequest.instances][google.cloud.aiplatform.v1beta1.ExplainRequest.instances]
   934  	// and
   935  	// [BatchPredictionJob.input_config][google.cloud.aiplatform.v1beta1.BatchPredictionJob.input_config].
   936  	// The schema is defined as an OpenAPI 3.0.2 [Schema
   937  	// Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject).
   938  	// AutoML Models always have this field populated by Vertex AI.
   939  	// Note: The URI given on output will be immutable and probably different,
   940  	// including the URI scheme, than the one given on input. The output URI will
   941  	// point to a location where the user only has a read access.
   942  	InstanceSchemaUri string `protobuf:"bytes,1,opt,name=instance_schema_uri,json=instanceSchemaUri,proto3" json:"instance_schema_uri,omitempty"`
   943  	// Immutable. Points to a YAML file stored on Google Cloud Storage describing
   944  	// the parameters of prediction and explanation via
   945  	// [PredictRequest.parameters][google.cloud.aiplatform.v1beta1.PredictRequest.parameters],
   946  	// [ExplainRequest.parameters][google.cloud.aiplatform.v1beta1.ExplainRequest.parameters]
   947  	// and
   948  	// [BatchPredictionJob.model_parameters][google.cloud.aiplatform.v1beta1.BatchPredictionJob.model_parameters].
   949  	// The schema is defined as an OpenAPI 3.0.2 [Schema
   950  	// Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject).
   951  	// AutoML Models always have this field populated by Vertex AI, if no
   952  	// parameters are supported, then it is set to an empty string.
   953  	// Note: The URI given on output will be immutable and probably different,
   954  	// including the URI scheme, than the one given on input. The output URI will
   955  	// point to a location where the user only has a read access.
   956  	ParametersSchemaUri string `protobuf:"bytes,2,opt,name=parameters_schema_uri,json=parametersSchemaUri,proto3" json:"parameters_schema_uri,omitempty"`
   957  	// Immutable. Points to a YAML file stored on Google Cloud Storage describing
   958  	// the format of a single prediction produced by this Model, which are
   959  	// returned via
   960  	// [PredictResponse.predictions][google.cloud.aiplatform.v1beta1.PredictResponse.predictions],
   961  	// [ExplainResponse.explanations][google.cloud.aiplatform.v1beta1.ExplainResponse.explanations],
   962  	// and
   963  	// [BatchPredictionJob.output_config][google.cloud.aiplatform.v1beta1.BatchPredictionJob.output_config].
   964  	// The schema is defined as an OpenAPI 3.0.2 [Schema
   965  	// Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject).
   966  	// AutoML Models always have this field populated by Vertex AI.
   967  	// Note: The URI given on output will be immutable and probably different,
   968  	// including the URI scheme, than the one given on input. The output URI will
   969  	// point to a location where the user only has a read access.
   970  	PredictionSchemaUri string `protobuf:"bytes,3,opt,name=prediction_schema_uri,json=predictionSchemaUri,proto3" json:"prediction_schema_uri,omitempty"`
   971  }
   972  
   973  func (x *PredictSchemata) Reset() {
   974  	*x = PredictSchemata{}
   975  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[4]
   976  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   977  	ms.StoreMessageInfo(mi)
   978  }
   979  
   980  func (x *PredictSchemata) String() string {
   981  	return protoimpl.X.MessageStringOf(x)
   982  }
   983  
   984  func (*PredictSchemata) ProtoMessage() {}
   985  
   986  func (x *PredictSchemata) ProtoReflect() protoreflect.Message {
   987  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[4]
   988  	if x != nil {
   989  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   990  		if ms.LoadMessageInfo() == nil {
   991  			ms.StoreMessageInfo(mi)
   992  		}
   993  		return ms
   994  	}
   995  	return mi.MessageOf(x)
   996  }
   997  
   998  // Deprecated: Use PredictSchemata.ProtoReflect.Descriptor instead.
   999  func (*PredictSchemata) Descriptor() ([]byte, []int) {
  1000  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{4}
  1001  }
  1002  
  1003  func (x *PredictSchemata) GetInstanceSchemaUri() string {
  1004  	if x != nil {
  1005  		return x.InstanceSchemaUri
  1006  	}
  1007  	return ""
  1008  }
  1009  
  1010  func (x *PredictSchemata) GetParametersSchemaUri() string {
  1011  	if x != nil {
  1012  		return x.ParametersSchemaUri
  1013  	}
  1014  	return ""
  1015  }
  1016  
  1017  func (x *PredictSchemata) GetPredictionSchemaUri() string {
  1018  	if x != nil {
  1019  		return x.PredictionSchemaUri
  1020  	}
  1021  	return ""
  1022  }
  1023  
  1024  // Specification of a container for serving predictions. Some fields in this
  1025  // message correspond to fields in the [Kubernetes Container v1 core
  1026  // specification](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#container-v1-core).
  1027  type ModelContainerSpec struct {
  1028  	state         protoimpl.MessageState
  1029  	sizeCache     protoimpl.SizeCache
  1030  	unknownFields protoimpl.UnknownFields
  1031  
  1032  	// Required. Immutable. URI of the Docker image to be used as the custom
  1033  	// container for serving predictions. This URI must identify an image in
  1034  	// Artifact Registry or Container Registry. Learn more about the [container
  1035  	// publishing
  1036  	// requirements](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#publishing),
  1037  	// including permissions requirements for the Vertex AI Service Agent.
  1038  	//
  1039  	// The container image is ingested upon
  1040  	// [ModelService.UploadModel][google.cloud.aiplatform.v1beta1.ModelService.UploadModel],
  1041  	// stored internally, and this original path is afterwards not used.
  1042  	//
  1043  	// To learn about the requirements for the Docker image itself, see
  1044  	// [Custom container
  1045  	// requirements](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#).
  1046  	//
  1047  	// You can use the URI to one of Vertex AI's [pre-built container images for
  1048  	// prediction](https://cloud.google.com/vertex-ai/docs/predictions/pre-built-containers)
  1049  	// in this field.
  1050  	ImageUri string `protobuf:"bytes,1,opt,name=image_uri,json=imageUri,proto3" json:"image_uri,omitempty"`
  1051  	// Immutable. Specifies the command that runs when the container starts. This
  1052  	// overrides the container's
  1053  	// [ENTRYPOINT](https://docs.docker.com/engine/reference/builder/#entrypoint).
  1054  	// Specify this field as an array of executable and arguments, similar to a
  1055  	// Docker `ENTRYPOINT`'s "exec" form, not its "shell" form.
  1056  	//
  1057  	// If you do not specify this field, then the container's `ENTRYPOINT` runs,
  1058  	// in conjunction with the
  1059  	// [args][google.cloud.aiplatform.v1beta1.ModelContainerSpec.args] field or
  1060  	// the container's
  1061  	// [`CMD`](https://docs.docker.com/engine/reference/builder/#cmd), if either
  1062  	// exists. If this field is not specified and the container does not have an
  1063  	// `ENTRYPOINT`, then refer to the Docker documentation about [how `CMD` and
  1064  	// `ENTRYPOINT`
  1065  	// interact](https://docs.docker.com/engine/reference/builder/#understand-how-cmd-and-entrypoint-interact).
  1066  	//
  1067  	// If you specify this field, then you can also specify the `args` field to
  1068  	// provide additional arguments for this command. However, if you specify this
  1069  	// field, then the container's `CMD` is ignored. See the
  1070  	// [Kubernetes documentation about how the
  1071  	// `command` and `args` fields interact with a container's `ENTRYPOINT` and
  1072  	// `CMD`](https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#notes).
  1073  	//
  1074  	// In this field, you can reference [environment variables set by Vertex
  1075  	// AI](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables)
  1076  	// and environment variables set in the
  1077  	// [env][google.cloud.aiplatform.v1beta1.ModelContainerSpec.env] field. You
  1078  	// cannot reference environment variables set in the Docker image. In order
  1079  	// for environment variables to be expanded, reference them by using the
  1080  	// following syntax:
  1081  	// <code>$(<var>VARIABLE_NAME</var>)</code>
  1082  	// Note that this differs from Bash variable expansion, which does not use
  1083  	// parentheses. If a variable cannot be resolved, the reference in the input
  1084  	// string is used unchanged. To avoid variable expansion, you can escape this
  1085  	// syntax with `$$`; for example:
  1086  	// <code>$$(<var>VARIABLE_NAME</var>)</code>
  1087  	// This field corresponds to the `command` field of the Kubernetes Containers
  1088  	// [v1 core
  1089  	// API](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#container-v1-core).
  1090  	Command []string `protobuf:"bytes,2,rep,name=command,proto3" json:"command,omitempty"`
  1091  	// Immutable. Specifies arguments for the command that runs when the container
  1092  	// starts. This overrides the container's
  1093  	// [`CMD`](https://docs.docker.com/engine/reference/builder/#cmd). Specify
  1094  	// this field as an array of executable and arguments, similar to a Docker
  1095  	// `CMD`'s "default parameters" form.
  1096  	//
  1097  	// If you don't specify this field but do specify the
  1098  	// [command][google.cloud.aiplatform.v1beta1.ModelContainerSpec.command]
  1099  	// field, then the command from the `command` field runs without any
  1100  	// additional arguments. See the [Kubernetes documentation about how the
  1101  	// `command` and `args` fields interact with a container's `ENTRYPOINT` and
  1102  	// `CMD`](https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#notes).
  1103  	//
  1104  	// If you don't specify this field and don't specify the `command` field,
  1105  	// then the container's
  1106  	// [`ENTRYPOINT`](https://docs.docker.com/engine/reference/builder/#cmd) and
  1107  	// `CMD` determine what runs based on their default behavior. See the Docker
  1108  	// documentation about [how `CMD` and `ENTRYPOINT`
  1109  	// interact](https://docs.docker.com/engine/reference/builder/#understand-how-cmd-and-entrypoint-interact).
  1110  	//
  1111  	// In this field, you can reference [environment variables
  1112  	// set by Vertex
  1113  	// AI](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables)
  1114  	// and environment variables set in the
  1115  	// [env][google.cloud.aiplatform.v1beta1.ModelContainerSpec.env] field. You
  1116  	// cannot reference environment variables set in the Docker image. In order
  1117  	// for environment variables to be expanded, reference them by using the
  1118  	// following syntax:
  1119  	// <code>$(<var>VARIABLE_NAME</var>)</code>
  1120  	// Note that this differs from Bash variable expansion, which does not use
  1121  	// parentheses. If a variable cannot be resolved, the reference in the input
  1122  	// string is used unchanged. To avoid variable expansion, you can escape this
  1123  	// syntax with `$$`; for example:
  1124  	// <code>$$(<var>VARIABLE_NAME</var>)</code>
  1125  	// This field corresponds to the `args` field of the Kubernetes Containers
  1126  	// [v1 core
  1127  	// API](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#container-v1-core).
  1128  	Args []string `protobuf:"bytes,3,rep,name=args,proto3" json:"args,omitempty"`
  1129  	// Immutable. List of environment variables to set in the container. After the
  1130  	// container starts running, code running in the container can read these
  1131  	// environment variables.
  1132  	//
  1133  	// Additionally, the
  1134  	// [command][google.cloud.aiplatform.v1beta1.ModelContainerSpec.command] and
  1135  	// [args][google.cloud.aiplatform.v1beta1.ModelContainerSpec.args] fields can
  1136  	// reference these variables. Later entries in this list can also reference
  1137  	// earlier entries. For example, the following example sets the variable
  1138  	// `VAR_2` to have the value `foo bar`:
  1139  	//
  1140  	// ```json
  1141  	// [
  1142  	//
  1143  	//	{
  1144  	//	  "name": "VAR_1",
  1145  	//	  "value": "foo"
  1146  	//	},
  1147  	//	{
  1148  	//	  "name": "VAR_2",
  1149  	//	  "value": "$(VAR_1) bar"
  1150  	//	}
  1151  	//
  1152  	// ]
  1153  	// ```
  1154  	//
  1155  	// If you switch the order of the variables in the example, then the expansion
  1156  	// does not occur.
  1157  	//
  1158  	// This field corresponds to the `env` field of the Kubernetes Containers
  1159  	// [v1 core
  1160  	// API](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#container-v1-core).
  1161  	Env []*EnvVar `protobuf:"bytes,4,rep,name=env,proto3" json:"env,omitempty"`
  1162  	// Immutable. List of ports to expose from the container. Vertex AI sends any
  1163  	// prediction requests that it receives to the first port on this list. Vertex
  1164  	// AI also sends
  1165  	// [liveness and health
  1166  	// checks](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#liveness)
  1167  	// to this port.
  1168  	//
  1169  	// If you do not specify this field, it defaults to following value:
  1170  	//
  1171  	// ```json
  1172  	// [
  1173  	//
  1174  	//	{
  1175  	//	  "containerPort": 8080
  1176  	//	}
  1177  	//
  1178  	// ]
  1179  	// ```
  1180  	//
  1181  	// Vertex AI does not use ports other than the first one listed. This field
  1182  	// corresponds to the `ports` field of the Kubernetes Containers
  1183  	// [v1 core
  1184  	// API](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#container-v1-core).
  1185  	Ports []*Port `protobuf:"bytes,5,rep,name=ports,proto3" json:"ports,omitempty"`
  1186  	// Immutable. HTTP path on the container to send prediction requests to.
  1187  	// Vertex AI forwards requests sent using
  1188  	// [projects.locations.endpoints.predict][google.cloud.aiplatform.v1beta1.PredictionService.Predict]
  1189  	// to this path on the container's IP address and port. Vertex AI then returns
  1190  	// the container's response in the API response.
  1191  	//
  1192  	// For example, if you set this field to `/foo`, then when Vertex AI
  1193  	// receives a prediction request, it forwards the request body in a POST
  1194  	// request to the `/foo` path on the port of your container specified by the
  1195  	// first value of this `ModelContainerSpec`'s
  1196  	// [ports][google.cloud.aiplatform.v1beta1.ModelContainerSpec.ports] field.
  1197  	//
  1198  	// If you don't specify this field, it defaults to the following value when
  1199  	// you [deploy this Model to an
  1200  	// Endpoint][google.cloud.aiplatform.v1beta1.EndpointService.DeployModel]:
  1201  	// <code>/v1/endpoints/<var>ENDPOINT</var>/deployedModels/<var>DEPLOYED_MODEL</var>:predict</code>
  1202  	// The placeholders in this value are replaced as follows:
  1203  	//
  1204  	//   - <var>ENDPOINT</var>: The last segment (following `endpoints/`)of the
  1205  	//     Endpoint.name][] field of the Endpoint where this Model has been
  1206  	//     deployed. (Vertex AI makes this value available to your container code
  1207  	//     as the [`AIP_ENDPOINT_ID` environment
  1208  	//     variable](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables).)
  1209  	//
  1210  	// * <var>DEPLOYED_MODEL</var>:
  1211  	// [DeployedModel.id][google.cloud.aiplatform.v1beta1.DeployedModel.id] of the
  1212  	// `DeployedModel`.
  1213  	//
  1214  	//	(Vertex AI makes this value available to your container code
  1215  	//	as the [`AIP_DEPLOYED_MODEL_ID` environment
  1216  	//	variable](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables).)
  1217  	PredictRoute string `protobuf:"bytes,6,opt,name=predict_route,json=predictRoute,proto3" json:"predict_route,omitempty"`
  1218  	// Immutable. HTTP path on the container to send health checks to. Vertex AI
  1219  	// intermittently sends GET requests to this path on the container's IP
  1220  	// address and port to check that the container is healthy. Read more about
  1221  	// [health
  1222  	// checks](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#health).
  1223  	//
  1224  	// For example, if you set this field to `/bar`, then Vertex AI
  1225  	// intermittently sends a GET request to the `/bar` path on the port of your
  1226  	// container specified by the first value of this `ModelContainerSpec`'s
  1227  	// [ports][google.cloud.aiplatform.v1beta1.ModelContainerSpec.ports] field.
  1228  	//
  1229  	// If you don't specify this field, it defaults to the following value when
  1230  	// you [deploy this Model to an
  1231  	// Endpoint][google.cloud.aiplatform.v1beta1.EndpointService.DeployModel]:
  1232  	// <code>/v1/endpoints/<var>ENDPOINT</var>/deployedModels/<var>DEPLOYED_MODEL</var>:predict</code>
  1233  	// The placeholders in this value are replaced as follows:
  1234  	//
  1235  	//   - <var>ENDPOINT</var>: The last segment (following `endpoints/`)of the
  1236  	//     Endpoint.name][] field of the Endpoint where this Model has been
  1237  	//     deployed. (Vertex AI makes this value available to your container code
  1238  	//     as the [`AIP_ENDPOINT_ID` environment
  1239  	//     variable](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables).)
  1240  	//
  1241  	// * <var>DEPLOYED_MODEL</var>:
  1242  	// [DeployedModel.id][google.cloud.aiplatform.v1beta1.DeployedModel.id] of the
  1243  	// `DeployedModel`.
  1244  	//
  1245  	//	(Vertex AI makes this value available to your container code as the
  1246  	//	[`AIP_DEPLOYED_MODEL_ID` environment
  1247  	//	variable](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#aip-variables).)
  1248  	HealthRoute string `protobuf:"bytes,7,opt,name=health_route,json=healthRoute,proto3" json:"health_route,omitempty"`
  1249  	// Immutable. Invoke route prefix for the custom container. "/*" is the only
  1250  	// supported value right now. By setting this field, any non-root route on
  1251  	// this model will be accessible with [PredictionService.Invoke] eg:
  1252  	// "/invoke/foo/bar".
  1253  	//
  1254  	// Only one of `predict_route` or `invoke_route_prefix` can be set, and we
  1255  	// default to using `predict_route` if this field is not set. If this field
  1256  	// is set, the Model can only be deployed to dedicated endpoint.
  1257  	InvokeRoutePrefix string `protobuf:"bytes,15,opt,name=invoke_route_prefix,json=invokeRoutePrefix,proto3" json:"invoke_route_prefix,omitempty"`
  1258  	// Immutable. List of ports to expose from the container. Vertex AI sends gRPC
  1259  	// prediction requests that it receives to the first port on this list. Vertex
  1260  	// AI also sends liveness and health checks to this port.
  1261  	//
  1262  	// If you do not specify this field, gRPC requests to the container will be
  1263  	// disabled.
  1264  	//
  1265  	// Vertex AI does not use ports other than the first one listed. This field
  1266  	// corresponds to the `ports` field of the Kubernetes Containers v1 core API.
  1267  	GrpcPorts []*Port `protobuf:"bytes,9,rep,name=grpc_ports,json=grpcPorts,proto3" json:"grpc_ports,omitempty"`
  1268  	// Immutable. Deployment timeout.
  1269  	// Limit for deployment timeout is 2 hours.
  1270  	DeploymentTimeout *durationpb.Duration `protobuf:"bytes,10,opt,name=deployment_timeout,json=deploymentTimeout,proto3" json:"deployment_timeout,omitempty"`
  1271  	// Immutable. The amount of the VM memory to reserve as the shared memory for
  1272  	// the model in megabytes.
  1273  	SharedMemorySizeMb int64 `protobuf:"varint,11,opt,name=shared_memory_size_mb,json=sharedMemorySizeMb,proto3" json:"shared_memory_size_mb,omitempty"`
  1274  	// Immutable. Specification for Kubernetes startup probe.
  1275  	StartupProbe *Probe `protobuf:"bytes,12,opt,name=startup_probe,json=startupProbe,proto3" json:"startup_probe,omitempty"`
  1276  	// Immutable. Specification for Kubernetes readiness probe.
  1277  	HealthProbe *Probe `protobuf:"bytes,13,opt,name=health_probe,json=healthProbe,proto3" json:"health_probe,omitempty"`
  1278  	// Immutable. Specification for Kubernetes liveness probe.
  1279  	LivenessProbe *Probe `protobuf:"bytes,14,opt,name=liveness_probe,json=livenessProbe,proto3" json:"liveness_probe,omitempty"`
  1280  }
  1281  
  1282  func (x *ModelContainerSpec) Reset() {
  1283  	*x = ModelContainerSpec{}
  1284  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[5]
  1285  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1286  	ms.StoreMessageInfo(mi)
  1287  }
  1288  
  1289  func (x *ModelContainerSpec) String() string {
  1290  	return protoimpl.X.MessageStringOf(x)
  1291  }
  1292  
  1293  func (*ModelContainerSpec) ProtoMessage() {}
  1294  
  1295  func (x *ModelContainerSpec) ProtoReflect() protoreflect.Message {
  1296  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[5]
  1297  	if x != nil {
  1298  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1299  		if ms.LoadMessageInfo() == nil {
  1300  			ms.StoreMessageInfo(mi)
  1301  		}
  1302  		return ms
  1303  	}
  1304  	return mi.MessageOf(x)
  1305  }
  1306  
  1307  // Deprecated: Use ModelContainerSpec.ProtoReflect.Descriptor instead.
  1308  func (*ModelContainerSpec) Descriptor() ([]byte, []int) {
  1309  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{5}
  1310  }
  1311  
  1312  func (x *ModelContainerSpec) GetImageUri() string {
  1313  	if x != nil {
  1314  		return x.ImageUri
  1315  	}
  1316  	return ""
  1317  }
  1318  
  1319  func (x *ModelContainerSpec) GetCommand() []string {
  1320  	if x != nil {
  1321  		return x.Command
  1322  	}
  1323  	return nil
  1324  }
  1325  
  1326  func (x *ModelContainerSpec) GetArgs() []string {
  1327  	if x != nil {
  1328  		return x.Args
  1329  	}
  1330  	return nil
  1331  }
  1332  
  1333  func (x *ModelContainerSpec) GetEnv() []*EnvVar {
  1334  	if x != nil {
  1335  		return x.Env
  1336  	}
  1337  	return nil
  1338  }
  1339  
  1340  func (x *ModelContainerSpec) GetPorts() []*Port {
  1341  	if x != nil {
  1342  		return x.Ports
  1343  	}
  1344  	return nil
  1345  }
  1346  
  1347  func (x *ModelContainerSpec) GetPredictRoute() string {
  1348  	if x != nil {
  1349  		return x.PredictRoute
  1350  	}
  1351  	return ""
  1352  }
  1353  
  1354  func (x *ModelContainerSpec) GetHealthRoute() string {
  1355  	if x != nil {
  1356  		return x.HealthRoute
  1357  	}
  1358  	return ""
  1359  }
  1360  
  1361  func (x *ModelContainerSpec) GetInvokeRoutePrefix() string {
  1362  	if x != nil {
  1363  		return x.InvokeRoutePrefix
  1364  	}
  1365  	return ""
  1366  }
  1367  
  1368  func (x *ModelContainerSpec) GetGrpcPorts() []*Port {
  1369  	if x != nil {
  1370  		return x.GrpcPorts
  1371  	}
  1372  	return nil
  1373  }
  1374  
  1375  func (x *ModelContainerSpec) GetDeploymentTimeout() *durationpb.Duration {
  1376  	if x != nil {
  1377  		return x.DeploymentTimeout
  1378  	}
  1379  	return nil
  1380  }
  1381  
  1382  func (x *ModelContainerSpec) GetSharedMemorySizeMb() int64 {
  1383  	if x != nil {
  1384  		return x.SharedMemorySizeMb
  1385  	}
  1386  	return 0
  1387  }
  1388  
  1389  func (x *ModelContainerSpec) GetStartupProbe() *Probe {
  1390  	if x != nil {
  1391  		return x.StartupProbe
  1392  	}
  1393  	return nil
  1394  }
  1395  
  1396  func (x *ModelContainerSpec) GetHealthProbe() *Probe {
  1397  	if x != nil {
  1398  		return x.HealthProbe
  1399  	}
  1400  	return nil
  1401  }
  1402  
  1403  func (x *ModelContainerSpec) GetLivenessProbe() *Probe {
  1404  	if x != nil {
  1405  		return x.LivenessProbe
  1406  	}
  1407  	return nil
  1408  }
  1409  
  1410  // Represents a network port in a container.
  1411  type Port struct {
  1412  	state         protoimpl.MessageState
  1413  	sizeCache     protoimpl.SizeCache
  1414  	unknownFields protoimpl.UnknownFields
  1415  
  1416  	// The number of the port to expose on the pod's IP address.
  1417  	// Must be a valid port number, between 1 and 65535 inclusive.
  1418  	ContainerPort int32 `protobuf:"varint,3,opt,name=container_port,json=containerPort,proto3" json:"container_port,omitempty"`
  1419  }
  1420  
  1421  func (x *Port) Reset() {
  1422  	*x = Port{}
  1423  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[6]
  1424  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1425  	ms.StoreMessageInfo(mi)
  1426  }
  1427  
  1428  func (x *Port) String() string {
  1429  	return protoimpl.X.MessageStringOf(x)
  1430  }
  1431  
  1432  func (*Port) ProtoMessage() {}
  1433  
  1434  func (x *Port) ProtoReflect() protoreflect.Message {
  1435  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[6]
  1436  	if x != nil {
  1437  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1438  		if ms.LoadMessageInfo() == nil {
  1439  			ms.StoreMessageInfo(mi)
  1440  		}
  1441  		return ms
  1442  	}
  1443  	return mi.MessageOf(x)
  1444  }
  1445  
  1446  // Deprecated: Use Port.ProtoReflect.Descriptor instead.
  1447  func (*Port) Descriptor() ([]byte, []int) {
  1448  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{6}
  1449  }
  1450  
  1451  func (x *Port) GetContainerPort() int32 {
  1452  	if x != nil {
  1453  		return x.ContainerPort
  1454  	}
  1455  	return 0
  1456  }
  1457  
  1458  // Detail description of the source information of the model.
  1459  type ModelSourceInfo struct {
  1460  	state         protoimpl.MessageState
  1461  	sizeCache     protoimpl.SizeCache
  1462  	unknownFields protoimpl.UnknownFields
  1463  
  1464  	// Type of the model source.
  1465  	SourceType ModelSourceInfo_ModelSourceType `protobuf:"varint,1,opt,name=source_type,json=sourceType,proto3,enum=google.cloud.aiplatform.v1beta1.ModelSourceInfo_ModelSourceType" json:"source_type,omitempty"`
  1466  	// If this Model is copy of another Model. If true then
  1467  	// [source_type][google.cloud.aiplatform.v1beta1.ModelSourceInfo.source_type]
  1468  	// pertains to the original.
  1469  	Copy bool `protobuf:"varint,2,opt,name=copy,proto3" json:"copy,omitempty"`
  1470  }
  1471  
  1472  func (x *ModelSourceInfo) Reset() {
  1473  	*x = ModelSourceInfo{}
  1474  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[7]
  1475  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1476  	ms.StoreMessageInfo(mi)
  1477  }
  1478  
  1479  func (x *ModelSourceInfo) String() string {
  1480  	return protoimpl.X.MessageStringOf(x)
  1481  }
  1482  
  1483  func (*ModelSourceInfo) ProtoMessage() {}
  1484  
  1485  func (x *ModelSourceInfo) ProtoReflect() protoreflect.Message {
  1486  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[7]
  1487  	if x != nil {
  1488  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1489  		if ms.LoadMessageInfo() == nil {
  1490  			ms.StoreMessageInfo(mi)
  1491  		}
  1492  		return ms
  1493  	}
  1494  	return mi.MessageOf(x)
  1495  }
  1496  
  1497  // Deprecated: Use ModelSourceInfo.ProtoReflect.Descriptor instead.
  1498  func (*ModelSourceInfo) Descriptor() ([]byte, []int) {
  1499  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{7}
  1500  }
  1501  
  1502  func (x *ModelSourceInfo) GetSourceType() ModelSourceInfo_ModelSourceType {
  1503  	if x != nil {
  1504  		return x.SourceType
  1505  	}
  1506  	return ModelSourceInfo_MODEL_SOURCE_TYPE_UNSPECIFIED
  1507  }
  1508  
  1509  func (x *ModelSourceInfo) GetCopy() bool {
  1510  	if x != nil {
  1511  		return x.Copy
  1512  	}
  1513  	return false
  1514  }
  1515  
  1516  // Probe describes a health check to be performed against a container to
  1517  // determine whether it is alive or ready to receive traffic.
  1518  type Probe struct {
  1519  	state         protoimpl.MessageState
  1520  	sizeCache     protoimpl.SizeCache
  1521  	unknownFields protoimpl.UnknownFields
  1522  
  1523  	// Types that are assignable to ProbeType:
  1524  	//
  1525  	//	*Probe_Exec
  1526  	//	*Probe_HttpGet
  1527  	//	*Probe_Grpc
  1528  	//	*Probe_TcpSocket
  1529  	ProbeType isProbe_ProbeType `protobuf_oneof:"probe_type"`
  1530  	// How often (in seconds) to perform the probe. Default to 10 seconds.
  1531  	// Minimum value is 1. Must be less than timeout_seconds.
  1532  	//
  1533  	// Maps to Kubernetes probe argument 'periodSeconds'.
  1534  	PeriodSeconds int32 `protobuf:"varint,2,opt,name=period_seconds,json=periodSeconds,proto3" json:"period_seconds,omitempty"`
  1535  	// Number of seconds after which the probe times out. Defaults to 1 second.
  1536  	// Minimum value is 1. Must be greater or equal to period_seconds.
  1537  	//
  1538  	// Maps to Kubernetes probe argument 'timeoutSeconds'.
  1539  	TimeoutSeconds int32 `protobuf:"varint,3,opt,name=timeout_seconds,json=timeoutSeconds,proto3" json:"timeout_seconds,omitempty"`
  1540  	// Number of consecutive failures before the probe is considered failed.
  1541  	// Defaults to 3. Minimum value is 1.
  1542  	//
  1543  	// Maps to Kubernetes probe argument 'failureThreshold'.
  1544  	FailureThreshold int32 `protobuf:"varint,7,opt,name=failure_threshold,json=failureThreshold,proto3" json:"failure_threshold,omitempty"`
  1545  	// Number of consecutive successes before the probe is considered successful.
  1546  	// Defaults to 1. Minimum value is 1.
  1547  	//
  1548  	// Maps to Kubernetes probe argument 'successThreshold'.
  1549  	SuccessThreshold int32 `protobuf:"varint,8,opt,name=success_threshold,json=successThreshold,proto3" json:"success_threshold,omitempty"`
  1550  	// Number of seconds to wait before starting the probe. Defaults to 0.
  1551  	// Minimum value is 0.
  1552  	//
  1553  	// Maps to Kubernetes probe argument 'initialDelaySeconds'.
  1554  	InitialDelaySeconds int32 `protobuf:"varint,9,opt,name=initial_delay_seconds,json=initialDelaySeconds,proto3" json:"initial_delay_seconds,omitempty"`
  1555  }
  1556  
  1557  func (x *Probe) Reset() {
  1558  	*x = Probe{}
  1559  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[8]
  1560  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1561  	ms.StoreMessageInfo(mi)
  1562  }
  1563  
  1564  func (x *Probe) String() string {
  1565  	return protoimpl.X.MessageStringOf(x)
  1566  }
  1567  
  1568  func (*Probe) ProtoMessage() {}
  1569  
  1570  func (x *Probe) ProtoReflect() protoreflect.Message {
  1571  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[8]
  1572  	if x != nil {
  1573  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1574  		if ms.LoadMessageInfo() == nil {
  1575  			ms.StoreMessageInfo(mi)
  1576  		}
  1577  		return ms
  1578  	}
  1579  	return mi.MessageOf(x)
  1580  }
  1581  
  1582  // Deprecated: Use Probe.ProtoReflect.Descriptor instead.
  1583  func (*Probe) Descriptor() ([]byte, []int) {
  1584  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{8}
  1585  }
  1586  
  1587  func (m *Probe) GetProbeType() isProbe_ProbeType {
  1588  	if m != nil {
  1589  		return m.ProbeType
  1590  	}
  1591  	return nil
  1592  }
  1593  
  1594  func (x *Probe) GetExec() *Probe_ExecAction {
  1595  	if x, ok := x.GetProbeType().(*Probe_Exec); ok {
  1596  		return x.Exec
  1597  	}
  1598  	return nil
  1599  }
  1600  
  1601  func (x *Probe) GetHttpGet() *Probe_HttpGetAction {
  1602  	if x, ok := x.GetProbeType().(*Probe_HttpGet); ok {
  1603  		return x.HttpGet
  1604  	}
  1605  	return nil
  1606  }
  1607  
  1608  func (x *Probe) GetGrpc() *Probe_GrpcAction {
  1609  	if x, ok := x.GetProbeType().(*Probe_Grpc); ok {
  1610  		return x.Grpc
  1611  	}
  1612  	return nil
  1613  }
  1614  
  1615  func (x *Probe) GetTcpSocket() *Probe_TcpSocketAction {
  1616  	if x, ok := x.GetProbeType().(*Probe_TcpSocket); ok {
  1617  		return x.TcpSocket
  1618  	}
  1619  	return nil
  1620  }
  1621  
  1622  func (x *Probe) GetPeriodSeconds() int32 {
  1623  	if x != nil {
  1624  		return x.PeriodSeconds
  1625  	}
  1626  	return 0
  1627  }
  1628  
  1629  func (x *Probe) GetTimeoutSeconds() int32 {
  1630  	if x != nil {
  1631  		return x.TimeoutSeconds
  1632  	}
  1633  	return 0
  1634  }
  1635  
  1636  func (x *Probe) GetFailureThreshold() int32 {
  1637  	if x != nil {
  1638  		return x.FailureThreshold
  1639  	}
  1640  	return 0
  1641  }
  1642  
  1643  func (x *Probe) GetSuccessThreshold() int32 {
  1644  	if x != nil {
  1645  		return x.SuccessThreshold
  1646  	}
  1647  	return 0
  1648  }
  1649  
  1650  func (x *Probe) GetInitialDelaySeconds() int32 {
  1651  	if x != nil {
  1652  		return x.InitialDelaySeconds
  1653  	}
  1654  	return 0
  1655  }
  1656  
  1657  type isProbe_ProbeType interface {
  1658  	isProbe_ProbeType()
  1659  }
  1660  
  1661  type Probe_Exec struct {
  1662  	// ExecAction probes the health of a container by executing a command.
  1663  	Exec *Probe_ExecAction `protobuf:"bytes,1,opt,name=exec,proto3,oneof"`
  1664  }
  1665  
  1666  type Probe_HttpGet struct {
  1667  	// HttpGetAction probes the health of a container by sending an HTTP GET
  1668  	// request.
  1669  	HttpGet *Probe_HttpGetAction `protobuf:"bytes,4,opt,name=http_get,json=httpGet,proto3,oneof"`
  1670  }
  1671  
  1672  type Probe_Grpc struct {
  1673  	// GrpcAction probes the health of a container by sending a gRPC request.
  1674  	Grpc *Probe_GrpcAction `protobuf:"bytes,5,opt,name=grpc,proto3,oneof"`
  1675  }
  1676  
  1677  type Probe_TcpSocket struct {
  1678  	// TcpSocketAction probes the health of a container by opening a TCP socket
  1679  	// connection.
  1680  	TcpSocket *Probe_TcpSocketAction `protobuf:"bytes,6,opt,name=tcp_socket,json=tcpSocket,proto3,oneof"`
  1681  }
  1682  
  1683  func (*Probe_Exec) isProbe_ProbeType() {}
  1684  
  1685  func (*Probe_HttpGet) isProbe_ProbeType() {}
  1686  
  1687  func (*Probe_Grpc) isProbe_ProbeType() {}
  1688  
  1689  func (*Probe_TcpSocket) isProbe_ProbeType() {}
  1690  
  1691  // Describes the machine learning model version checkpoint.
  1692  type Checkpoint struct {
  1693  	state         protoimpl.MessageState
  1694  	sizeCache     protoimpl.SizeCache
  1695  	unknownFields protoimpl.UnknownFields
  1696  
  1697  	// The ID of the checkpoint.
  1698  	CheckpointId string `protobuf:"bytes,1,opt,name=checkpoint_id,json=checkpointId,proto3" json:"checkpoint_id,omitempty"`
  1699  	// The epoch of the checkpoint.
  1700  	Epoch int64 `protobuf:"varint,2,opt,name=epoch,proto3" json:"epoch,omitempty"`
  1701  	// The step of the checkpoint.
  1702  	Step int64 `protobuf:"varint,3,opt,name=step,proto3" json:"step,omitempty"`
  1703  }
  1704  
  1705  func (x *Checkpoint) Reset() {
  1706  	*x = Checkpoint{}
  1707  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[9]
  1708  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1709  	ms.StoreMessageInfo(mi)
  1710  }
  1711  
  1712  func (x *Checkpoint) String() string {
  1713  	return protoimpl.X.MessageStringOf(x)
  1714  }
  1715  
  1716  func (*Checkpoint) ProtoMessage() {}
  1717  
  1718  func (x *Checkpoint) ProtoReflect() protoreflect.Message {
  1719  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[9]
  1720  	if x != nil {
  1721  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1722  		if ms.LoadMessageInfo() == nil {
  1723  			ms.StoreMessageInfo(mi)
  1724  		}
  1725  		return ms
  1726  	}
  1727  	return mi.MessageOf(x)
  1728  }
  1729  
  1730  // Deprecated: Use Checkpoint.ProtoReflect.Descriptor instead.
  1731  func (*Checkpoint) Descriptor() ([]byte, []int) {
  1732  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{9}
  1733  }
  1734  
  1735  func (x *Checkpoint) GetCheckpointId() string {
  1736  	if x != nil {
  1737  		return x.CheckpointId
  1738  	}
  1739  	return ""
  1740  }
  1741  
  1742  func (x *Checkpoint) GetEpoch() int64 {
  1743  	if x != nil {
  1744  		return x.Epoch
  1745  	}
  1746  	return 0
  1747  }
  1748  
  1749  func (x *Checkpoint) GetStep() int64 {
  1750  	if x != nil {
  1751  		return x.Step
  1752  	}
  1753  	return 0
  1754  }
  1755  
  1756  // Represents export format supported by the Model.
  1757  // All formats export to Google Cloud Storage.
  1758  type Model_ExportFormat struct {
  1759  	state         protoimpl.MessageState
  1760  	sizeCache     protoimpl.SizeCache
  1761  	unknownFields protoimpl.UnknownFields
  1762  
  1763  	// Output only. The ID of the export format.
  1764  	// The possible format IDs are:
  1765  	//
  1766  	// * `tflite`
  1767  	// Used for Android mobile devices.
  1768  	//
  1769  	// * `edgetpu-tflite`
  1770  	// Used for [Edge TPU](https://cloud.google.com/edge-tpu/) devices.
  1771  	//
  1772  	// * `tf-saved-model`
  1773  	// A tensorflow model in SavedModel format.
  1774  	//
  1775  	// * `tf-js`
  1776  	// A [TensorFlow.js](https://www.tensorflow.org/js) model that can be used
  1777  	// in the browser and in Node.js using JavaScript.
  1778  	//
  1779  	// * `core-ml`
  1780  	// Used for iOS mobile devices.
  1781  	//
  1782  	// * `custom-trained`
  1783  	// A Model that was uploaded or trained by custom code.
  1784  	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
  1785  	// Output only. The content of this Model that may be exported.
  1786  	ExportableContents []Model_ExportFormat_ExportableContent `protobuf:"varint,2,rep,packed,name=exportable_contents,json=exportableContents,proto3,enum=google.cloud.aiplatform.v1beta1.Model_ExportFormat_ExportableContent" json:"exportable_contents,omitempty"`
  1787  }
  1788  
  1789  func (x *Model_ExportFormat) Reset() {
  1790  	*x = Model_ExportFormat{}
  1791  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[10]
  1792  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1793  	ms.StoreMessageInfo(mi)
  1794  }
  1795  
  1796  func (x *Model_ExportFormat) String() string {
  1797  	return protoimpl.X.MessageStringOf(x)
  1798  }
  1799  
  1800  func (*Model_ExportFormat) ProtoMessage() {}
  1801  
  1802  func (x *Model_ExportFormat) ProtoReflect() protoreflect.Message {
  1803  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[10]
  1804  	if x != nil {
  1805  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1806  		if ms.LoadMessageInfo() == nil {
  1807  			ms.StoreMessageInfo(mi)
  1808  		}
  1809  		return ms
  1810  	}
  1811  	return mi.MessageOf(x)
  1812  }
  1813  
  1814  // Deprecated: Use Model_ExportFormat.ProtoReflect.Descriptor instead.
  1815  func (*Model_ExportFormat) Descriptor() ([]byte, []int) {
  1816  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{0, 0}
  1817  }
  1818  
  1819  func (x *Model_ExportFormat) GetId() string {
  1820  	if x != nil {
  1821  		return x.Id
  1822  	}
  1823  	return ""
  1824  }
  1825  
  1826  func (x *Model_ExportFormat) GetExportableContents() []Model_ExportFormat_ExportableContent {
  1827  	if x != nil {
  1828  		return x.ExportableContents
  1829  	}
  1830  	return nil
  1831  }
  1832  
  1833  // Contains information about the original Model if this Model is a copy.
  1834  type Model_OriginalModelInfo struct {
  1835  	state         protoimpl.MessageState
  1836  	sizeCache     protoimpl.SizeCache
  1837  	unknownFields protoimpl.UnknownFields
  1838  
  1839  	// Output only. The resource name of the Model this Model is a copy of,
  1840  	// including the revision. Format:
  1841  	// `projects/{project}/locations/{location}/models/{model_id}@{version_id}`
  1842  	Model string `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"`
  1843  }
  1844  
  1845  func (x *Model_OriginalModelInfo) Reset() {
  1846  	*x = Model_OriginalModelInfo{}
  1847  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[11]
  1848  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1849  	ms.StoreMessageInfo(mi)
  1850  }
  1851  
  1852  func (x *Model_OriginalModelInfo) String() string {
  1853  	return protoimpl.X.MessageStringOf(x)
  1854  }
  1855  
  1856  func (*Model_OriginalModelInfo) ProtoMessage() {}
  1857  
  1858  func (x *Model_OriginalModelInfo) ProtoReflect() protoreflect.Message {
  1859  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[11]
  1860  	if x != nil {
  1861  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1862  		if ms.LoadMessageInfo() == nil {
  1863  			ms.StoreMessageInfo(mi)
  1864  		}
  1865  		return ms
  1866  	}
  1867  	return mi.MessageOf(x)
  1868  }
  1869  
  1870  // Deprecated: Use Model_OriginalModelInfo.ProtoReflect.Descriptor instead.
  1871  func (*Model_OriginalModelInfo) Descriptor() ([]byte, []int) {
  1872  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{0, 1}
  1873  }
  1874  
  1875  func (x *Model_OriginalModelInfo) GetModel() string {
  1876  	if x != nil {
  1877  		return x.Model
  1878  	}
  1879  	return ""
  1880  }
  1881  
  1882  // User input field to specify the base model source. Currently it only
  1883  // supports specifing the Model Garden models and Genie models.
  1884  type Model_BaseModelSource struct {
  1885  	state         protoimpl.MessageState
  1886  	sizeCache     protoimpl.SizeCache
  1887  	unknownFields protoimpl.UnknownFields
  1888  
  1889  	// Types that are assignable to Source:
  1890  	//
  1891  	//	*Model_BaseModelSource_ModelGardenSource
  1892  	//	*Model_BaseModelSource_GenieSource
  1893  	Source isModel_BaseModelSource_Source `protobuf_oneof:"source"`
  1894  }
  1895  
  1896  func (x *Model_BaseModelSource) Reset() {
  1897  	*x = Model_BaseModelSource{}
  1898  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[12]
  1899  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1900  	ms.StoreMessageInfo(mi)
  1901  }
  1902  
  1903  func (x *Model_BaseModelSource) String() string {
  1904  	return protoimpl.X.MessageStringOf(x)
  1905  }
  1906  
  1907  func (*Model_BaseModelSource) ProtoMessage() {}
  1908  
  1909  func (x *Model_BaseModelSource) ProtoReflect() protoreflect.Message {
  1910  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[12]
  1911  	if x != nil {
  1912  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1913  		if ms.LoadMessageInfo() == nil {
  1914  			ms.StoreMessageInfo(mi)
  1915  		}
  1916  		return ms
  1917  	}
  1918  	return mi.MessageOf(x)
  1919  }
  1920  
  1921  // Deprecated: Use Model_BaseModelSource.ProtoReflect.Descriptor instead.
  1922  func (*Model_BaseModelSource) Descriptor() ([]byte, []int) {
  1923  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{0, 2}
  1924  }
  1925  
  1926  func (m *Model_BaseModelSource) GetSource() isModel_BaseModelSource_Source {
  1927  	if m != nil {
  1928  		return m.Source
  1929  	}
  1930  	return nil
  1931  }
  1932  
  1933  func (x *Model_BaseModelSource) GetModelGardenSource() *ModelGardenSource {
  1934  	if x, ok := x.GetSource().(*Model_BaseModelSource_ModelGardenSource); ok {
  1935  		return x.ModelGardenSource
  1936  	}
  1937  	return nil
  1938  }
  1939  
  1940  func (x *Model_BaseModelSource) GetGenieSource() *GenieSource {
  1941  	if x, ok := x.GetSource().(*Model_BaseModelSource_GenieSource); ok {
  1942  		return x.GenieSource
  1943  	}
  1944  	return nil
  1945  }
  1946  
  1947  type isModel_BaseModelSource_Source interface {
  1948  	isModel_BaseModelSource_Source()
  1949  }
  1950  
  1951  type Model_BaseModelSource_ModelGardenSource struct {
  1952  	// Source information of Model Garden models.
  1953  	ModelGardenSource *ModelGardenSource `protobuf:"bytes,1,opt,name=model_garden_source,json=modelGardenSource,proto3,oneof"`
  1954  }
  1955  
  1956  type Model_BaseModelSource_GenieSource struct {
  1957  	// Information about the base model of Genie models.
  1958  	GenieSource *GenieSource `protobuf:"bytes,2,opt,name=genie_source,json=genieSource,proto3,oneof"`
  1959  }
  1960  
  1961  func (*Model_BaseModelSource_ModelGardenSource) isModel_BaseModelSource_Source() {}
  1962  
  1963  func (*Model_BaseModelSource_GenieSource) isModel_BaseModelSource_Source() {}
  1964  
  1965  // ExecAction specifies a command to execute.
  1966  type Probe_ExecAction struct {
  1967  	state         protoimpl.MessageState
  1968  	sizeCache     protoimpl.SizeCache
  1969  	unknownFields protoimpl.UnknownFields
  1970  
  1971  	// Command is the command line to execute inside the container, the working
  1972  	// directory for the command is root ('/') in the container's filesystem.
  1973  	// The command is simply exec'd, it is not run inside a shell, so
  1974  	// traditional shell instructions ('|', etc) won't work. To use a shell, you
  1975  	// need to explicitly call out to that shell. Exit status of 0 is treated as
  1976  	// live/healthy and non-zero is unhealthy.
  1977  	Command []string `protobuf:"bytes,1,rep,name=command,proto3" json:"command,omitempty"`
  1978  }
  1979  
  1980  func (x *Probe_ExecAction) Reset() {
  1981  	*x = Probe_ExecAction{}
  1982  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[14]
  1983  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1984  	ms.StoreMessageInfo(mi)
  1985  }
  1986  
  1987  func (x *Probe_ExecAction) String() string {
  1988  	return protoimpl.X.MessageStringOf(x)
  1989  }
  1990  
  1991  func (*Probe_ExecAction) ProtoMessage() {}
  1992  
  1993  func (x *Probe_ExecAction) ProtoReflect() protoreflect.Message {
  1994  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[14]
  1995  	if x != nil {
  1996  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1997  		if ms.LoadMessageInfo() == nil {
  1998  			ms.StoreMessageInfo(mi)
  1999  		}
  2000  		return ms
  2001  	}
  2002  	return mi.MessageOf(x)
  2003  }
  2004  
  2005  // Deprecated: Use Probe_ExecAction.ProtoReflect.Descriptor instead.
  2006  func (*Probe_ExecAction) Descriptor() ([]byte, []int) {
  2007  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{8, 0}
  2008  }
  2009  
  2010  func (x *Probe_ExecAction) GetCommand() []string {
  2011  	if x != nil {
  2012  		return x.Command
  2013  	}
  2014  	return nil
  2015  }
  2016  
  2017  // HttpGetAction describes an action based on HTTP Get requests.
  2018  type Probe_HttpGetAction struct {
  2019  	state         protoimpl.MessageState
  2020  	sizeCache     protoimpl.SizeCache
  2021  	unknownFields protoimpl.UnknownFields
  2022  
  2023  	// Path to access on the HTTP server.
  2024  	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
  2025  	// Number of the port to access on the container.
  2026  	// Number must be in the range 1 to 65535.
  2027  	Port int32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
  2028  	// Host name to connect to, defaults to the model serving container's IP.
  2029  	// You probably want to set "Host" in httpHeaders instead.
  2030  	Host string `protobuf:"bytes,3,opt,name=host,proto3" json:"host,omitempty"`
  2031  	// Scheme to use for connecting to the host.
  2032  	// Defaults to HTTP. Acceptable values are "HTTP" or "HTTPS".
  2033  	Scheme string `protobuf:"bytes,4,opt,name=scheme,proto3" json:"scheme,omitempty"`
  2034  	// Custom headers to set in the request. HTTP allows repeated headers.
  2035  	HttpHeaders []*Probe_HttpHeader `protobuf:"bytes,5,rep,name=http_headers,json=httpHeaders,proto3" json:"http_headers,omitempty"`
  2036  }
  2037  
  2038  func (x *Probe_HttpGetAction) Reset() {
  2039  	*x = Probe_HttpGetAction{}
  2040  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[15]
  2041  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2042  	ms.StoreMessageInfo(mi)
  2043  }
  2044  
  2045  func (x *Probe_HttpGetAction) String() string {
  2046  	return protoimpl.X.MessageStringOf(x)
  2047  }
  2048  
  2049  func (*Probe_HttpGetAction) ProtoMessage() {}
  2050  
  2051  func (x *Probe_HttpGetAction) ProtoReflect() protoreflect.Message {
  2052  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[15]
  2053  	if x != nil {
  2054  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2055  		if ms.LoadMessageInfo() == nil {
  2056  			ms.StoreMessageInfo(mi)
  2057  		}
  2058  		return ms
  2059  	}
  2060  	return mi.MessageOf(x)
  2061  }
  2062  
  2063  // Deprecated: Use Probe_HttpGetAction.ProtoReflect.Descriptor instead.
  2064  func (*Probe_HttpGetAction) Descriptor() ([]byte, []int) {
  2065  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{8, 1}
  2066  }
  2067  
  2068  func (x *Probe_HttpGetAction) GetPath() string {
  2069  	if x != nil {
  2070  		return x.Path
  2071  	}
  2072  	return ""
  2073  }
  2074  
  2075  func (x *Probe_HttpGetAction) GetPort() int32 {
  2076  	if x != nil {
  2077  		return x.Port
  2078  	}
  2079  	return 0
  2080  }
  2081  
  2082  func (x *Probe_HttpGetAction) GetHost() string {
  2083  	if x != nil {
  2084  		return x.Host
  2085  	}
  2086  	return ""
  2087  }
  2088  
  2089  func (x *Probe_HttpGetAction) GetScheme() string {
  2090  	if x != nil {
  2091  		return x.Scheme
  2092  	}
  2093  	return ""
  2094  }
  2095  
  2096  func (x *Probe_HttpGetAction) GetHttpHeaders() []*Probe_HttpHeader {
  2097  	if x != nil {
  2098  		return x.HttpHeaders
  2099  	}
  2100  	return nil
  2101  }
  2102  
  2103  // GrpcAction checks the health of a container using a gRPC service.
  2104  type Probe_GrpcAction struct {
  2105  	state         protoimpl.MessageState
  2106  	sizeCache     protoimpl.SizeCache
  2107  	unknownFields protoimpl.UnknownFields
  2108  
  2109  	// Port number of the gRPC service. Number must be in the range 1 to 65535.
  2110  	Port int32 `protobuf:"varint,1,opt,name=port,proto3" json:"port,omitempty"`
  2111  	// Service is the name of the service to place in the gRPC
  2112  	// HealthCheckRequest (see
  2113  	// https://github.com/grpc/grpc/blob/master/doc/health-checking.md).
  2114  	//
  2115  	// If this is not specified, the default behavior is defined by gRPC.
  2116  	Service string `protobuf:"bytes,2,opt,name=service,proto3" json:"service,omitempty"`
  2117  }
  2118  
  2119  func (x *Probe_GrpcAction) Reset() {
  2120  	*x = Probe_GrpcAction{}
  2121  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[16]
  2122  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2123  	ms.StoreMessageInfo(mi)
  2124  }
  2125  
  2126  func (x *Probe_GrpcAction) String() string {
  2127  	return protoimpl.X.MessageStringOf(x)
  2128  }
  2129  
  2130  func (*Probe_GrpcAction) ProtoMessage() {}
  2131  
  2132  func (x *Probe_GrpcAction) ProtoReflect() protoreflect.Message {
  2133  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[16]
  2134  	if x != nil {
  2135  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2136  		if ms.LoadMessageInfo() == nil {
  2137  			ms.StoreMessageInfo(mi)
  2138  		}
  2139  		return ms
  2140  	}
  2141  	return mi.MessageOf(x)
  2142  }
  2143  
  2144  // Deprecated: Use Probe_GrpcAction.ProtoReflect.Descriptor instead.
  2145  func (*Probe_GrpcAction) Descriptor() ([]byte, []int) {
  2146  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{8, 2}
  2147  }
  2148  
  2149  func (x *Probe_GrpcAction) GetPort() int32 {
  2150  	if x != nil {
  2151  		return x.Port
  2152  	}
  2153  	return 0
  2154  }
  2155  
  2156  func (x *Probe_GrpcAction) GetService() string {
  2157  	if x != nil {
  2158  		return x.Service
  2159  	}
  2160  	return ""
  2161  }
  2162  
  2163  // TcpSocketAction probes the health of a container by opening a TCP socket
  2164  // connection.
  2165  type Probe_TcpSocketAction struct {
  2166  	state         protoimpl.MessageState
  2167  	sizeCache     protoimpl.SizeCache
  2168  	unknownFields protoimpl.UnknownFields
  2169  
  2170  	// Number of the port to access on the container.
  2171  	// Number must be in the range 1 to 65535.
  2172  	Port int32 `protobuf:"varint,1,opt,name=port,proto3" json:"port,omitempty"`
  2173  	// Optional: Host name to connect to, defaults to the model serving
  2174  	// container's IP.
  2175  	Host string `protobuf:"bytes,2,opt,name=host,proto3" json:"host,omitempty"`
  2176  }
  2177  
  2178  func (x *Probe_TcpSocketAction) Reset() {
  2179  	*x = Probe_TcpSocketAction{}
  2180  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[17]
  2181  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2182  	ms.StoreMessageInfo(mi)
  2183  }
  2184  
  2185  func (x *Probe_TcpSocketAction) String() string {
  2186  	return protoimpl.X.MessageStringOf(x)
  2187  }
  2188  
  2189  func (*Probe_TcpSocketAction) ProtoMessage() {}
  2190  
  2191  func (x *Probe_TcpSocketAction) ProtoReflect() protoreflect.Message {
  2192  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[17]
  2193  	if x != nil {
  2194  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2195  		if ms.LoadMessageInfo() == nil {
  2196  			ms.StoreMessageInfo(mi)
  2197  		}
  2198  		return ms
  2199  	}
  2200  	return mi.MessageOf(x)
  2201  }
  2202  
  2203  // Deprecated: Use Probe_TcpSocketAction.ProtoReflect.Descriptor instead.
  2204  func (*Probe_TcpSocketAction) Descriptor() ([]byte, []int) {
  2205  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{8, 3}
  2206  }
  2207  
  2208  func (x *Probe_TcpSocketAction) GetPort() int32 {
  2209  	if x != nil {
  2210  		return x.Port
  2211  	}
  2212  	return 0
  2213  }
  2214  
  2215  func (x *Probe_TcpSocketAction) GetHost() string {
  2216  	if x != nil {
  2217  		return x.Host
  2218  	}
  2219  	return ""
  2220  }
  2221  
  2222  // HttpHeader describes a custom header to be used in HTTP probes
  2223  type Probe_HttpHeader struct {
  2224  	state         protoimpl.MessageState
  2225  	sizeCache     protoimpl.SizeCache
  2226  	unknownFields protoimpl.UnknownFields
  2227  
  2228  	// The header field name.
  2229  	// This will be canonicalized upon output, so case-variant names will be
  2230  	// understood as the same header.
  2231  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
  2232  	// The header field value
  2233  	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
  2234  }
  2235  
  2236  func (x *Probe_HttpHeader) Reset() {
  2237  	*x = Probe_HttpHeader{}
  2238  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[18]
  2239  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2240  	ms.StoreMessageInfo(mi)
  2241  }
  2242  
  2243  func (x *Probe_HttpHeader) String() string {
  2244  	return protoimpl.X.MessageStringOf(x)
  2245  }
  2246  
  2247  func (*Probe_HttpHeader) ProtoMessage() {}
  2248  
  2249  func (x *Probe_HttpHeader) ProtoReflect() protoreflect.Message {
  2250  	mi := &file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[18]
  2251  	if x != nil {
  2252  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2253  		if ms.LoadMessageInfo() == nil {
  2254  			ms.StoreMessageInfo(mi)
  2255  		}
  2256  		return ms
  2257  	}
  2258  	return mi.MessageOf(x)
  2259  }
  2260  
  2261  // Deprecated: Use Probe_HttpHeader.ProtoReflect.Descriptor instead.
  2262  func (*Probe_HttpHeader) Descriptor() ([]byte, []int) {
  2263  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP(), []int{8, 4}
  2264  }
  2265  
  2266  func (x *Probe_HttpHeader) GetName() string {
  2267  	if x != nil {
  2268  		return x.Name
  2269  	}
  2270  	return ""
  2271  }
  2272  
  2273  func (x *Probe_HttpHeader) GetValue() string {
  2274  	if x != nil {
  2275  		return x.Value
  2276  	}
  2277  	return ""
  2278  }
  2279  
  2280  var File_google_cloud_aiplatform_v1beta1_model_proto protoreflect.FileDescriptor
  2281  
  2282  var file_google_cloud_aiplatform_v1beta1_model_proto_rawDesc = []byte{
  2283  	0x0a, 0x2b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61,
  2284  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
  2285  	0x31, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67,
  2286  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  2287  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1f,
  2288  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64,
  2289  	0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
  2290  	0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f,
  2291  	0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x38, 0x67, 0x6f, 0x6f, 0x67,
  2292  	0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  2293  	0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x65, 0x70, 0x6c,
  2294  	0x6f, 0x79, 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x2e, 0x70,
  2295  	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x35, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f,
  2296  	0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31,
  2297  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e,
  2298  	0x5f, 0x73, 0x70, 0x65, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2d, 0x67, 0x6f, 0x6f,
  2299  	0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  2300  	0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x65, 0x6e, 0x76,
  2301  	0x5f, 0x76, 0x61, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x31, 0x67, 0x6f, 0x6f, 0x67,
  2302  	0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  2303  	0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x65, 0x78, 0x70, 0x6c,
  2304  	0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67,
  2305  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64,
  2306  	0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67,
  2307  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73,
  2308  	0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f,
  2309  	0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d,
  2310  	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf2, 0x18, 0x0a,
  2311  	0x05, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
  2312  	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0a, 0x76, 0x65,
  2313  	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06,
  2314  	0xe0, 0x41, 0x05, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49,
  2315  	0x64, 0x12, 0x27, 0x0a, 0x0f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x6c, 0x69,
  2316  	0x61, 0x73, 0x65, 0x73, 0x18, 0x1d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x76, 0x65, 0x72, 0x73,
  2317  	0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x69, 0x61, 0x73, 0x65, 0x73, 0x12, 0x4f, 0x0a, 0x13, 0x76, 0x65,
  2318  	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d,
  2319  	0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2320  	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
  2321  	0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
  2322  	0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x4f, 0x0a, 0x13, 0x76,
  2323  	0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69,
  2324  	0x6d, 0x65, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2325  	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73,
  2326  	0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x76, 0x65, 0x72, 0x73, 0x69,
  2327  	0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0c,
  2328  	0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
  2329  	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79,
  2330  	0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
  2331  	0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
  2332  	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x13, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
  2333  	0x6e, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x1e, 0x20,
  2334  	0x01, 0x28, 0x09, 0x52, 0x12, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x73, 0x63,
  2335  	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x64, 0x65, 0x66, 0x61, 0x75,
  2336  	0x6c, 0x74, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x69, 0x64,
  2337  	0x18, 0x35, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x43,
  2338  	0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x5b, 0x0a, 0x10, 0x70,
  2339  	0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x74, 0x61, 0x18,
  2340  	0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  2341  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e,
  2342  	0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x53,
  2343  	0x63, 0x68, 0x65, 0x6d, 0x61, 0x74, 0x61, 0x52, 0x0f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74,
  2344  	0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x74, 0x61, 0x12, 0x33, 0x0a, 0x13, 0x6d, 0x65, 0x74, 0x61,
  2345  	0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x75, 0x72, 0x69, 0x18,
  2346  	0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x11, 0x6d, 0x65, 0x74, 0x61,
  2347  	0x64, 0x61, 0x74, 0x61, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x55, 0x72, 0x69, 0x12, 0x37, 0x0a,
  2348  	0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32,
  2349  	0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
  2350  	0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x08, 0x6d, 0x65,
  2351  	0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x72, 0x0a, 0x18, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72,
  2352  	0x74, 0x65, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61,
  2353  	0x74, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2354  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
  2355  	0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c,
  2356  	0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x42, 0x03, 0xe0,
  2357  	0x41, 0x03, 0x52, 0x16, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x45, 0x78, 0x70,
  2358  	0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x12, 0x5f, 0x0a, 0x11, 0x74, 0x72,
  2359  	0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x18,
  2360  	0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x32, 0xe0, 0x41, 0x03, 0xfa, 0x41, 0x2c, 0x0a, 0x2a, 0x61,
  2361  	0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2362  	0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e,
  2363  	0x67, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x10, 0x74, 0x72, 0x61, 0x69, 0x6e,
  2364  	0x69, 0x6e, 0x67, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x5f, 0x0a, 0x0e, 0x63,
  2365  	0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x09, 0x20,
  2366  	0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  2367  	0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31,
  2368  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x61,
  2369  	0x69, 0x6e, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x42, 0x03, 0xe0, 0x41, 0x04, 0x52, 0x0d, 0x63,
  2370  	0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x12, 0x26, 0x0a, 0x0c,
  2371  	0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x1a, 0x20, 0x01,
  2372  	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63,
  2373  	0x74, 0x55, 0x72, 0x69, 0x12, 0x94, 0x01, 0x0a, 0x24, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74,
  2374  	0x65, 0x64, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65,
  2375  	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x0a, 0x20,
  2376  	0x03, 0x28, 0x0e, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  2377  	0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31,
  2378  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x44, 0x65, 0x70, 0x6c,
  2379  	0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x54,
  2380  	0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x21, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72,
  2381  	0x74, 0x65, 0x64, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73,
  2382  	0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x4a, 0x0a, 0x1f, 0x73,
  2383  	0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x73,
  2384  	0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x18, 0x0b,
  2385  	0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x1c, 0x73, 0x75, 0x70, 0x70, 0x6f,
  2386  	0x72, 0x74, 0x65, 0x64, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
  2387  	0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x12, 0x4c, 0x0a, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f,
  2388  	0x72, 0x74, 0x65, 0x64, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x73, 0x74, 0x6f, 0x72,
  2389  	0x61, 0x67, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28,
  2390  	0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x1d, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65,
  2391  	0x64, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x46, 0x6f,
  2392  	0x72, 0x6d, 0x61, 0x74, 0x73, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f,
  2393  	0x74, 0x69, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
  2394  	0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
  2395  	0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65,
  2396  	0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74,
  2397  	0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
  2398  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54,
  2399  	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75,
  2400  	0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x5f, 0x0a, 0x0f, 0x64, 0x65, 0x70,
  2401  	0x6c, 0x6f, 0x79, 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x18, 0x0f, 0x20, 0x03,
  2402  	0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  2403  	0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62,
  2404  	0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x4d, 0x6f, 0x64,
  2405  	0x65, 0x6c, 0x52, 0x65, 0x66, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e, 0x64, 0x65, 0x70, 0x6c,
  2406  	0x6f, 0x79, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x12, 0x5b, 0x0a, 0x10, 0x65, 0x78,
  2407  	0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x17,
  2408  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
  2409  	0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76,
  2410  	0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69,
  2411  	0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x52, 0x0f, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74,
  2412  	0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18,
  2413  	0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x4a, 0x0a, 0x06, 0x6c,
  2414  	0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f,
  2415  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  2416  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f,
  2417  	0x64, 0x65, 0x6c, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
  2418  	0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x58, 0x0a, 0x0f, 0x65, 0x6e, 0x63, 0x72, 0x79,
  2419  	0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b,
  2420  	0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  2421  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
  2422  	0x61, 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65,
  2423  	0x63, 0x52, 0x0e, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65,
  2424  	0x63, 0x12, 0x61, 0x0a, 0x11, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63,
  2425  	0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67,
  2426  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  2427  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d,
  2428  	0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x03,
  2429  	0xe0, 0x41, 0x03, 0x52, 0x0f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
  2430  	0x49, 0x6e, 0x66, 0x6f, 0x12, 0x6d, 0x0a, 0x13, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c,
  2431  	0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x22, 0x20, 0x01, 0x28,
  2432  	0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  2433  	0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65,
  2434  	0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e,
  2435  	0x61, 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x03, 0xe0, 0x41, 0x03,
  2436  	0x52, 0x11, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49,
  2437  	0x6e, 0x66, 0x6f, 0x12, 0x30, 0x0a, 0x11, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f,
  2438  	0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x18, 0x2c, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
  2439  	0xe0, 0x41, 0x03, 0x52, 0x10, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x41, 0x72, 0x74,
  2440  	0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x67, 0x0a, 0x11, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x6f,
  2441  	0x64, 0x65, 0x6c, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0b,
  2442  	0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  2443  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
  2444  	0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64,
  2445  	0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0f, 0x62,
  2446  	0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x28,
  2447  	0x0a, 0x0d, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x69, 0x65, 0x73, 0x5f, 0x70, 0x7a, 0x73, 0x18,
  2448  	0x33, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x73, 0x61, 0x74, 0x69,
  2449  	0x73, 0x66, 0x69, 0x65, 0x73, 0x50, 0x7a, 0x73, 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x61, 0x74, 0x69,
  2450  	0x73, 0x66, 0x69, 0x65, 0x73, 0x5f, 0x70, 0x7a, 0x69, 0x18, 0x34, 0x20, 0x01, 0x28, 0x08, 0x42,
  2451  	0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x69, 0x65, 0x73, 0x50,
  2452  	0x7a, 0x69, 0x12, 0x55, 0x0a, 0x0b, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74,
  2453  	0x73, 0x18, 0x39, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2454  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  2455  	0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x70,
  2456  	0x6f, 0x69, 0x6e, 0x74, 0x42, 0x06, 0xe0, 0x41, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x63, 0x68,
  2457  	0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x1a, 0xf2, 0x01, 0x0a, 0x0c, 0x45, 0x78,
  2458  	0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64,
  2459  	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12,
  2460  	0x7b, 0x0a, 0x13, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f,
  2461  	0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x45, 0x2e, 0x67,
  2462  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  2463  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d,
  2464  	0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x6d, 0x61,
  2465  	0x74, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74,
  2466  	0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74,
  2467  	0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x50, 0x0a, 0x11,
  2468  	0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
  2469  	0x74, 0x12, 0x22, 0x0a, 0x1e, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x41, 0x42, 0x4c, 0x45, 0x5f,
  2470  	0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
  2471  	0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x52, 0x54, 0x49, 0x46, 0x41, 0x43,
  2472  	0x54, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4d, 0x41, 0x47, 0x45, 0x10, 0x02, 0x1a, 0x52,
  2473  	0x0a, 0x11, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x49,
  2474  	0x6e, 0x66, 0x6f, 0x12, 0x3d, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01,
  2475  	0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x03, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x61, 0x69, 0x70, 0x6c,
  2476  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
  2477  	0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64,
  2478  	0x65, 0x6c, 0x1a, 0xd4, 0x01, 0x0a, 0x0f, 0x42, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c,
  2479  	0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x64, 0x0a, 0x13, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f,
  2480  	0x67, 0x61, 0x72, 0x64, 0x65, 0x6e, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20,
  2481  	0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  2482  	0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31,
  2483  	0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x47, 0x61, 0x72, 0x64, 0x65,
  2484  	0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x11, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
  2485  	0x47, 0x61, 0x72, 0x64, 0x65, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x51, 0x0a, 0x0c,
  2486  	0x67, 0x65, 0x6e, 0x69, 0x65, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01,
  2487  	0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  2488  	0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62,
  2489  	0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x69, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
  2490  	0x48, 0x00, 0x52, 0x0b, 0x67, 0x65, 0x6e, 0x69, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42,
  2491  	0x08, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62,
  2492  	0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
  2493  	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
  2494  	0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
  2495  	0x3a, 0x02, 0x38, 0x01, 0x22, 0x8c, 0x01, 0x0a, 0x17, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d,
  2496  	0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x54, 0x79, 0x70, 0x65,
  2497  	0x12, 0x29, 0x0a, 0x25, 0x44, 0x45, 0x50, 0x4c, 0x4f, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x52,
  2498  	0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x53, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e,
  2499  	0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x44,
  2500  	0x45, 0x44, 0x49, 0x43, 0x41, 0x54, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43,
  2501  	0x45, 0x53, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x55, 0x54, 0x4f, 0x4d, 0x41, 0x54, 0x49,
  2502  	0x43, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x53, 0x10, 0x02, 0x12, 0x14, 0x0a,
  2503  	0x10, 0x53, 0x48, 0x41, 0x52, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45,
  2504  	0x53, 0x10, 0x03, 0x3a, 0x5c, 0xea, 0x41, 0x59, 0x0a, 0x1f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  2505  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
  2506  	0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x36, 0x70, 0x72, 0x6f, 0x6a, 0x65,
  2507  	0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f,
  2508  	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
  2509  	0x6e, 0x7d, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f, 0x7b, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
  2510  	0x7d, 0x22, 0x2e, 0x0a, 0x13, 0x4c, 0x61, 0x72, 0x67, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52,
  2511  	0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
  2512  	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d,
  2513  	0x65, 0x22, 0x9c, 0x01, 0x0a, 0x11, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x47, 0x61, 0x72, 0x64, 0x65,
  2514  	0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x2f, 0x0a, 0x11, 0x70, 0x75, 0x62, 0x6c, 0x69,
  2515  	0x63, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
  2516  	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d,
  2517  	0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x76, 0x65, 0x72, 0x73,
  2518  	0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
  2519  	0x01, 0x52, 0x09, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x13,
  2520  	0x73, 0x6b, 0x69, 0x70, 0x5f, 0x68, 0x66, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x63, 0x61,
  2521  	0x63, 0x68, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x10,
  2522  	0x73, 0x6b, 0x69, 0x70, 0x48, 0x66, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x43, 0x61, 0x63, 0x68, 0x65,
  2523  	0x22, 0x38, 0x0a, 0x0b, 0x47, 0x65, 0x6e, 0x69, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12,
  2524  	0x29, 0x0a, 0x0e, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x75, 0x72,
  2525  	0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x62, 0x61,
  2526  	0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x55, 0x72, 0x69, 0x22, 0xb8, 0x01, 0x0a, 0x0f, 0x50,
  2527  	0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x74, 0x61, 0x12, 0x33,
  2528  	0x0a, 0x13, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d,
  2529  	0x61, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05,
  2530  	0x52, 0x11, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61,
  2531  	0x55, 0x72, 0x69, 0x12, 0x37, 0x0a, 0x15, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
  2532  	0x73, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x02, 0x20, 0x01,
  2533  	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x13, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
  2534  	0x65, 0x72, 0x73, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x55, 0x72, 0x69, 0x12, 0x37, 0x0a, 0x15,
  2535  	0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d,
  2536  	0x61, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05,
  2537  	0x52, 0x13, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x68, 0x65,
  2538  	0x6d, 0x61, 0x55, 0x72, 0x69, 0x22, 0xc2, 0x06, 0x0a, 0x12, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x43,
  2539  	0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x70, 0x65, 0x63, 0x12, 0x23, 0x0a, 0x09,
  2540  	0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
  2541  	0x06, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72,
  2542  	0x69, 0x12, 0x1d, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x03,
  2543  	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64,
  2544  	0x12, 0x17, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03,
  2545  	0xe0, 0x41, 0x05, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x3e, 0x0a, 0x03, 0x65, 0x6e, 0x76,
  2546  	0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  2547  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  2548  	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x76, 0x56, 0x61, 0x72, 0x42,
  2549  	0x03, 0xe0, 0x41, 0x05, 0x52, 0x03, 0x65, 0x6e, 0x76, 0x12, 0x40, 0x0a, 0x05, 0x70, 0x6f, 0x72,
  2550  	0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2551  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
  2552  	0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x42,
  2553  	0x03, 0xe0, 0x41, 0x05, 0x52, 0x05, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x28, 0x0a, 0x0d, 0x70,
  2554  	0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01,
  2555  	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74,
  2556  	0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x26, 0x0a, 0x0c, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x5f,
  2557  	0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05,
  2558  	0x52, 0x0b, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x33, 0x0a,
  2559  	0x13, 0x69, 0x6e, 0x76, 0x6f, 0x6b, 0x65, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 0x70, 0x72,
  2560  	0x65, 0x66, 0x69, 0x78, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52,
  2561  	0x11, 0x69, 0x6e, 0x76, 0x6f, 0x6b, 0x65, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x50, 0x72, 0x65, 0x66,
  2562  	0x69, 0x78, 0x12, 0x49, 0x0a, 0x0a, 0x67, 0x72, 0x70, 0x63, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x73,
  2563  	0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  2564  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  2565  	0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x42, 0x03, 0xe0,
  2566  	0x41, 0x05, 0x52, 0x09, 0x67, 0x72, 0x70, 0x63, 0x50, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x4d, 0x0a,
  2567  	0x12, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65,
  2568  	0x6f, 0x75, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2569  	0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61,
  2570  	0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x11, 0x64, 0x65, 0x70, 0x6c, 0x6f,
  2571  	0x79, 0x6d, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x36, 0x0a, 0x15,
  2572  	0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x73, 0x69,
  2573  	0x7a, 0x65, 0x5f, 0x6d, 0x62, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x05,
  2574  	0x52, 0x12, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x53, 0x69,
  2575  	0x7a, 0x65, 0x4d, 0x62, 0x12, 0x50, 0x0a, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x5f,
  2576  	0x70, 0x72, 0x6f, 0x62, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f,
  2577  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  2578  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72,
  2579  	0x6f, 0x62, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0c, 0x73, 0x74, 0x61, 0x72, 0x74, 0x75,
  2580  	0x70, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x12, 0x4e, 0x0a, 0x0c, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68,
  2581  	0x5f, 0x70, 0x72, 0x6f, 0x62, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67,
  2582  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c,
  2583  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50,
  2584  	0x72, 0x6f, 0x62, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0b, 0x68, 0x65, 0x61, 0x6c, 0x74,
  2585  	0x68, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x12, 0x52, 0x0a, 0x0e, 0x6c, 0x69, 0x76, 0x65, 0x6e, 0x65,
  2586  	0x73, 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26,
  2587  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69,
  2588  	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
  2589  	0x2e, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0d, 0x6c, 0x69, 0x76,
  2590  	0x65, 0x6e, 0x65, 0x73, 0x73, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x22, 0x2d, 0x0a, 0x04, 0x50, 0x6f,
  2591  	0x72, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f,
  2592  	0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74,
  2593  	0x61, 0x69, 0x6e, 0x65, 0x72, 0x50, 0x6f, 0x72, 0x74, 0x22, 0xaa, 0x02, 0x0a, 0x0f, 0x4d, 0x6f,
  2594  	0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x61, 0x0a,
  2595  	0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01,
  2596  	0x28, 0x0e, 0x32, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  2597  	0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62,
  2598  	0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
  2599  	0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
  2600  	0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65,
  2601  	0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x70, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04,
  2602  	0x63, 0x6f, 0x70, 0x79, 0x22, 0x9f, 0x01, 0x0a, 0x0f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f,
  2603  	0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x21, 0x0a, 0x1d, 0x4d, 0x4f, 0x44, 0x45,
  2604  	0x4c, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e,
  2605  	0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x41,
  2606  	0x55, 0x54, 0x4f, 0x4d, 0x4c, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x55, 0x53, 0x54, 0x4f,
  2607  	0x4d, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x42, 0x51, 0x4d, 0x4c, 0x10, 0x03, 0x12, 0x10, 0x0a,
  2608  	0x0c, 0x4d, 0x4f, 0x44, 0x45, 0x4c, 0x5f, 0x47, 0x41, 0x52, 0x44, 0x45, 0x4e, 0x10, 0x04, 0x12,
  2609  	0x09, 0x0a, 0x05, 0x47, 0x45, 0x4e, 0x49, 0x45, 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x55,
  2610  	0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x54, 0x45, 0x58, 0x54, 0x5f, 0x45, 0x4d, 0x42, 0x45, 0x44, 0x44,
  2611  	0x49, 0x4e, 0x47, 0x10, 0x06, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x41, 0x52, 0x4b, 0x45, 0x54, 0x50,
  2612  	0x4c, 0x41, 0x43, 0x45, 0x10, 0x07, 0x22, 0xc4, 0x07, 0x0a, 0x05, 0x50, 0x72, 0x6f, 0x62, 0x65,
  2613  	0x12, 0x47, 0x0a, 0x04, 0x65, 0x78, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31,
  2614  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69,
  2615  	0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31,
  2616  	0x2e, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x41, 0x63, 0x74, 0x69, 0x6f,
  2617  	0x6e, 0x48, 0x00, 0x52, 0x04, 0x65, 0x78, 0x65, 0x63, 0x12, 0x51, 0x0a, 0x08, 0x68, 0x74, 0x74,
  2618  	0x70, 0x5f, 0x67, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f,
  2619  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61,
  2620  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72,
  2621  	0x6f, 0x62, 0x65, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x47, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f,
  2622  	0x6e, 0x48, 0x00, 0x52, 0x07, 0x68, 0x74, 0x74, 0x70, 0x47, 0x65, 0x74, 0x12, 0x47, 0x0a, 0x04,
  2623  	0x67, 0x72, 0x70, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f,
  2624  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74,
  2625  	0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f,
  2626  	0x62, 0x65, 0x2e, 0x47, 0x72, 0x70, 0x63, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52,
  2627  	0x04, 0x67, 0x72, 0x70, 0x63, 0x12, 0x57, 0x0a, 0x0a, 0x74, 0x63, 0x70, 0x5f, 0x73, 0x6f, 0x63,
  2628  	0x6b, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2629  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  2630  	0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x62,
  2631  	0x65, 0x2e, 0x54, 0x63, 0x70, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f,
  2632  	0x6e, 0x48, 0x00, 0x52, 0x09, 0x74, 0x63, 0x70, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x25,
  2633  	0x0a, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73,
  2634  	0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x53, 0x65,
  2635  	0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74,
  2636  	0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e,
  2637  	0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x2b,
  2638  	0x0a, 0x11, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68,
  2639  	0x6f, 0x6c, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x66, 0x61, 0x69, 0x6c, 0x75,
  2640  	0x72, 0x65, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73,
  2641  	0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64,
  2642  	0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54,
  2643  	0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x69, 0x6e, 0x69, 0x74,
  2644  	0x69, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64,
  2645  	0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c,
  2646  	0x44, 0x65, 0x6c, 0x61, 0x79, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x1a, 0x26, 0x0a, 0x0a,
  2647  	0x45, 0x78, 0x65, 0x63, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f,
  2648  	0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d,
  2649  	0x6d, 0x61, 0x6e, 0x64, 0x1a, 0xb9, 0x01, 0x0a, 0x0d, 0x48, 0x74, 0x74, 0x70, 0x47, 0x65, 0x74,
  2650  	0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01,
  2651  	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f,
  2652  	0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x12,
  2653  	0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f,
  2654  	0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01,
  2655  	0x28, 0x09, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x54, 0x0a, 0x0c, 0x68, 0x74,
  2656  	0x74, 0x70, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b,
  2657  	0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  2658  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
  2659  	0x61, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x48, 0x65, 0x61,
  2660  	0x64, 0x65, 0x72, 0x52, 0x0b, 0x68, 0x74, 0x74, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73,
  2661  	0x1a, 0x3a, 0x0a, 0x0a, 0x47, 0x72, 0x70, 0x63, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12,
  2662  	0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x6f,
  2663  	0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20,
  2664  	0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x1a, 0x39, 0x0a, 0x0f,
  2665  	0x54, 0x63, 0x70, 0x53, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
  2666  	0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70,
  2667  	0x6f, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
  2668  	0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x1a, 0x36, 0x0a, 0x0a, 0x48, 0x74, 0x74, 0x70, 0x48,
  2669  	0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
  2670  	0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
  2671  	0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42,
  2672  	0x0c, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x62, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0x5b, 0x0a,
  2673  	0x0a, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63,
  2674  	0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
  2675  	0x28, 0x09, 0x52, 0x0c, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x49, 0x64,
  2676  	0x12, 0x14, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52,
  2677  	0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x74, 0x65, 0x70, 0x18, 0x03,
  2678  	0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x74, 0x65, 0x70, 0x42, 0xe1, 0x01, 0x0a, 0x23, 0x63,
  2679  	0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  2680  	0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74,
  2681  	0x61, 0x31, 0x42, 0x0a, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01,
  2682  	0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
  2683  	0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
  2684  	0x2f, 0x61, 0x70, 0x69, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x61, 0x69, 0x70, 0x6c,
  2685  	0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x70, 0x62, 0x3b, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66,
  2686  	0x6f, 0x72, 0x6d, 0x70, 0x62, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43,
  2687  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e,
  2688  	0x56, 0x31, 0x42, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2689  	0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
  2690  	0x6d, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xea, 0x02, 0x22, 0x47, 0x6f, 0x6f, 0x67,
  2691  	0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x41, 0x49, 0x50, 0x6c, 0x61,
  2692  	0x74, 0x66, 0x6f, 0x72, 0x6d, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06,
  2693  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  2694  }
  2695  
  2696  var (
  2697  	file_google_cloud_aiplatform_v1beta1_model_proto_rawDescOnce sync.Once
  2698  	file_google_cloud_aiplatform_v1beta1_model_proto_rawDescData = file_google_cloud_aiplatform_v1beta1_model_proto_rawDesc
  2699  )
  2700  
  2701  func file_google_cloud_aiplatform_v1beta1_model_proto_rawDescGZIP() []byte {
  2702  	file_google_cloud_aiplatform_v1beta1_model_proto_rawDescOnce.Do(func() {
  2703  		file_google_cloud_aiplatform_v1beta1_model_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_aiplatform_v1beta1_model_proto_rawDescData)
  2704  	})
  2705  	return file_google_cloud_aiplatform_v1beta1_model_proto_rawDescData
  2706  }
  2707  
  2708  var file_google_cloud_aiplatform_v1beta1_model_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
  2709  var file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes = make([]protoimpl.MessageInfo, 19)
  2710  var file_google_cloud_aiplatform_v1beta1_model_proto_goTypes = []any{
  2711  	(Model_DeploymentResourcesType)(0),        // 0: google.cloud.aiplatform.v1beta1.Model.DeploymentResourcesType
  2712  	(Model_ExportFormat_ExportableContent)(0), // 1: google.cloud.aiplatform.v1beta1.Model.ExportFormat.ExportableContent
  2713  	(ModelSourceInfo_ModelSourceType)(0),      // 2: google.cloud.aiplatform.v1beta1.ModelSourceInfo.ModelSourceType
  2714  	(*Model)(nil),                             // 3: google.cloud.aiplatform.v1beta1.Model
  2715  	(*LargeModelReference)(nil),               // 4: google.cloud.aiplatform.v1beta1.LargeModelReference
  2716  	(*ModelGardenSource)(nil),                 // 5: google.cloud.aiplatform.v1beta1.ModelGardenSource
  2717  	(*GenieSource)(nil),                       // 6: google.cloud.aiplatform.v1beta1.GenieSource
  2718  	(*PredictSchemata)(nil),                   // 7: google.cloud.aiplatform.v1beta1.PredictSchemata
  2719  	(*ModelContainerSpec)(nil),                // 8: google.cloud.aiplatform.v1beta1.ModelContainerSpec
  2720  	(*Port)(nil),                              // 9: google.cloud.aiplatform.v1beta1.Port
  2721  	(*ModelSourceInfo)(nil),                   // 10: google.cloud.aiplatform.v1beta1.ModelSourceInfo
  2722  	(*Probe)(nil),                             // 11: google.cloud.aiplatform.v1beta1.Probe
  2723  	(*Checkpoint)(nil),                        // 12: google.cloud.aiplatform.v1beta1.Checkpoint
  2724  	(*Model_ExportFormat)(nil),                // 13: google.cloud.aiplatform.v1beta1.Model.ExportFormat
  2725  	(*Model_OriginalModelInfo)(nil),           // 14: google.cloud.aiplatform.v1beta1.Model.OriginalModelInfo
  2726  	(*Model_BaseModelSource)(nil),             // 15: google.cloud.aiplatform.v1beta1.Model.BaseModelSource
  2727  	nil,                                       // 16: google.cloud.aiplatform.v1beta1.Model.LabelsEntry
  2728  	(*Probe_ExecAction)(nil),                  // 17: google.cloud.aiplatform.v1beta1.Probe.ExecAction
  2729  	(*Probe_HttpGetAction)(nil),               // 18: google.cloud.aiplatform.v1beta1.Probe.HttpGetAction
  2730  	(*Probe_GrpcAction)(nil),                  // 19: google.cloud.aiplatform.v1beta1.Probe.GrpcAction
  2731  	(*Probe_TcpSocketAction)(nil),             // 20: google.cloud.aiplatform.v1beta1.Probe.TcpSocketAction
  2732  	(*Probe_HttpHeader)(nil),                  // 21: google.cloud.aiplatform.v1beta1.Probe.HttpHeader
  2733  	(*timestamppb.Timestamp)(nil),             // 22: google.protobuf.Timestamp
  2734  	(*structpb.Value)(nil),                    // 23: google.protobuf.Value
  2735  	(*DeployedModelRef)(nil),                  // 24: google.cloud.aiplatform.v1beta1.DeployedModelRef
  2736  	(*ExplanationSpec)(nil),                   // 25: google.cloud.aiplatform.v1beta1.ExplanationSpec
  2737  	(*EncryptionSpec)(nil),                    // 26: google.cloud.aiplatform.v1beta1.EncryptionSpec
  2738  	(*EnvVar)(nil),                            // 27: google.cloud.aiplatform.v1beta1.EnvVar
  2739  	(*durationpb.Duration)(nil),               // 28: google.protobuf.Duration
  2740  }
  2741  var file_google_cloud_aiplatform_v1beta1_model_proto_depIdxs = []int32{
  2742  	22, // 0: google.cloud.aiplatform.v1beta1.Model.version_create_time:type_name -> google.protobuf.Timestamp
  2743  	22, // 1: google.cloud.aiplatform.v1beta1.Model.version_update_time:type_name -> google.protobuf.Timestamp
  2744  	7,  // 2: google.cloud.aiplatform.v1beta1.Model.predict_schemata:type_name -> google.cloud.aiplatform.v1beta1.PredictSchemata
  2745  	23, // 3: google.cloud.aiplatform.v1beta1.Model.metadata:type_name -> google.protobuf.Value
  2746  	13, // 4: google.cloud.aiplatform.v1beta1.Model.supported_export_formats:type_name -> google.cloud.aiplatform.v1beta1.Model.ExportFormat
  2747  	8,  // 5: google.cloud.aiplatform.v1beta1.Model.container_spec:type_name -> google.cloud.aiplatform.v1beta1.ModelContainerSpec
  2748  	0,  // 6: google.cloud.aiplatform.v1beta1.Model.supported_deployment_resources_types:type_name -> google.cloud.aiplatform.v1beta1.Model.DeploymentResourcesType
  2749  	22, // 7: google.cloud.aiplatform.v1beta1.Model.create_time:type_name -> google.protobuf.Timestamp
  2750  	22, // 8: google.cloud.aiplatform.v1beta1.Model.update_time:type_name -> google.protobuf.Timestamp
  2751  	24, // 9: google.cloud.aiplatform.v1beta1.Model.deployed_models:type_name -> google.cloud.aiplatform.v1beta1.DeployedModelRef
  2752  	25, // 10: google.cloud.aiplatform.v1beta1.Model.explanation_spec:type_name -> google.cloud.aiplatform.v1beta1.ExplanationSpec
  2753  	16, // 11: google.cloud.aiplatform.v1beta1.Model.labels:type_name -> google.cloud.aiplatform.v1beta1.Model.LabelsEntry
  2754  	26, // 12: google.cloud.aiplatform.v1beta1.Model.encryption_spec:type_name -> google.cloud.aiplatform.v1beta1.EncryptionSpec
  2755  	10, // 13: google.cloud.aiplatform.v1beta1.Model.model_source_info:type_name -> google.cloud.aiplatform.v1beta1.ModelSourceInfo
  2756  	14, // 14: google.cloud.aiplatform.v1beta1.Model.original_model_info:type_name -> google.cloud.aiplatform.v1beta1.Model.OriginalModelInfo
  2757  	15, // 15: google.cloud.aiplatform.v1beta1.Model.base_model_source:type_name -> google.cloud.aiplatform.v1beta1.Model.BaseModelSource
  2758  	12, // 16: google.cloud.aiplatform.v1beta1.Model.checkpoints:type_name -> google.cloud.aiplatform.v1beta1.Checkpoint
  2759  	27, // 17: google.cloud.aiplatform.v1beta1.ModelContainerSpec.env:type_name -> google.cloud.aiplatform.v1beta1.EnvVar
  2760  	9,  // 18: google.cloud.aiplatform.v1beta1.ModelContainerSpec.ports:type_name -> google.cloud.aiplatform.v1beta1.Port
  2761  	9,  // 19: google.cloud.aiplatform.v1beta1.ModelContainerSpec.grpc_ports:type_name -> google.cloud.aiplatform.v1beta1.Port
  2762  	28, // 20: google.cloud.aiplatform.v1beta1.ModelContainerSpec.deployment_timeout:type_name -> google.protobuf.Duration
  2763  	11, // 21: google.cloud.aiplatform.v1beta1.ModelContainerSpec.startup_probe:type_name -> google.cloud.aiplatform.v1beta1.Probe
  2764  	11, // 22: google.cloud.aiplatform.v1beta1.ModelContainerSpec.health_probe:type_name -> google.cloud.aiplatform.v1beta1.Probe
  2765  	11, // 23: google.cloud.aiplatform.v1beta1.ModelContainerSpec.liveness_probe:type_name -> google.cloud.aiplatform.v1beta1.Probe
  2766  	2,  // 24: google.cloud.aiplatform.v1beta1.ModelSourceInfo.source_type:type_name -> google.cloud.aiplatform.v1beta1.ModelSourceInfo.ModelSourceType
  2767  	17, // 25: google.cloud.aiplatform.v1beta1.Probe.exec:type_name -> google.cloud.aiplatform.v1beta1.Probe.ExecAction
  2768  	18, // 26: google.cloud.aiplatform.v1beta1.Probe.http_get:type_name -> google.cloud.aiplatform.v1beta1.Probe.HttpGetAction
  2769  	19, // 27: google.cloud.aiplatform.v1beta1.Probe.grpc:type_name -> google.cloud.aiplatform.v1beta1.Probe.GrpcAction
  2770  	20, // 28: google.cloud.aiplatform.v1beta1.Probe.tcp_socket:type_name -> google.cloud.aiplatform.v1beta1.Probe.TcpSocketAction
  2771  	1,  // 29: google.cloud.aiplatform.v1beta1.Model.ExportFormat.exportable_contents:type_name -> google.cloud.aiplatform.v1beta1.Model.ExportFormat.ExportableContent
  2772  	5,  // 30: google.cloud.aiplatform.v1beta1.Model.BaseModelSource.model_garden_source:type_name -> google.cloud.aiplatform.v1beta1.ModelGardenSource
  2773  	6,  // 31: google.cloud.aiplatform.v1beta1.Model.BaseModelSource.genie_source:type_name -> google.cloud.aiplatform.v1beta1.GenieSource
  2774  	21, // 32: google.cloud.aiplatform.v1beta1.Probe.HttpGetAction.http_headers:type_name -> google.cloud.aiplatform.v1beta1.Probe.HttpHeader
  2775  	33, // [33:33] is the sub-list for method output_type
  2776  	33, // [33:33] is the sub-list for method input_type
  2777  	33, // [33:33] is the sub-list for extension type_name
  2778  	33, // [33:33] is the sub-list for extension extendee
  2779  	0,  // [0:33] is the sub-list for field type_name
  2780  }
  2781  
  2782  func init() { file_google_cloud_aiplatform_v1beta1_model_proto_init() }
  2783  func file_google_cloud_aiplatform_v1beta1_model_proto_init() {
  2784  	if File_google_cloud_aiplatform_v1beta1_model_proto != nil {
  2785  		return
  2786  	}
  2787  	file_google_cloud_aiplatform_v1beta1_deployed_model_ref_proto_init()
  2788  	file_google_cloud_aiplatform_v1beta1_encryption_spec_proto_init()
  2789  	file_google_cloud_aiplatform_v1beta1_env_var_proto_init()
  2790  	file_google_cloud_aiplatform_v1beta1_explanation_proto_init()
  2791  	file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[8].OneofWrappers = []any{
  2792  		(*Probe_Exec)(nil),
  2793  		(*Probe_HttpGet)(nil),
  2794  		(*Probe_Grpc)(nil),
  2795  		(*Probe_TcpSocket)(nil),
  2796  	}
  2797  	file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes[12].OneofWrappers = []any{
  2798  		(*Model_BaseModelSource_ModelGardenSource)(nil),
  2799  		(*Model_BaseModelSource_GenieSource)(nil),
  2800  	}
  2801  	type x struct{}
  2802  	out := protoimpl.TypeBuilder{
  2803  		File: protoimpl.DescBuilder{
  2804  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  2805  			RawDescriptor: file_google_cloud_aiplatform_v1beta1_model_proto_rawDesc,
  2806  			NumEnums:      3,
  2807  			NumMessages:   19,
  2808  			NumExtensions: 0,
  2809  			NumServices:   0,
  2810  		},
  2811  		GoTypes:           file_google_cloud_aiplatform_v1beta1_model_proto_goTypes,
  2812  		DependencyIndexes: file_google_cloud_aiplatform_v1beta1_model_proto_depIdxs,
  2813  		EnumInfos:         file_google_cloud_aiplatform_v1beta1_model_proto_enumTypes,
  2814  		MessageInfos:      file_google_cloud_aiplatform_v1beta1_model_proto_msgTypes,
  2815  	}.Build()
  2816  	File_google_cloud_aiplatform_v1beta1_model_proto = out.File
  2817  	file_google_cloud_aiplatform_v1beta1_model_proto_rawDesc = nil
  2818  	file_google_cloud_aiplatform_v1beta1_model_proto_goTypes = nil
  2819  	file_google_cloud_aiplatform_v1beta1_model_proto_depIdxs = nil
  2820  }