cloud.google.com/go/aiplatform@v1.106.0/apiv1beta1/aiplatformpb/tuning_job.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/tuning_job.proto 20 21 package aiplatformpb 22 23 import ( 24 _ "google.golang.org/genproto/googleapis/api/annotations" 25 status "google.golang.org/genproto/googleapis/rpc/status" 26 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 27 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 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 // Supported adapter sizes for tuning. 42 type SupervisedHyperParameters_AdapterSize int32 43 44 const ( 45 // Adapter size is unspecified. 46 SupervisedHyperParameters_ADAPTER_SIZE_UNSPECIFIED SupervisedHyperParameters_AdapterSize = 0 47 // Adapter size 1. 48 SupervisedHyperParameters_ADAPTER_SIZE_ONE SupervisedHyperParameters_AdapterSize = 1 49 // Adapter size 2. 50 SupervisedHyperParameters_ADAPTER_SIZE_TWO SupervisedHyperParameters_AdapterSize = 6 51 // Adapter size 4. 52 SupervisedHyperParameters_ADAPTER_SIZE_FOUR SupervisedHyperParameters_AdapterSize = 2 53 // Adapter size 8. 54 SupervisedHyperParameters_ADAPTER_SIZE_EIGHT SupervisedHyperParameters_AdapterSize = 3 55 // Adapter size 16. 56 SupervisedHyperParameters_ADAPTER_SIZE_SIXTEEN SupervisedHyperParameters_AdapterSize = 4 57 // Adapter size 32. 58 SupervisedHyperParameters_ADAPTER_SIZE_THIRTY_TWO SupervisedHyperParameters_AdapterSize = 5 59 ) 60 61 // Enum value maps for SupervisedHyperParameters_AdapterSize. 62 var ( 63 SupervisedHyperParameters_AdapterSize_name = map[int32]string{ 64 0: "ADAPTER_SIZE_UNSPECIFIED", 65 1: "ADAPTER_SIZE_ONE", 66 6: "ADAPTER_SIZE_TWO", 67 2: "ADAPTER_SIZE_FOUR", 68 3: "ADAPTER_SIZE_EIGHT", 69 4: "ADAPTER_SIZE_SIXTEEN", 70 5: "ADAPTER_SIZE_THIRTY_TWO", 71 } 72 SupervisedHyperParameters_AdapterSize_value = map[string]int32{ 73 "ADAPTER_SIZE_UNSPECIFIED": 0, 74 "ADAPTER_SIZE_ONE": 1, 75 "ADAPTER_SIZE_TWO": 6, 76 "ADAPTER_SIZE_FOUR": 2, 77 "ADAPTER_SIZE_EIGHT": 3, 78 "ADAPTER_SIZE_SIXTEEN": 4, 79 "ADAPTER_SIZE_THIRTY_TWO": 5, 80 } 81 ) 82 83 func (x SupervisedHyperParameters_AdapterSize) Enum() *SupervisedHyperParameters_AdapterSize { 84 p := new(SupervisedHyperParameters_AdapterSize) 85 *p = x 86 return p 87 } 88 89 func (x SupervisedHyperParameters_AdapterSize) String() string { 90 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 91 } 92 93 func (SupervisedHyperParameters_AdapterSize) Descriptor() protoreflect.EnumDescriptor { 94 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_enumTypes[0].Descriptor() 95 } 96 97 func (SupervisedHyperParameters_AdapterSize) Type() protoreflect.EnumType { 98 return &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_enumTypes[0] 99 } 100 101 func (x SupervisedHyperParameters_AdapterSize) Number() protoreflect.EnumNumber { 102 return protoreflect.EnumNumber(x) 103 } 104 105 // Deprecated: Use SupervisedHyperParameters_AdapterSize.Descriptor instead. 106 func (SupervisedHyperParameters_AdapterSize) EnumDescriptor() ([]byte, []int) { 107 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{8, 0} 108 } 109 110 // Supported tuning modes. 111 type SupervisedTuningSpec_TuningMode int32 112 113 const ( 114 // Tuning mode is unspecified. 115 SupervisedTuningSpec_TUNING_MODE_UNSPECIFIED SupervisedTuningSpec_TuningMode = 0 116 // Full fine-tuning mode. 117 SupervisedTuningSpec_TUNING_MODE_FULL SupervisedTuningSpec_TuningMode = 1 118 // PEFT adapter tuning mode. 119 SupervisedTuningSpec_TUNING_MODE_PEFT_ADAPTER SupervisedTuningSpec_TuningMode = 2 120 ) 121 122 // Enum value maps for SupervisedTuningSpec_TuningMode. 123 var ( 124 SupervisedTuningSpec_TuningMode_name = map[int32]string{ 125 0: "TUNING_MODE_UNSPECIFIED", 126 1: "TUNING_MODE_FULL", 127 2: "TUNING_MODE_PEFT_ADAPTER", 128 } 129 SupervisedTuningSpec_TuningMode_value = map[string]int32{ 130 "TUNING_MODE_UNSPECIFIED": 0, 131 "TUNING_MODE_FULL": 1, 132 "TUNING_MODE_PEFT_ADAPTER": 2, 133 } 134 ) 135 136 func (x SupervisedTuningSpec_TuningMode) Enum() *SupervisedTuningSpec_TuningMode { 137 p := new(SupervisedTuningSpec_TuningMode) 138 *p = x 139 return p 140 } 141 142 func (x SupervisedTuningSpec_TuningMode) String() string { 143 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 144 } 145 146 func (SupervisedTuningSpec_TuningMode) Descriptor() protoreflect.EnumDescriptor { 147 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_enumTypes[1].Descriptor() 148 } 149 150 func (SupervisedTuningSpec_TuningMode) Type() protoreflect.EnumType { 151 return &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_enumTypes[1] 152 } 153 154 func (x SupervisedTuningSpec_TuningMode) Number() protoreflect.EnumNumber { 155 return protoreflect.EnumNumber(x) 156 } 157 158 // Deprecated: Use SupervisedTuningSpec_TuningMode.Descriptor instead. 159 func (SupervisedTuningSpec_TuningMode) EnumDescriptor() ([]byte, []int) { 160 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{9, 0} 161 } 162 163 // An enum defining the tuning task used for Veo. 164 type VeoHyperParameters_TuningTask int32 165 166 const ( 167 // Default value. This value is unused. 168 VeoHyperParameters_TUNING_TASK_UNSPECIFIED VeoHyperParameters_TuningTask = 0 169 // Tuning task for image to video. 170 VeoHyperParameters_TUNING_TASK_I2V VeoHyperParameters_TuningTask = 1 171 // Tuning task for text to video. 172 VeoHyperParameters_TUNING_TASK_T2V VeoHyperParameters_TuningTask = 2 173 ) 174 175 // Enum value maps for VeoHyperParameters_TuningTask. 176 var ( 177 VeoHyperParameters_TuningTask_name = map[int32]string{ 178 0: "TUNING_TASK_UNSPECIFIED", 179 1: "TUNING_TASK_I2V", 180 2: "TUNING_TASK_T2V", 181 } 182 VeoHyperParameters_TuningTask_value = map[string]int32{ 183 "TUNING_TASK_UNSPECIFIED": 0, 184 "TUNING_TASK_I2V": 1, 185 "TUNING_TASK_T2V": 2, 186 } 187 ) 188 189 func (x VeoHyperParameters_TuningTask) Enum() *VeoHyperParameters_TuningTask { 190 p := new(VeoHyperParameters_TuningTask) 191 *p = x 192 return p 193 } 194 195 func (x VeoHyperParameters_TuningTask) String() string { 196 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 197 } 198 199 func (VeoHyperParameters_TuningTask) Descriptor() protoreflect.EnumDescriptor { 200 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_enumTypes[2].Descriptor() 201 } 202 203 func (VeoHyperParameters_TuningTask) Type() protoreflect.EnumType { 204 return &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_enumTypes[2] 205 } 206 207 func (x VeoHyperParameters_TuningTask) Number() protoreflect.EnumNumber { 208 return protoreflect.EnumNumber(x) 209 } 210 211 // Deprecated: Use VeoHyperParameters_TuningTask.Descriptor instead. 212 func (VeoHyperParameters_TuningTask) EnumDescriptor() ([]byte, []int) { 213 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{14, 0} 214 } 215 216 // Represents a TuningJob that runs with Google owned models. 217 type TuningJob struct { 218 state protoimpl.MessageState 219 sizeCache protoimpl.SizeCache 220 unknownFields protoimpl.UnknownFields 221 222 // Types that are assignable to SourceModel: 223 // 224 // *TuningJob_BaseModel 225 // *TuningJob_PreTunedModel 226 SourceModel isTuningJob_SourceModel `protobuf_oneof:"source_model"` 227 // Types that are assignable to TuningSpec: 228 // 229 // *TuningJob_SupervisedTuningSpec 230 // *TuningJob_DistillationSpec 231 // *TuningJob_PartnerModelTuningSpec 232 // *TuningJob_VeoTuningSpec 233 TuningSpec isTuningJob_TuningSpec `protobuf_oneof:"tuning_spec"` 234 // Output only. Identifier. Resource name of a TuningJob. Format: 235 // `projects/{project}/locations/{location}/tuningJobs/{tuning_job}` 236 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 237 // Optional. The display name of the 238 // [TunedModel][google.cloud.aiplatform.v1.Model]. The name can be up to 128 239 // characters long and can consist of any UTF-8 characters. 240 TunedModelDisplayName string `protobuf:"bytes,2,opt,name=tuned_model_display_name,json=tunedModelDisplayName,proto3" json:"tuned_model_display_name,omitempty"` 241 // Optional. The description of the 242 // [TuningJob][google.cloud.aiplatform.v1.TuningJob]. 243 Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"` 244 // Optional. The user-provided path to custom model weights. Set this field 245 // to tune a custom model. The path must be a Cloud Storage directory that 246 // contains the model weights in .safetensors format along with associated 247 // model metadata files. If this field is set, the base_model field must still 248 // be set to indicate which base model the custom model is derived from. This 249 // feature is only available for open source models. 250 CustomBaseModel string `protobuf:"bytes,26,opt,name=custom_base_model,json=customBaseModel,proto3" json:"custom_base_model,omitempty"` 251 // Output only. The detailed state of the job. 252 State JobState `protobuf:"varint,6,opt,name=state,proto3,enum=google.cloud.aiplatform.v1beta1.JobState" json:"state,omitempty"` 253 // Output only. Time when the 254 // [TuningJob][google.cloud.aiplatform.v1.TuningJob] was created. 255 CreateTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` 256 // Output only. Time when the 257 // [TuningJob][google.cloud.aiplatform.v1.TuningJob] for the first time 258 // entered the `JOB_STATE_RUNNING` state. 259 StartTime *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` 260 // Output only. Time when the TuningJob entered any of the following 261 // [JobStates][google.cloud.aiplatform.v1.JobState]: `JOB_STATE_SUCCEEDED`, 262 // `JOB_STATE_FAILED`, `JOB_STATE_CANCELLED`, `JOB_STATE_EXPIRED`. 263 EndTime *timestamppb.Timestamp `protobuf:"bytes,9,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"` 264 // Output only. Time when the 265 // [TuningJob][google.cloud.aiplatform.v1.TuningJob] was most recently 266 // updated. 267 UpdateTime *timestamppb.Timestamp `protobuf:"bytes,10,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` 268 // Output only. Only populated when job's state is `JOB_STATE_FAILED` or 269 // `JOB_STATE_CANCELLED`. 270 Error *status.Status `protobuf:"bytes,11,opt,name=error,proto3" json:"error,omitempty"` 271 // Optional. The labels with user-defined metadata to organize 272 // [TuningJob][google.cloud.aiplatform.v1.TuningJob] and generated resources 273 // such as [Model][google.cloud.aiplatform.v1.Model] and 274 // [Endpoint][google.cloud.aiplatform.v1.Endpoint]. 275 // 276 // Label keys and values can be no longer than 64 characters 277 // (Unicode codepoints), can only contain lowercase letters, numeric 278 // characters, underscores and dashes. International characters are allowed. 279 // 280 // See https://goo.gl/xmQnxf for more information and examples of labels. 281 Labels map[string]string `protobuf:"bytes,12,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 282 // Output only. The Experiment associated with this 283 // [TuningJob][google.cloud.aiplatform.v1.TuningJob]. 284 Experiment string `protobuf:"bytes,13,opt,name=experiment,proto3" json:"experiment,omitempty"` 285 // Output only. The tuned model resources associated with this 286 // [TuningJob][google.cloud.aiplatform.v1.TuningJob]. 287 TunedModel *TunedModel `protobuf:"bytes,14,opt,name=tuned_model,json=tunedModel,proto3" json:"tuned_model,omitempty"` 288 // Output only. The tuning data statistics associated with this 289 // [TuningJob][google.cloud.aiplatform.v1.TuningJob]. 290 TuningDataStats *TuningDataStats `protobuf:"bytes,15,opt,name=tuning_data_stats,json=tuningDataStats,proto3" json:"tuning_data_stats,omitempty"` 291 // Output only. The resource name of the PipelineJob associated with the 292 // [TuningJob][google.cloud.aiplatform.v1.TuningJob]. Format: 293 // `projects/{project}/locations/{location}/pipelineJobs/{pipeline_job}`. 294 PipelineJob string `protobuf:"bytes,18,opt,name=pipeline_job,json=pipelineJob,proto3" json:"pipeline_job,omitempty"` 295 // Customer-managed encryption key options for a TuningJob. If this is set, 296 // then all resources created by the TuningJob will be encrypted with the 297 // provided encryption key. 298 EncryptionSpec *EncryptionSpec `protobuf:"bytes,16,opt,name=encryption_spec,json=encryptionSpec,proto3" json:"encryption_spec,omitempty"` 299 // The service account that the tuningJob workload runs as. 300 // If not specified, the Vertex AI Secure Fine-Tuned Service Agent in the 301 // project will be used. See 302 // https://cloud.google.com/iam/docs/service-agents#vertex-ai-secure-fine-tuning-service-agent 303 // 304 // Users starting the pipeline must have the `iam.serviceAccounts.actAs` 305 // permission on this service account. 306 ServiceAccount string `protobuf:"bytes,22,opt,name=service_account,json=serviceAccount,proto3" json:"service_account,omitempty"` 307 // Optional. Cloud Storage path to the directory where tuning job outputs are 308 // written to. This field is only available and required for open source 309 // models. 310 OutputUri string `protobuf:"bytes,25,opt,name=output_uri,json=outputUri,proto3" json:"output_uri,omitempty"` 311 // Output only. Evaluation runs for the Tuning Job. 312 EvaluateDatasetRuns []*EvaluateDatasetRun `protobuf:"bytes,32,rep,name=evaluate_dataset_runs,json=evaluateDatasetRuns,proto3" json:"evaluate_dataset_runs,omitempty"` 313 } 314 315 func (x *TuningJob) Reset() { 316 *x = TuningJob{} 317 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[0] 318 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 319 ms.StoreMessageInfo(mi) 320 } 321 322 func (x *TuningJob) String() string { 323 return protoimpl.X.MessageStringOf(x) 324 } 325 326 func (*TuningJob) ProtoMessage() {} 327 328 func (x *TuningJob) ProtoReflect() protoreflect.Message { 329 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[0] 330 if x != nil { 331 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 332 if ms.LoadMessageInfo() == nil { 333 ms.StoreMessageInfo(mi) 334 } 335 return ms 336 } 337 return mi.MessageOf(x) 338 } 339 340 // Deprecated: Use TuningJob.ProtoReflect.Descriptor instead. 341 func (*TuningJob) Descriptor() ([]byte, []int) { 342 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{0} 343 } 344 345 func (m *TuningJob) GetSourceModel() isTuningJob_SourceModel { 346 if m != nil { 347 return m.SourceModel 348 } 349 return nil 350 } 351 352 func (x *TuningJob) GetBaseModel() string { 353 if x, ok := x.GetSourceModel().(*TuningJob_BaseModel); ok { 354 return x.BaseModel 355 } 356 return "" 357 } 358 359 func (x *TuningJob) GetPreTunedModel() *PreTunedModel { 360 if x, ok := x.GetSourceModel().(*TuningJob_PreTunedModel); ok { 361 return x.PreTunedModel 362 } 363 return nil 364 } 365 366 func (m *TuningJob) GetTuningSpec() isTuningJob_TuningSpec { 367 if m != nil { 368 return m.TuningSpec 369 } 370 return nil 371 } 372 373 func (x *TuningJob) GetSupervisedTuningSpec() *SupervisedTuningSpec { 374 if x, ok := x.GetTuningSpec().(*TuningJob_SupervisedTuningSpec); ok { 375 return x.SupervisedTuningSpec 376 } 377 return nil 378 } 379 380 func (x *TuningJob) GetDistillationSpec() *DistillationSpec { 381 if x, ok := x.GetTuningSpec().(*TuningJob_DistillationSpec); ok { 382 return x.DistillationSpec 383 } 384 return nil 385 } 386 387 func (x *TuningJob) GetPartnerModelTuningSpec() *PartnerModelTuningSpec { 388 if x, ok := x.GetTuningSpec().(*TuningJob_PartnerModelTuningSpec); ok { 389 return x.PartnerModelTuningSpec 390 } 391 return nil 392 } 393 394 func (x *TuningJob) GetVeoTuningSpec() *VeoTuningSpec { 395 if x, ok := x.GetTuningSpec().(*TuningJob_VeoTuningSpec); ok { 396 return x.VeoTuningSpec 397 } 398 return nil 399 } 400 401 func (x *TuningJob) GetName() string { 402 if x != nil { 403 return x.Name 404 } 405 return "" 406 } 407 408 func (x *TuningJob) GetTunedModelDisplayName() string { 409 if x != nil { 410 return x.TunedModelDisplayName 411 } 412 return "" 413 } 414 415 func (x *TuningJob) GetDescription() string { 416 if x != nil { 417 return x.Description 418 } 419 return "" 420 } 421 422 func (x *TuningJob) GetCustomBaseModel() string { 423 if x != nil { 424 return x.CustomBaseModel 425 } 426 return "" 427 } 428 429 func (x *TuningJob) GetState() JobState { 430 if x != nil { 431 return x.State 432 } 433 return JobState_JOB_STATE_UNSPECIFIED 434 } 435 436 func (x *TuningJob) GetCreateTime() *timestamppb.Timestamp { 437 if x != nil { 438 return x.CreateTime 439 } 440 return nil 441 } 442 443 func (x *TuningJob) GetStartTime() *timestamppb.Timestamp { 444 if x != nil { 445 return x.StartTime 446 } 447 return nil 448 } 449 450 func (x *TuningJob) GetEndTime() *timestamppb.Timestamp { 451 if x != nil { 452 return x.EndTime 453 } 454 return nil 455 } 456 457 func (x *TuningJob) GetUpdateTime() *timestamppb.Timestamp { 458 if x != nil { 459 return x.UpdateTime 460 } 461 return nil 462 } 463 464 func (x *TuningJob) GetError() *status.Status { 465 if x != nil { 466 return x.Error 467 } 468 return nil 469 } 470 471 func (x *TuningJob) GetLabels() map[string]string { 472 if x != nil { 473 return x.Labels 474 } 475 return nil 476 } 477 478 func (x *TuningJob) GetExperiment() string { 479 if x != nil { 480 return x.Experiment 481 } 482 return "" 483 } 484 485 func (x *TuningJob) GetTunedModel() *TunedModel { 486 if x != nil { 487 return x.TunedModel 488 } 489 return nil 490 } 491 492 func (x *TuningJob) GetTuningDataStats() *TuningDataStats { 493 if x != nil { 494 return x.TuningDataStats 495 } 496 return nil 497 } 498 499 func (x *TuningJob) GetPipelineJob() string { 500 if x != nil { 501 return x.PipelineJob 502 } 503 return "" 504 } 505 506 func (x *TuningJob) GetEncryptionSpec() *EncryptionSpec { 507 if x != nil { 508 return x.EncryptionSpec 509 } 510 return nil 511 } 512 513 func (x *TuningJob) GetServiceAccount() string { 514 if x != nil { 515 return x.ServiceAccount 516 } 517 return "" 518 } 519 520 func (x *TuningJob) GetOutputUri() string { 521 if x != nil { 522 return x.OutputUri 523 } 524 return "" 525 } 526 527 func (x *TuningJob) GetEvaluateDatasetRuns() []*EvaluateDatasetRun { 528 if x != nil { 529 return x.EvaluateDatasetRuns 530 } 531 return nil 532 } 533 534 type isTuningJob_SourceModel interface { 535 isTuningJob_SourceModel() 536 } 537 538 type TuningJob_BaseModel struct { 539 // The base model that is being tuned. See [Supported 540 // models](https://cloud.google.com/vertex-ai/generative-ai/docs/model-reference/tuning#supported_models). 541 BaseModel string `protobuf:"bytes,4,opt,name=base_model,json=baseModel,proto3,oneof"` 542 } 543 544 type TuningJob_PreTunedModel struct { 545 // The pre-tuned model for continuous tuning. 546 PreTunedModel *PreTunedModel `protobuf:"bytes,31,opt,name=pre_tuned_model,json=preTunedModel,proto3,oneof"` 547 } 548 549 func (*TuningJob_BaseModel) isTuningJob_SourceModel() {} 550 551 func (*TuningJob_PreTunedModel) isTuningJob_SourceModel() {} 552 553 type isTuningJob_TuningSpec interface { 554 isTuningJob_TuningSpec() 555 } 556 557 type TuningJob_SupervisedTuningSpec struct { 558 // Tuning Spec for Supervised Fine Tuning. 559 SupervisedTuningSpec *SupervisedTuningSpec `protobuf:"bytes,5,opt,name=supervised_tuning_spec,json=supervisedTuningSpec,proto3,oneof"` 560 } 561 562 type TuningJob_DistillationSpec struct { 563 // Tuning Spec for Distillation. 564 DistillationSpec *DistillationSpec `protobuf:"bytes,17,opt,name=distillation_spec,json=distillationSpec,proto3,oneof"` 565 } 566 567 type TuningJob_PartnerModelTuningSpec struct { 568 // Tuning Spec for open sourced and third party Partner models. 569 PartnerModelTuningSpec *PartnerModelTuningSpec `protobuf:"bytes,21,opt,name=partner_model_tuning_spec,json=partnerModelTuningSpec,proto3,oneof"` 570 } 571 572 type TuningJob_VeoTuningSpec struct { 573 // Tuning Spec for Veo Tuning. 574 VeoTuningSpec *VeoTuningSpec `protobuf:"bytes,33,opt,name=veo_tuning_spec,json=veoTuningSpec,proto3,oneof"` 575 } 576 577 func (*TuningJob_SupervisedTuningSpec) isTuningJob_TuningSpec() {} 578 579 func (*TuningJob_DistillationSpec) isTuningJob_TuningSpec() {} 580 581 func (*TuningJob_PartnerModelTuningSpec) isTuningJob_TuningSpec() {} 582 583 func (*TuningJob_VeoTuningSpec) isTuningJob_TuningSpec() {} 584 585 // The Model Registry Model and Online Prediction Endpoint associated with 586 // this [TuningJob][google.cloud.aiplatform.v1.TuningJob]. 587 type TunedModel struct { 588 state protoimpl.MessageState 589 sizeCache protoimpl.SizeCache 590 unknownFields protoimpl.UnknownFields 591 592 // Output only. The resource name of the TunedModel. Format: 593 // 594 // `projects/{project}/locations/{location}/models/{model}@{version_id}` 595 // 596 // When tuning from a base model, the version_id will be 1. 597 // 598 // For continuous tuning, the version id will be incremented by 1 from the 599 // last version id in the parent model. E.g., 600 // `projects/{project}/locations/{location}/models/{model}@{last_version_id + 601 // 1}` 602 Model string `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"` 603 // Output only. A resource name of an Endpoint. Format: 604 // `projects/{project}/locations/{location}/endpoints/{endpoint}`. 605 Endpoint string `protobuf:"bytes,2,opt,name=endpoint,proto3" json:"endpoint,omitempty"` 606 // Output only. The checkpoints associated with this TunedModel. 607 // This field is only populated for tuning jobs that enable intermediate 608 // checkpoints. 609 Checkpoints []*TunedModelCheckpoint `protobuf:"bytes,3,rep,name=checkpoints,proto3" json:"checkpoints,omitempty"` 610 } 611 612 func (x *TunedModel) Reset() { 613 *x = TunedModel{} 614 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[1] 615 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 616 ms.StoreMessageInfo(mi) 617 } 618 619 func (x *TunedModel) String() string { 620 return protoimpl.X.MessageStringOf(x) 621 } 622 623 func (*TunedModel) ProtoMessage() {} 624 625 func (x *TunedModel) ProtoReflect() protoreflect.Message { 626 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[1] 627 if x != nil { 628 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 629 if ms.LoadMessageInfo() == nil { 630 ms.StoreMessageInfo(mi) 631 } 632 return ms 633 } 634 return mi.MessageOf(x) 635 } 636 637 // Deprecated: Use TunedModel.ProtoReflect.Descriptor instead. 638 func (*TunedModel) Descriptor() ([]byte, []int) { 639 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{1} 640 } 641 642 func (x *TunedModel) GetModel() string { 643 if x != nil { 644 return x.Model 645 } 646 return "" 647 } 648 649 func (x *TunedModel) GetEndpoint() string { 650 if x != nil { 651 return x.Endpoint 652 } 653 return "" 654 } 655 656 func (x *TunedModel) GetCheckpoints() []*TunedModelCheckpoint { 657 if x != nil { 658 return x.Checkpoints 659 } 660 return nil 661 } 662 663 // Dataset distribution for Supervised Tuning. 664 type SupervisedTuningDatasetDistribution struct { 665 state protoimpl.MessageState 666 sizeCache protoimpl.SizeCache 667 unknownFields protoimpl.UnknownFields 668 669 // Output only. Sum of a given population of values. 670 Sum int64 `protobuf:"varint,1,opt,name=sum,proto3" json:"sum,omitempty"` 671 // Output only. Sum of a given population of values that are billable. 672 BillableSum int64 `protobuf:"varint,9,opt,name=billable_sum,json=billableSum,proto3" json:"billable_sum,omitempty"` 673 // Output only. The minimum of the population values. 674 Min float64 `protobuf:"fixed64,2,opt,name=min,proto3" json:"min,omitempty"` 675 // Output only. The maximum of the population values. 676 Max float64 `protobuf:"fixed64,3,opt,name=max,proto3" json:"max,omitempty"` 677 // Output only. The arithmetic mean of the values in the population. 678 Mean float64 `protobuf:"fixed64,4,opt,name=mean,proto3" json:"mean,omitempty"` 679 // Output only. The median of the values in the population. 680 Median float64 `protobuf:"fixed64,5,opt,name=median,proto3" json:"median,omitempty"` 681 // Output only. The 5th percentile of the values in the population. 682 P5 float64 `protobuf:"fixed64,6,opt,name=p5,proto3" json:"p5,omitempty"` 683 // Output only. The 95th percentile of the values in the population. 684 P95 float64 `protobuf:"fixed64,7,opt,name=p95,proto3" json:"p95,omitempty"` 685 // Output only. Defines the histogram bucket. 686 Buckets []*SupervisedTuningDatasetDistribution_DatasetBucket `protobuf:"bytes,8,rep,name=buckets,proto3" json:"buckets,omitempty"` 687 } 688 689 func (x *SupervisedTuningDatasetDistribution) Reset() { 690 *x = SupervisedTuningDatasetDistribution{} 691 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[2] 692 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 693 ms.StoreMessageInfo(mi) 694 } 695 696 func (x *SupervisedTuningDatasetDistribution) String() string { 697 return protoimpl.X.MessageStringOf(x) 698 } 699 700 func (*SupervisedTuningDatasetDistribution) ProtoMessage() {} 701 702 func (x *SupervisedTuningDatasetDistribution) ProtoReflect() protoreflect.Message { 703 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[2] 704 if x != nil { 705 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 706 if ms.LoadMessageInfo() == nil { 707 ms.StoreMessageInfo(mi) 708 } 709 return ms 710 } 711 return mi.MessageOf(x) 712 } 713 714 // Deprecated: Use SupervisedTuningDatasetDistribution.ProtoReflect.Descriptor instead. 715 func (*SupervisedTuningDatasetDistribution) Descriptor() ([]byte, []int) { 716 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{2} 717 } 718 719 func (x *SupervisedTuningDatasetDistribution) GetSum() int64 { 720 if x != nil { 721 return x.Sum 722 } 723 return 0 724 } 725 726 func (x *SupervisedTuningDatasetDistribution) GetBillableSum() int64 { 727 if x != nil { 728 return x.BillableSum 729 } 730 return 0 731 } 732 733 func (x *SupervisedTuningDatasetDistribution) GetMin() float64 { 734 if x != nil { 735 return x.Min 736 } 737 return 0 738 } 739 740 func (x *SupervisedTuningDatasetDistribution) GetMax() float64 { 741 if x != nil { 742 return x.Max 743 } 744 return 0 745 } 746 747 func (x *SupervisedTuningDatasetDistribution) GetMean() float64 { 748 if x != nil { 749 return x.Mean 750 } 751 return 0 752 } 753 754 func (x *SupervisedTuningDatasetDistribution) GetMedian() float64 { 755 if x != nil { 756 return x.Median 757 } 758 return 0 759 } 760 761 func (x *SupervisedTuningDatasetDistribution) GetP5() float64 { 762 if x != nil { 763 return x.P5 764 } 765 return 0 766 } 767 768 func (x *SupervisedTuningDatasetDistribution) GetP95() float64 { 769 if x != nil { 770 return x.P95 771 } 772 return 0 773 } 774 775 func (x *SupervisedTuningDatasetDistribution) GetBuckets() []*SupervisedTuningDatasetDistribution_DatasetBucket { 776 if x != nil { 777 return x.Buckets 778 } 779 return nil 780 } 781 782 // Tuning data statistics for Supervised Tuning. 783 type SupervisedTuningDataStats struct { 784 state protoimpl.MessageState 785 sizeCache protoimpl.SizeCache 786 unknownFields protoimpl.UnknownFields 787 788 // Output only. Number of examples in the tuning dataset. 789 TuningDatasetExampleCount int64 `protobuf:"varint,1,opt,name=tuning_dataset_example_count,json=tuningDatasetExampleCount,proto3" json:"tuning_dataset_example_count,omitempty"` 790 // Output only. Number of tuning characters in the tuning dataset. 791 TotalTuningCharacterCount int64 `protobuf:"varint,2,opt,name=total_tuning_character_count,json=totalTuningCharacterCount,proto3" json:"total_tuning_character_count,omitempty"` 792 // Output only. Number of billable characters in the tuning dataset. 793 // 794 // Deprecated: Marked as deprecated in google/cloud/aiplatform/v1beta1/tuning_job.proto. 795 TotalBillableCharacterCount int64 `protobuf:"varint,3,opt,name=total_billable_character_count,json=totalBillableCharacterCount,proto3" json:"total_billable_character_count,omitempty"` 796 // Output only. Number of billable tokens in the tuning dataset. 797 TotalBillableTokenCount int64 `protobuf:"varint,9,opt,name=total_billable_token_count,json=totalBillableTokenCount,proto3" json:"total_billable_token_count,omitempty"` 798 // Output only. Number of tuning steps for this Tuning Job. 799 TuningStepCount int64 `protobuf:"varint,4,opt,name=tuning_step_count,json=tuningStepCount,proto3" json:"tuning_step_count,omitempty"` 800 // Output only. Dataset distributions for the user input tokens. 801 UserInputTokenDistribution *SupervisedTuningDatasetDistribution `protobuf:"bytes,5,opt,name=user_input_token_distribution,json=userInputTokenDistribution,proto3" json:"user_input_token_distribution,omitempty"` 802 // Output only. Dataset distributions for the user output tokens. 803 UserOutputTokenDistribution *SupervisedTuningDatasetDistribution `protobuf:"bytes,6,opt,name=user_output_token_distribution,json=userOutputTokenDistribution,proto3" json:"user_output_token_distribution,omitempty"` 804 // Output only. Dataset distributions for the messages per example. 805 UserMessagePerExampleDistribution *SupervisedTuningDatasetDistribution `protobuf:"bytes,7,opt,name=user_message_per_example_distribution,json=userMessagePerExampleDistribution,proto3" json:"user_message_per_example_distribution,omitempty"` 806 // Output only. Sample user messages in the training dataset uri. 807 UserDatasetExamples []*Content `protobuf:"bytes,8,rep,name=user_dataset_examples,json=userDatasetExamples,proto3" json:"user_dataset_examples,omitempty"` 808 // Output only. The number of examples in the dataset that have been dropped. 809 // An example can be dropped for reasons including: too many tokens, contains 810 // an invalid image, contains too many images, etc. 811 TotalTruncatedExampleCount int64 `protobuf:"varint,10,opt,name=total_truncated_example_count,json=totalTruncatedExampleCount,proto3" json:"total_truncated_example_count,omitempty"` 812 // Output only. A partial sample of the indices (starting from 1) of the 813 // dropped examples. 814 TruncatedExampleIndices []int64 `protobuf:"varint,11,rep,packed,name=truncated_example_indices,json=truncatedExampleIndices,proto3" json:"truncated_example_indices,omitempty"` 815 // Output only. For each index in `truncated_example_indices`, the user-facing 816 // reason why the example was dropped. 817 DroppedExampleReasons []string `protobuf:"bytes,12,rep,name=dropped_example_reasons,json=droppedExampleReasons,proto3" json:"dropped_example_reasons,omitempty"` 818 } 819 820 func (x *SupervisedTuningDataStats) Reset() { 821 *x = SupervisedTuningDataStats{} 822 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[3] 823 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 824 ms.StoreMessageInfo(mi) 825 } 826 827 func (x *SupervisedTuningDataStats) String() string { 828 return protoimpl.X.MessageStringOf(x) 829 } 830 831 func (*SupervisedTuningDataStats) ProtoMessage() {} 832 833 func (x *SupervisedTuningDataStats) ProtoReflect() protoreflect.Message { 834 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[3] 835 if x != nil { 836 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 837 if ms.LoadMessageInfo() == nil { 838 ms.StoreMessageInfo(mi) 839 } 840 return ms 841 } 842 return mi.MessageOf(x) 843 } 844 845 // Deprecated: Use SupervisedTuningDataStats.ProtoReflect.Descriptor instead. 846 func (*SupervisedTuningDataStats) Descriptor() ([]byte, []int) { 847 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{3} 848 } 849 850 func (x *SupervisedTuningDataStats) GetTuningDatasetExampleCount() int64 { 851 if x != nil { 852 return x.TuningDatasetExampleCount 853 } 854 return 0 855 } 856 857 func (x *SupervisedTuningDataStats) GetTotalTuningCharacterCount() int64 { 858 if x != nil { 859 return x.TotalTuningCharacterCount 860 } 861 return 0 862 } 863 864 // Deprecated: Marked as deprecated in google/cloud/aiplatform/v1beta1/tuning_job.proto. 865 func (x *SupervisedTuningDataStats) GetTotalBillableCharacterCount() int64 { 866 if x != nil { 867 return x.TotalBillableCharacterCount 868 } 869 return 0 870 } 871 872 func (x *SupervisedTuningDataStats) GetTotalBillableTokenCount() int64 { 873 if x != nil { 874 return x.TotalBillableTokenCount 875 } 876 return 0 877 } 878 879 func (x *SupervisedTuningDataStats) GetTuningStepCount() int64 { 880 if x != nil { 881 return x.TuningStepCount 882 } 883 return 0 884 } 885 886 func (x *SupervisedTuningDataStats) GetUserInputTokenDistribution() *SupervisedTuningDatasetDistribution { 887 if x != nil { 888 return x.UserInputTokenDistribution 889 } 890 return nil 891 } 892 893 func (x *SupervisedTuningDataStats) GetUserOutputTokenDistribution() *SupervisedTuningDatasetDistribution { 894 if x != nil { 895 return x.UserOutputTokenDistribution 896 } 897 return nil 898 } 899 900 func (x *SupervisedTuningDataStats) GetUserMessagePerExampleDistribution() *SupervisedTuningDatasetDistribution { 901 if x != nil { 902 return x.UserMessagePerExampleDistribution 903 } 904 return nil 905 } 906 907 func (x *SupervisedTuningDataStats) GetUserDatasetExamples() []*Content { 908 if x != nil { 909 return x.UserDatasetExamples 910 } 911 return nil 912 } 913 914 func (x *SupervisedTuningDataStats) GetTotalTruncatedExampleCount() int64 { 915 if x != nil { 916 return x.TotalTruncatedExampleCount 917 } 918 return 0 919 } 920 921 func (x *SupervisedTuningDataStats) GetTruncatedExampleIndices() []int64 { 922 if x != nil { 923 return x.TruncatedExampleIndices 924 } 925 return nil 926 } 927 928 func (x *SupervisedTuningDataStats) GetDroppedExampleReasons() []string { 929 if x != nil { 930 return x.DroppedExampleReasons 931 } 932 return nil 933 } 934 935 // Distribution computed over a tuning dataset. 936 type DatasetDistribution struct { 937 state protoimpl.MessageState 938 sizeCache protoimpl.SizeCache 939 unknownFields protoimpl.UnknownFields 940 941 // Output only. Sum of a given population of values. 942 Sum float64 `protobuf:"fixed64,1,opt,name=sum,proto3" json:"sum,omitempty"` 943 // Output only. The minimum of the population values. 944 Min float64 `protobuf:"fixed64,2,opt,name=min,proto3" json:"min,omitempty"` 945 // Output only. The maximum of the population values. 946 Max float64 `protobuf:"fixed64,3,opt,name=max,proto3" json:"max,omitempty"` 947 // Output only. The arithmetic mean of the values in the population. 948 Mean float64 `protobuf:"fixed64,4,opt,name=mean,proto3" json:"mean,omitempty"` 949 // Output only. The median of the values in the population. 950 Median float64 `protobuf:"fixed64,5,opt,name=median,proto3" json:"median,omitempty"` 951 // Output only. The 5th percentile of the values in the population. 952 P5 float64 `protobuf:"fixed64,6,opt,name=p5,proto3" json:"p5,omitempty"` 953 // Output only. The 95th percentile of the values in the population. 954 P95 float64 `protobuf:"fixed64,7,opt,name=p95,proto3" json:"p95,omitempty"` 955 // Output only. Defines the histogram bucket. 956 Buckets []*DatasetDistribution_DistributionBucket `protobuf:"bytes,8,rep,name=buckets,proto3" json:"buckets,omitempty"` 957 } 958 959 func (x *DatasetDistribution) Reset() { 960 *x = DatasetDistribution{} 961 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[4] 962 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 963 ms.StoreMessageInfo(mi) 964 } 965 966 func (x *DatasetDistribution) String() string { 967 return protoimpl.X.MessageStringOf(x) 968 } 969 970 func (*DatasetDistribution) ProtoMessage() {} 971 972 func (x *DatasetDistribution) ProtoReflect() protoreflect.Message { 973 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[4] 974 if x != nil { 975 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 976 if ms.LoadMessageInfo() == nil { 977 ms.StoreMessageInfo(mi) 978 } 979 return ms 980 } 981 return mi.MessageOf(x) 982 } 983 984 // Deprecated: Use DatasetDistribution.ProtoReflect.Descriptor instead. 985 func (*DatasetDistribution) Descriptor() ([]byte, []int) { 986 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{4} 987 } 988 989 func (x *DatasetDistribution) GetSum() float64 { 990 if x != nil { 991 return x.Sum 992 } 993 return 0 994 } 995 996 func (x *DatasetDistribution) GetMin() float64 { 997 if x != nil { 998 return x.Min 999 } 1000 return 0 1001 } 1002 1003 func (x *DatasetDistribution) GetMax() float64 { 1004 if x != nil { 1005 return x.Max 1006 } 1007 return 0 1008 } 1009 1010 func (x *DatasetDistribution) GetMean() float64 { 1011 if x != nil { 1012 return x.Mean 1013 } 1014 return 0 1015 } 1016 1017 func (x *DatasetDistribution) GetMedian() float64 { 1018 if x != nil { 1019 return x.Median 1020 } 1021 return 0 1022 } 1023 1024 func (x *DatasetDistribution) GetP5() float64 { 1025 if x != nil { 1026 return x.P5 1027 } 1028 return 0 1029 } 1030 1031 func (x *DatasetDistribution) GetP95() float64 { 1032 if x != nil { 1033 return x.P95 1034 } 1035 return 0 1036 } 1037 1038 func (x *DatasetDistribution) GetBuckets() []*DatasetDistribution_DistributionBucket { 1039 if x != nil { 1040 return x.Buckets 1041 } 1042 return nil 1043 } 1044 1045 // Statistics computed over a tuning dataset. 1046 type DatasetStats struct { 1047 state protoimpl.MessageState 1048 sizeCache protoimpl.SizeCache 1049 unknownFields protoimpl.UnknownFields 1050 1051 // Output only. Number of examples in the tuning dataset. 1052 TuningDatasetExampleCount int64 `protobuf:"varint,1,opt,name=tuning_dataset_example_count,json=tuningDatasetExampleCount,proto3" json:"tuning_dataset_example_count,omitempty"` 1053 // Output only. Number of tuning characters in the tuning dataset. 1054 TotalTuningCharacterCount int64 `protobuf:"varint,2,opt,name=total_tuning_character_count,json=totalTuningCharacterCount,proto3" json:"total_tuning_character_count,omitempty"` 1055 // Output only. Number of billable characters in the tuning dataset. 1056 TotalBillableCharacterCount int64 `protobuf:"varint,3,opt,name=total_billable_character_count,json=totalBillableCharacterCount,proto3" json:"total_billable_character_count,omitempty"` 1057 // Output only. Number of tuning steps for this Tuning Job. 1058 TuningStepCount int64 `protobuf:"varint,4,opt,name=tuning_step_count,json=tuningStepCount,proto3" json:"tuning_step_count,omitempty"` 1059 // Output only. Dataset distributions for the user input tokens. 1060 UserInputTokenDistribution *DatasetDistribution `protobuf:"bytes,5,opt,name=user_input_token_distribution,json=userInputTokenDistribution,proto3" json:"user_input_token_distribution,omitempty"` 1061 // Output only. Dataset distributions for the user output tokens. 1062 UserOutputTokenDistribution *DatasetDistribution `protobuf:"bytes,6,opt,name=user_output_token_distribution,json=userOutputTokenDistribution,proto3,oneof" json:"user_output_token_distribution,omitempty"` 1063 // Output only. Dataset distributions for the messages per example. 1064 UserMessagePerExampleDistribution *DatasetDistribution `protobuf:"bytes,7,opt,name=user_message_per_example_distribution,json=userMessagePerExampleDistribution,proto3" json:"user_message_per_example_distribution,omitempty"` 1065 // Output only. Sample user messages in the training dataset uri. 1066 UserDatasetExamples []*Content `protobuf:"bytes,8,rep,name=user_dataset_examples,json=userDatasetExamples,proto3" json:"user_dataset_examples,omitempty"` 1067 } 1068 1069 func (x *DatasetStats) Reset() { 1070 *x = DatasetStats{} 1071 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[5] 1072 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1073 ms.StoreMessageInfo(mi) 1074 } 1075 1076 func (x *DatasetStats) String() string { 1077 return protoimpl.X.MessageStringOf(x) 1078 } 1079 1080 func (*DatasetStats) ProtoMessage() {} 1081 1082 func (x *DatasetStats) ProtoReflect() protoreflect.Message { 1083 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[5] 1084 if x != nil { 1085 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1086 if ms.LoadMessageInfo() == nil { 1087 ms.StoreMessageInfo(mi) 1088 } 1089 return ms 1090 } 1091 return mi.MessageOf(x) 1092 } 1093 1094 // Deprecated: Use DatasetStats.ProtoReflect.Descriptor instead. 1095 func (*DatasetStats) Descriptor() ([]byte, []int) { 1096 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{5} 1097 } 1098 1099 func (x *DatasetStats) GetTuningDatasetExampleCount() int64 { 1100 if x != nil { 1101 return x.TuningDatasetExampleCount 1102 } 1103 return 0 1104 } 1105 1106 func (x *DatasetStats) GetTotalTuningCharacterCount() int64 { 1107 if x != nil { 1108 return x.TotalTuningCharacterCount 1109 } 1110 return 0 1111 } 1112 1113 func (x *DatasetStats) GetTotalBillableCharacterCount() int64 { 1114 if x != nil { 1115 return x.TotalBillableCharacterCount 1116 } 1117 return 0 1118 } 1119 1120 func (x *DatasetStats) GetTuningStepCount() int64 { 1121 if x != nil { 1122 return x.TuningStepCount 1123 } 1124 return 0 1125 } 1126 1127 func (x *DatasetStats) GetUserInputTokenDistribution() *DatasetDistribution { 1128 if x != nil { 1129 return x.UserInputTokenDistribution 1130 } 1131 return nil 1132 } 1133 1134 func (x *DatasetStats) GetUserOutputTokenDistribution() *DatasetDistribution { 1135 if x != nil { 1136 return x.UserOutputTokenDistribution 1137 } 1138 return nil 1139 } 1140 1141 func (x *DatasetStats) GetUserMessagePerExampleDistribution() *DatasetDistribution { 1142 if x != nil { 1143 return x.UserMessagePerExampleDistribution 1144 } 1145 return nil 1146 } 1147 1148 func (x *DatasetStats) GetUserDatasetExamples() []*Content { 1149 if x != nil { 1150 return x.UserDatasetExamples 1151 } 1152 return nil 1153 } 1154 1155 // Statistics computed for datasets used for distillation. 1156 type DistillationDataStats struct { 1157 state protoimpl.MessageState 1158 sizeCache protoimpl.SizeCache 1159 unknownFields protoimpl.UnknownFields 1160 1161 // Output only. Statistics computed for the training dataset. 1162 TrainingDatasetStats *DatasetStats `protobuf:"bytes,1,opt,name=training_dataset_stats,json=trainingDatasetStats,proto3" json:"training_dataset_stats,omitempty"` 1163 } 1164 1165 func (x *DistillationDataStats) Reset() { 1166 *x = DistillationDataStats{} 1167 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[6] 1168 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1169 ms.StoreMessageInfo(mi) 1170 } 1171 1172 func (x *DistillationDataStats) String() string { 1173 return protoimpl.X.MessageStringOf(x) 1174 } 1175 1176 func (*DistillationDataStats) ProtoMessage() {} 1177 1178 func (x *DistillationDataStats) ProtoReflect() protoreflect.Message { 1179 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[6] 1180 if x != nil { 1181 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1182 if ms.LoadMessageInfo() == nil { 1183 ms.StoreMessageInfo(mi) 1184 } 1185 return ms 1186 } 1187 return mi.MessageOf(x) 1188 } 1189 1190 // Deprecated: Use DistillationDataStats.ProtoReflect.Descriptor instead. 1191 func (*DistillationDataStats) Descriptor() ([]byte, []int) { 1192 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{6} 1193 } 1194 1195 func (x *DistillationDataStats) GetTrainingDatasetStats() *DatasetStats { 1196 if x != nil { 1197 return x.TrainingDatasetStats 1198 } 1199 return nil 1200 } 1201 1202 // The tuning data statistic values for 1203 // [TuningJob][google.cloud.aiplatform.v1.TuningJob]. 1204 type TuningDataStats struct { 1205 state protoimpl.MessageState 1206 sizeCache protoimpl.SizeCache 1207 unknownFields protoimpl.UnknownFields 1208 1209 // Types that are assignable to TuningDataStats: 1210 // 1211 // *TuningDataStats_SupervisedTuningDataStats 1212 // *TuningDataStats_DistillationDataStats 1213 TuningDataStats isTuningDataStats_TuningDataStats `protobuf_oneof:"tuning_data_stats"` 1214 } 1215 1216 func (x *TuningDataStats) Reset() { 1217 *x = TuningDataStats{} 1218 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[7] 1219 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1220 ms.StoreMessageInfo(mi) 1221 } 1222 1223 func (x *TuningDataStats) String() string { 1224 return protoimpl.X.MessageStringOf(x) 1225 } 1226 1227 func (*TuningDataStats) ProtoMessage() {} 1228 1229 func (x *TuningDataStats) ProtoReflect() protoreflect.Message { 1230 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[7] 1231 if x != nil { 1232 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1233 if ms.LoadMessageInfo() == nil { 1234 ms.StoreMessageInfo(mi) 1235 } 1236 return ms 1237 } 1238 return mi.MessageOf(x) 1239 } 1240 1241 // Deprecated: Use TuningDataStats.ProtoReflect.Descriptor instead. 1242 func (*TuningDataStats) Descriptor() ([]byte, []int) { 1243 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{7} 1244 } 1245 1246 func (m *TuningDataStats) GetTuningDataStats() isTuningDataStats_TuningDataStats { 1247 if m != nil { 1248 return m.TuningDataStats 1249 } 1250 return nil 1251 } 1252 1253 func (x *TuningDataStats) GetSupervisedTuningDataStats() *SupervisedTuningDataStats { 1254 if x, ok := x.GetTuningDataStats().(*TuningDataStats_SupervisedTuningDataStats); ok { 1255 return x.SupervisedTuningDataStats 1256 } 1257 return nil 1258 } 1259 1260 func (x *TuningDataStats) GetDistillationDataStats() *DistillationDataStats { 1261 if x, ok := x.GetTuningDataStats().(*TuningDataStats_DistillationDataStats); ok { 1262 return x.DistillationDataStats 1263 } 1264 return nil 1265 } 1266 1267 type isTuningDataStats_TuningDataStats interface { 1268 isTuningDataStats_TuningDataStats() 1269 } 1270 1271 type TuningDataStats_SupervisedTuningDataStats struct { 1272 // The SFT Tuning data stats. 1273 SupervisedTuningDataStats *SupervisedTuningDataStats `protobuf:"bytes,1,opt,name=supervised_tuning_data_stats,json=supervisedTuningDataStats,proto3,oneof"` 1274 } 1275 1276 type TuningDataStats_DistillationDataStats struct { 1277 // Output only. Statistics for distillation. 1278 DistillationDataStats *DistillationDataStats `protobuf:"bytes,3,opt,name=distillation_data_stats,json=distillationDataStats,proto3,oneof"` 1279 } 1280 1281 func (*TuningDataStats_SupervisedTuningDataStats) isTuningDataStats_TuningDataStats() {} 1282 1283 func (*TuningDataStats_DistillationDataStats) isTuningDataStats_TuningDataStats() {} 1284 1285 // Hyperparameters for SFT. 1286 type SupervisedHyperParameters struct { 1287 state protoimpl.MessageState 1288 sizeCache protoimpl.SizeCache 1289 unknownFields protoimpl.UnknownFields 1290 1291 // Optional. Number of complete passes the model makes over the entire 1292 // training dataset during training. 1293 EpochCount int64 `protobuf:"varint,1,opt,name=epoch_count,json=epochCount,proto3" json:"epoch_count,omitempty"` 1294 // Optional. Multiplier for adjusting the default learning rate. 1295 // Mutually exclusive with `learning_rate`. 1296 LearningRateMultiplier float64 `protobuf:"fixed64,2,opt,name=learning_rate_multiplier,json=learningRateMultiplier,proto3" json:"learning_rate_multiplier,omitempty"` 1297 // Optional. Learning rate for tuning. 1298 // Mutually exclusive with `learning_rate_multiplier`. 1299 // This feature is only available for open source models. 1300 LearningRate float64 `protobuf:"fixed64,6,opt,name=learning_rate,json=learningRate,proto3" json:"learning_rate,omitempty"` 1301 // Optional. Adapter size for tuning. 1302 AdapterSize SupervisedHyperParameters_AdapterSize `protobuf:"varint,3,opt,name=adapter_size,json=adapterSize,proto3,enum=google.cloud.aiplatform.v1beta1.SupervisedHyperParameters_AdapterSize" json:"adapter_size,omitempty"` 1303 // Optional. Batch size for tuning. 1304 // This feature is only available for open source models. 1305 BatchSize int64 `protobuf:"varint,5,opt,name=batch_size,json=batchSize,proto3" json:"batch_size,omitempty"` 1306 } 1307 1308 func (x *SupervisedHyperParameters) Reset() { 1309 *x = SupervisedHyperParameters{} 1310 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[8] 1311 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1312 ms.StoreMessageInfo(mi) 1313 } 1314 1315 func (x *SupervisedHyperParameters) String() string { 1316 return protoimpl.X.MessageStringOf(x) 1317 } 1318 1319 func (*SupervisedHyperParameters) ProtoMessage() {} 1320 1321 func (x *SupervisedHyperParameters) ProtoReflect() protoreflect.Message { 1322 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[8] 1323 if x != nil { 1324 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1325 if ms.LoadMessageInfo() == nil { 1326 ms.StoreMessageInfo(mi) 1327 } 1328 return ms 1329 } 1330 return mi.MessageOf(x) 1331 } 1332 1333 // Deprecated: Use SupervisedHyperParameters.ProtoReflect.Descriptor instead. 1334 func (*SupervisedHyperParameters) Descriptor() ([]byte, []int) { 1335 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{8} 1336 } 1337 1338 func (x *SupervisedHyperParameters) GetEpochCount() int64 { 1339 if x != nil { 1340 return x.EpochCount 1341 } 1342 return 0 1343 } 1344 1345 func (x *SupervisedHyperParameters) GetLearningRateMultiplier() float64 { 1346 if x != nil { 1347 return x.LearningRateMultiplier 1348 } 1349 return 0 1350 } 1351 1352 func (x *SupervisedHyperParameters) GetLearningRate() float64 { 1353 if x != nil { 1354 return x.LearningRate 1355 } 1356 return 0 1357 } 1358 1359 func (x *SupervisedHyperParameters) GetAdapterSize() SupervisedHyperParameters_AdapterSize { 1360 if x != nil { 1361 return x.AdapterSize 1362 } 1363 return SupervisedHyperParameters_ADAPTER_SIZE_UNSPECIFIED 1364 } 1365 1366 func (x *SupervisedHyperParameters) GetBatchSize() int64 { 1367 if x != nil { 1368 return x.BatchSize 1369 } 1370 return 0 1371 } 1372 1373 // Tuning Spec for Supervised Tuning for first party models. 1374 type SupervisedTuningSpec struct { 1375 state protoimpl.MessageState 1376 sizeCache protoimpl.SizeCache 1377 unknownFields protoimpl.UnknownFields 1378 1379 // Required. Training dataset used for tuning. The dataset can be specified as 1380 // either a Cloud Storage path to a JSONL file or as the resource name of a 1381 // Vertex Multimodal Dataset. 1382 TrainingDatasetUri string `protobuf:"bytes,1,opt,name=training_dataset_uri,json=trainingDatasetUri,proto3" json:"training_dataset_uri,omitempty"` 1383 // Optional. Validation dataset used for tuning. The dataset can be specified 1384 // as either a Cloud Storage path to a JSONL file or as the resource name of a 1385 // Vertex Multimodal Dataset. 1386 ValidationDatasetUri string `protobuf:"bytes,2,opt,name=validation_dataset_uri,json=validationDatasetUri,proto3" json:"validation_dataset_uri,omitempty"` 1387 // Optional. Hyperparameters for SFT. 1388 HyperParameters *SupervisedHyperParameters `protobuf:"bytes,3,opt,name=hyper_parameters,json=hyperParameters,proto3" json:"hyper_parameters,omitempty"` 1389 // Optional. If set to true, disable intermediate checkpoints for SFT and only 1390 // the last checkpoint will be exported. Otherwise, enable intermediate 1391 // checkpoints for SFT. Default is false. 1392 ExportLastCheckpointOnly bool `protobuf:"varint,6,opt,name=export_last_checkpoint_only,json=exportLastCheckpointOnly,proto3" json:"export_last_checkpoint_only,omitempty"` 1393 // Optional. Evaluation Config for Tuning Job. 1394 EvaluationConfig *EvaluationConfig `protobuf:"bytes,5,opt,name=evaluation_config,json=evaluationConfig,proto3" json:"evaluation_config,omitempty"` 1395 // Tuning mode. 1396 TuningMode SupervisedTuningSpec_TuningMode `protobuf:"varint,7,opt,name=tuning_mode,json=tuningMode,proto3,enum=google.cloud.aiplatform.v1beta1.SupervisedTuningSpec_TuningMode" json:"tuning_mode,omitempty"` 1397 } 1398 1399 func (x *SupervisedTuningSpec) Reset() { 1400 *x = SupervisedTuningSpec{} 1401 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[9] 1402 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1403 ms.StoreMessageInfo(mi) 1404 } 1405 1406 func (x *SupervisedTuningSpec) String() string { 1407 return protoimpl.X.MessageStringOf(x) 1408 } 1409 1410 func (*SupervisedTuningSpec) ProtoMessage() {} 1411 1412 func (x *SupervisedTuningSpec) ProtoReflect() protoreflect.Message { 1413 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[9] 1414 if x != nil { 1415 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1416 if ms.LoadMessageInfo() == nil { 1417 ms.StoreMessageInfo(mi) 1418 } 1419 return ms 1420 } 1421 return mi.MessageOf(x) 1422 } 1423 1424 // Deprecated: Use SupervisedTuningSpec.ProtoReflect.Descriptor instead. 1425 func (*SupervisedTuningSpec) Descriptor() ([]byte, []int) { 1426 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{9} 1427 } 1428 1429 func (x *SupervisedTuningSpec) GetTrainingDatasetUri() string { 1430 if x != nil { 1431 return x.TrainingDatasetUri 1432 } 1433 return "" 1434 } 1435 1436 func (x *SupervisedTuningSpec) GetValidationDatasetUri() string { 1437 if x != nil { 1438 return x.ValidationDatasetUri 1439 } 1440 return "" 1441 } 1442 1443 func (x *SupervisedTuningSpec) GetHyperParameters() *SupervisedHyperParameters { 1444 if x != nil { 1445 return x.HyperParameters 1446 } 1447 return nil 1448 } 1449 1450 func (x *SupervisedTuningSpec) GetExportLastCheckpointOnly() bool { 1451 if x != nil { 1452 return x.ExportLastCheckpointOnly 1453 } 1454 return false 1455 } 1456 1457 func (x *SupervisedTuningSpec) GetEvaluationConfig() *EvaluationConfig { 1458 if x != nil { 1459 return x.EvaluationConfig 1460 } 1461 return nil 1462 } 1463 1464 func (x *SupervisedTuningSpec) GetTuningMode() SupervisedTuningSpec_TuningMode { 1465 if x != nil { 1466 return x.TuningMode 1467 } 1468 return SupervisedTuningSpec_TUNING_MODE_UNSPECIFIED 1469 } 1470 1471 // Tuning Spec for Distillation. 1472 type DistillationSpec struct { 1473 state protoimpl.MessageState 1474 sizeCache protoimpl.SizeCache 1475 unknownFields protoimpl.UnknownFields 1476 1477 // The teacher model that is being distilled from. See [Supported 1478 // models](https://cloud.google.com/vertex-ai/generative-ai/docs/model-reference/tuning#supported_models). 1479 // 1480 // Types that are assignable to TeacherModel: 1481 // 1482 // *DistillationSpec_BaseTeacherModel 1483 // *DistillationSpec_TunedTeacherModelSource 1484 TeacherModel isDistillationSpec_TeacherModel `protobuf_oneof:"teacher_model"` 1485 // Required. Cloud Storage path to file containing training dataset for 1486 // tuning. The dataset must be formatted as a JSONL file. 1487 TrainingDatasetUri string `protobuf:"bytes,1,opt,name=training_dataset_uri,json=trainingDatasetUri,proto3" json:"training_dataset_uri,omitempty"` 1488 // Optional. Cloud Storage path to file containing validation dataset for 1489 // tuning. The dataset must be formatted as a JSONL file. 1490 ValidationDatasetUri *string `protobuf:"bytes,2,opt,name=validation_dataset_uri,json=validationDatasetUri,proto3,oneof" json:"validation_dataset_uri,omitempty"` 1491 // Optional. Hyperparameters for Distillation. 1492 HyperParameters *DistillationHyperParameters `protobuf:"bytes,3,opt,name=hyper_parameters,json=hyperParameters,proto3" json:"hyper_parameters,omitempty"` 1493 // The student model that is being tuned, e.g., "google/gemma-2b-1.1-it". 1494 StudentModel string `protobuf:"bytes,4,opt,name=student_model,json=studentModel,proto3" json:"student_model,omitempty"` 1495 // Required. A path in a Cloud Storage bucket, which will be treated as the 1496 // root output directory of the distillation pipeline. It is used by the 1497 // system to generate the paths of output artifacts. 1498 PipelineRootDirectory string `protobuf:"bytes,7,opt,name=pipeline_root_directory,json=pipelineRootDirectory,proto3" json:"pipeline_root_directory,omitempty"` 1499 } 1500 1501 func (x *DistillationSpec) Reset() { 1502 *x = DistillationSpec{} 1503 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[10] 1504 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1505 ms.StoreMessageInfo(mi) 1506 } 1507 1508 func (x *DistillationSpec) String() string { 1509 return protoimpl.X.MessageStringOf(x) 1510 } 1511 1512 func (*DistillationSpec) ProtoMessage() {} 1513 1514 func (x *DistillationSpec) ProtoReflect() protoreflect.Message { 1515 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[10] 1516 if x != nil { 1517 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1518 if ms.LoadMessageInfo() == nil { 1519 ms.StoreMessageInfo(mi) 1520 } 1521 return ms 1522 } 1523 return mi.MessageOf(x) 1524 } 1525 1526 // Deprecated: Use DistillationSpec.ProtoReflect.Descriptor instead. 1527 func (*DistillationSpec) Descriptor() ([]byte, []int) { 1528 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{10} 1529 } 1530 1531 func (m *DistillationSpec) GetTeacherModel() isDistillationSpec_TeacherModel { 1532 if m != nil { 1533 return m.TeacherModel 1534 } 1535 return nil 1536 } 1537 1538 func (x *DistillationSpec) GetBaseTeacherModel() string { 1539 if x, ok := x.GetTeacherModel().(*DistillationSpec_BaseTeacherModel); ok { 1540 return x.BaseTeacherModel 1541 } 1542 return "" 1543 } 1544 1545 func (x *DistillationSpec) GetTunedTeacherModelSource() string { 1546 if x, ok := x.GetTeacherModel().(*DistillationSpec_TunedTeacherModelSource); ok { 1547 return x.TunedTeacherModelSource 1548 } 1549 return "" 1550 } 1551 1552 func (x *DistillationSpec) GetTrainingDatasetUri() string { 1553 if x != nil { 1554 return x.TrainingDatasetUri 1555 } 1556 return "" 1557 } 1558 1559 func (x *DistillationSpec) GetValidationDatasetUri() string { 1560 if x != nil && x.ValidationDatasetUri != nil { 1561 return *x.ValidationDatasetUri 1562 } 1563 return "" 1564 } 1565 1566 func (x *DistillationSpec) GetHyperParameters() *DistillationHyperParameters { 1567 if x != nil { 1568 return x.HyperParameters 1569 } 1570 return nil 1571 } 1572 1573 func (x *DistillationSpec) GetStudentModel() string { 1574 if x != nil { 1575 return x.StudentModel 1576 } 1577 return "" 1578 } 1579 1580 func (x *DistillationSpec) GetPipelineRootDirectory() string { 1581 if x != nil { 1582 return x.PipelineRootDirectory 1583 } 1584 return "" 1585 } 1586 1587 type isDistillationSpec_TeacherModel interface { 1588 isDistillationSpec_TeacherModel() 1589 } 1590 1591 type DistillationSpec_BaseTeacherModel struct { 1592 // The base teacher model that is being distilled. See [Supported 1593 // models](https://cloud.google.com/vertex-ai/generative-ai/docs/model-reference/tuning#supported_models). 1594 BaseTeacherModel string `protobuf:"bytes,5,opt,name=base_teacher_model,json=baseTeacherModel,proto3,oneof"` 1595 } 1596 1597 type DistillationSpec_TunedTeacherModelSource struct { 1598 // The resource name of the Tuned teacher model. Format: 1599 // `projects/{project}/locations/{location}/models/{model}`. 1600 TunedTeacherModelSource string `protobuf:"bytes,6,opt,name=tuned_teacher_model_source,json=tunedTeacherModelSource,proto3,oneof"` 1601 } 1602 1603 func (*DistillationSpec_BaseTeacherModel) isDistillationSpec_TeacherModel() {} 1604 1605 func (*DistillationSpec_TunedTeacherModelSource) isDistillationSpec_TeacherModel() {} 1606 1607 // Hyperparameters for Distillation. 1608 type DistillationHyperParameters struct { 1609 state protoimpl.MessageState 1610 sizeCache protoimpl.SizeCache 1611 unknownFields protoimpl.UnknownFields 1612 1613 // Optional. Number of complete passes the model makes over the entire 1614 // training dataset during training. 1615 EpochCount *int64 `protobuf:"varint,1,opt,name=epoch_count,json=epochCount,proto3,oneof" json:"epoch_count,omitempty"` 1616 // Optional. Multiplier for adjusting the default learning rate. 1617 LearningRateMultiplier *float64 `protobuf:"fixed64,2,opt,name=learning_rate_multiplier,json=learningRateMultiplier,proto3,oneof" json:"learning_rate_multiplier,omitempty"` 1618 // Optional. Adapter size for distillation. 1619 AdapterSize SupervisedHyperParameters_AdapterSize `protobuf:"varint,3,opt,name=adapter_size,json=adapterSize,proto3,enum=google.cloud.aiplatform.v1beta1.SupervisedHyperParameters_AdapterSize" json:"adapter_size,omitempty"` 1620 } 1621 1622 func (x *DistillationHyperParameters) Reset() { 1623 *x = DistillationHyperParameters{} 1624 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[11] 1625 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1626 ms.StoreMessageInfo(mi) 1627 } 1628 1629 func (x *DistillationHyperParameters) String() string { 1630 return protoimpl.X.MessageStringOf(x) 1631 } 1632 1633 func (*DistillationHyperParameters) ProtoMessage() {} 1634 1635 func (x *DistillationHyperParameters) ProtoReflect() protoreflect.Message { 1636 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[11] 1637 if x != nil { 1638 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1639 if ms.LoadMessageInfo() == nil { 1640 ms.StoreMessageInfo(mi) 1641 } 1642 return ms 1643 } 1644 return mi.MessageOf(x) 1645 } 1646 1647 // Deprecated: Use DistillationHyperParameters.ProtoReflect.Descriptor instead. 1648 func (*DistillationHyperParameters) Descriptor() ([]byte, []int) { 1649 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{11} 1650 } 1651 1652 func (x *DistillationHyperParameters) GetEpochCount() int64 { 1653 if x != nil && x.EpochCount != nil { 1654 return *x.EpochCount 1655 } 1656 return 0 1657 } 1658 1659 func (x *DistillationHyperParameters) GetLearningRateMultiplier() float64 { 1660 if x != nil && x.LearningRateMultiplier != nil { 1661 return *x.LearningRateMultiplier 1662 } 1663 return 0 1664 } 1665 1666 func (x *DistillationHyperParameters) GetAdapterSize() SupervisedHyperParameters_AdapterSize { 1667 if x != nil { 1668 return x.AdapterSize 1669 } 1670 return SupervisedHyperParameters_ADAPTER_SIZE_UNSPECIFIED 1671 } 1672 1673 // Tuning spec for Partner models. 1674 type PartnerModelTuningSpec struct { 1675 state protoimpl.MessageState 1676 sizeCache protoimpl.SizeCache 1677 unknownFields protoimpl.UnknownFields 1678 1679 // Required. Cloud Storage path to file containing training dataset for 1680 // tuning. The dataset must be formatted as a JSONL file. 1681 TrainingDatasetUri string `protobuf:"bytes,1,opt,name=training_dataset_uri,json=trainingDatasetUri,proto3" json:"training_dataset_uri,omitempty"` 1682 // Optional. Cloud Storage path to file containing validation dataset for 1683 // tuning. The dataset must be formatted as a JSONL file. 1684 ValidationDatasetUri string `protobuf:"bytes,2,opt,name=validation_dataset_uri,json=validationDatasetUri,proto3" json:"validation_dataset_uri,omitempty"` 1685 // Hyperparameters for tuning. The accepted hyper_parameters and their valid 1686 // range of values will differ depending on the base model. 1687 HyperParameters map[string]*structpb.Value `protobuf:"bytes,3,rep,name=hyper_parameters,json=hyperParameters,proto3" json:"hyper_parameters,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 1688 } 1689 1690 func (x *PartnerModelTuningSpec) Reset() { 1691 *x = PartnerModelTuningSpec{} 1692 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[12] 1693 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1694 ms.StoreMessageInfo(mi) 1695 } 1696 1697 func (x *PartnerModelTuningSpec) String() string { 1698 return protoimpl.X.MessageStringOf(x) 1699 } 1700 1701 func (*PartnerModelTuningSpec) ProtoMessage() {} 1702 1703 func (x *PartnerModelTuningSpec) ProtoReflect() protoreflect.Message { 1704 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[12] 1705 if x != nil { 1706 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1707 if ms.LoadMessageInfo() == nil { 1708 ms.StoreMessageInfo(mi) 1709 } 1710 return ms 1711 } 1712 return mi.MessageOf(x) 1713 } 1714 1715 // Deprecated: Use PartnerModelTuningSpec.ProtoReflect.Descriptor instead. 1716 func (*PartnerModelTuningSpec) Descriptor() ([]byte, []int) { 1717 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{12} 1718 } 1719 1720 func (x *PartnerModelTuningSpec) GetTrainingDatasetUri() string { 1721 if x != nil { 1722 return x.TrainingDatasetUri 1723 } 1724 return "" 1725 } 1726 1727 func (x *PartnerModelTuningSpec) GetValidationDatasetUri() string { 1728 if x != nil { 1729 return x.ValidationDatasetUri 1730 } 1731 return "" 1732 } 1733 1734 func (x *PartnerModelTuningSpec) GetHyperParameters() map[string]*structpb.Value { 1735 if x != nil { 1736 return x.HyperParameters 1737 } 1738 return nil 1739 } 1740 1741 // TunedModel Reference for legacy model migration. 1742 type TunedModelRef struct { 1743 state protoimpl.MessageState 1744 sizeCache protoimpl.SizeCache 1745 unknownFields protoimpl.UnknownFields 1746 1747 // The Tuned Model Reference for the model. 1748 // 1749 // Types that are assignable to TunedModelRef: 1750 // 1751 // *TunedModelRef_TunedModel 1752 // *TunedModelRef_TuningJob 1753 // *TunedModelRef_PipelineJob 1754 TunedModelRef isTunedModelRef_TunedModelRef `protobuf_oneof:"tuned_model_ref"` 1755 } 1756 1757 func (x *TunedModelRef) Reset() { 1758 *x = TunedModelRef{} 1759 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[13] 1760 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1761 ms.StoreMessageInfo(mi) 1762 } 1763 1764 func (x *TunedModelRef) String() string { 1765 return protoimpl.X.MessageStringOf(x) 1766 } 1767 1768 func (*TunedModelRef) ProtoMessage() {} 1769 1770 func (x *TunedModelRef) ProtoReflect() protoreflect.Message { 1771 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[13] 1772 if x != nil { 1773 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1774 if ms.LoadMessageInfo() == nil { 1775 ms.StoreMessageInfo(mi) 1776 } 1777 return ms 1778 } 1779 return mi.MessageOf(x) 1780 } 1781 1782 // Deprecated: Use TunedModelRef.ProtoReflect.Descriptor instead. 1783 func (*TunedModelRef) Descriptor() ([]byte, []int) { 1784 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{13} 1785 } 1786 1787 func (m *TunedModelRef) GetTunedModelRef() isTunedModelRef_TunedModelRef { 1788 if m != nil { 1789 return m.TunedModelRef 1790 } 1791 return nil 1792 } 1793 1794 func (x *TunedModelRef) GetTunedModel() string { 1795 if x, ok := x.GetTunedModelRef().(*TunedModelRef_TunedModel); ok { 1796 return x.TunedModel 1797 } 1798 return "" 1799 } 1800 1801 func (x *TunedModelRef) GetTuningJob() string { 1802 if x, ok := x.GetTunedModelRef().(*TunedModelRef_TuningJob); ok { 1803 return x.TuningJob 1804 } 1805 return "" 1806 } 1807 1808 func (x *TunedModelRef) GetPipelineJob() string { 1809 if x, ok := x.GetTunedModelRef().(*TunedModelRef_PipelineJob); ok { 1810 return x.PipelineJob 1811 } 1812 return "" 1813 } 1814 1815 type isTunedModelRef_TunedModelRef interface { 1816 isTunedModelRef_TunedModelRef() 1817 } 1818 1819 type TunedModelRef_TunedModel struct { 1820 // Support migration from model registry. 1821 TunedModel string `protobuf:"bytes,1,opt,name=tuned_model,json=tunedModel,proto3,oneof"` 1822 } 1823 1824 type TunedModelRef_TuningJob struct { 1825 // Support migration from tuning job list page, from gemini-1.0-pro-002 1826 // to 1.5 and above. 1827 TuningJob string `protobuf:"bytes,2,opt,name=tuning_job,json=tuningJob,proto3,oneof"` 1828 } 1829 1830 type TunedModelRef_PipelineJob struct { 1831 // Support migration from tuning job list page, from bison model to gemini 1832 // model. 1833 PipelineJob string `protobuf:"bytes,3,opt,name=pipeline_job,json=pipelineJob,proto3,oneof"` 1834 } 1835 1836 func (*TunedModelRef_TunedModel) isTunedModelRef_TunedModelRef() {} 1837 1838 func (*TunedModelRef_TuningJob) isTunedModelRef_TunedModelRef() {} 1839 1840 func (*TunedModelRef_PipelineJob) isTunedModelRef_TunedModelRef() {} 1841 1842 // Hyperparameters for Veo. 1843 type VeoHyperParameters struct { 1844 state protoimpl.MessageState 1845 sizeCache protoimpl.SizeCache 1846 unknownFields protoimpl.UnknownFields 1847 1848 // Optional. Number of complete passes the model makes over the entire 1849 // training dataset during training. 1850 EpochCount int64 `protobuf:"varint,1,opt,name=epoch_count,json=epochCount,proto3" json:"epoch_count,omitempty"` 1851 // Optional. Multiplier for adjusting the default learning rate. 1852 LearningRateMultiplier float64 `protobuf:"fixed64,2,opt,name=learning_rate_multiplier,json=learningRateMultiplier,proto3" json:"learning_rate_multiplier,omitempty"` 1853 // Optional. The tuning task. Either I2V or T2V. 1854 TuningTask VeoHyperParameters_TuningTask `protobuf:"varint,3,opt,name=tuning_task,json=tuningTask,proto3,enum=google.cloud.aiplatform.v1beta1.VeoHyperParameters_TuningTask" json:"tuning_task,omitempty"` 1855 } 1856 1857 func (x *VeoHyperParameters) Reset() { 1858 *x = VeoHyperParameters{} 1859 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[14] 1860 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1861 ms.StoreMessageInfo(mi) 1862 } 1863 1864 func (x *VeoHyperParameters) String() string { 1865 return protoimpl.X.MessageStringOf(x) 1866 } 1867 1868 func (*VeoHyperParameters) ProtoMessage() {} 1869 1870 func (x *VeoHyperParameters) ProtoReflect() protoreflect.Message { 1871 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[14] 1872 if x != nil { 1873 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1874 if ms.LoadMessageInfo() == nil { 1875 ms.StoreMessageInfo(mi) 1876 } 1877 return ms 1878 } 1879 return mi.MessageOf(x) 1880 } 1881 1882 // Deprecated: Use VeoHyperParameters.ProtoReflect.Descriptor instead. 1883 func (*VeoHyperParameters) Descriptor() ([]byte, []int) { 1884 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{14} 1885 } 1886 1887 func (x *VeoHyperParameters) GetEpochCount() int64 { 1888 if x != nil { 1889 return x.EpochCount 1890 } 1891 return 0 1892 } 1893 1894 func (x *VeoHyperParameters) GetLearningRateMultiplier() float64 { 1895 if x != nil { 1896 return x.LearningRateMultiplier 1897 } 1898 return 0 1899 } 1900 1901 func (x *VeoHyperParameters) GetTuningTask() VeoHyperParameters_TuningTask { 1902 if x != nil { 1903 return x.TuningTask 1904 } 1905 return VeoHyperParameters_TUNING_TASK_UNSPECIFIED 1906 } 1907 1908 // Tuning Spec for Veo Model Tuning. 1909 type VeoTuningSpec struct { 1910 state protoimpl.MessageState 1911 sizeCache protoimpl.SizeCache 1912 unknownFields protoimpl.UnknownFields 1913 1914 // Required. Training dataset used for tuning. The dataset can be specified as 1915 // either a Cloud Storage path to a JSONL file or as the resource name of a 1916 // Vertex Multimodal Dataset. 1917 TrainingDatasetUri string `protobuf:"bytes,1,opt,name=training_dataset_uri,json=trainingDatasetUri,proto3" json:"training_dataset_uri,omitempty"` 1918 // Optional. Validation dataset used for tuning. The dataset can be specified 1919 // as either a Cloud Storage path to a JSONL file or as the resource name of a 1920 // Vertex Multimodal Dataset. 1921 ValidationDatasetUri string `protobuf:"bytes,2,opt,name=validation_dataset_uri,json=validationDatasetUri,proto3" json:"validation_dataset_uri,omitempty"` 1922 // Optional. Hyperparameters for Veo. 1923 HyperParameters *VeoHyperParameters `protobuf:"bytes,3,opt,name=hyper_parameters,json=hyperParameters,proto3" json:"hyper_parameters,omitempty"` 1924 } 1925 1926 func (x *VeoTuningSpec) Reset() { 1927 *x = VeoTuningSpec{} 1928 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[15] 1929 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1930 ms.StoreMessageInfo(mi) 1931 } 1932 1933 func (x *VeoTuningSpec) String() string { 1934 return protoimpl.X.MessageStringOf(x) 1935 } 1936 1937 func (*VeoTuningSpec) ProtoMessage() {} 1938 1939 func (x *VeoTuningSpec) ProtoReflect() protoreflect.Message { 1940 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[15] 1941 if x != nil { 1942 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1943 if ms.LoadMessageInfo() == nil { 1944 ms.StoreMessageInfo(mi) 1945 } 1946 return ms 1947 } 1948 return mi.MessageOf(x) 1949 } 1950 1951 // Deprecated: Use VeoTuningSpec.ProtoReflect.Descriptor instead. 1952 func (*VeoTuningSpec) Descriptor() ([]byte, []int) { 1953 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{15} 1954 } 1955 1956 func (x *VeoTuningSpec) GetTrainingDatasetUri() string { 1957 if x != nil { 1958 return x.TrainingDatasetUri 1959 } 1960 return "" 1961 } 1962 1963 func (x *VeoTuningSpec) GetValidationDatasetUri() string { 1964 if x != nil { 1965 return x.ValidationDatasetUri 1966 } 1967 return "" 1968 } 1969 1970 func (x *VeoTuningSpec) GetHyperParameters() *VeoHyperParameters { 1971 if x != nil { 1972 return x.HyperParameters 1973 } 1974 return nil 1975 } 1976 1977 // Evaluation Config for Tuning Job. 1978 type EvaluationConfig struct { 1979 state protoimpl.MessageState 1980 sizeCache protoimpl.SizeCache 1981 unknownFields protoimpl.UnknownFields 1982 1983 // Required. The metrics used for evaluation. 1984 Metrics []*Metric `protobuf:"bytes,1,rep,name=metrics,proto3" json:"metrics,omitempty"` 1985 // Required. Config for evaluation output. 1986 OutputConfig *OutputConfig `protobuf:"bytes,2,opt,name=output_config,json=outputConfig,proto3" json:"output_config,omitempty"` 1987 // Optional. Autorater config for evaluation. 1988 AutoraterConfig *AutoraterConfig `protobuf:"bytes,3,opt,name=autorater_config,json=autoraterConfig,proto3" json:"autorater_config,omitempty"` 1989 } 1990 1991 func (x *EvaluationConfig) Reset() { 1992 *x = EvaluationConfig{} 1993 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[16] 1994 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1995 ms.StoreMessageInfo(mi) 1996 } 1997 1998 func (x *EvaluationConfig) String() string { 1999 return protoimpl.X.MessageStringOf(x) 2000 } 2001 2002 func (*EvaluationConfig) ProtoMessage() {} 2003 2004 func (x *EvaluationConfig) ProtoReflect() protoreflect.Message { 2005 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[16] 2006 if x != nil { 2007 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2008 if ms.LoadMessageInfo() == nil { 2009 ms.StoreMessageInfo(mi) 2010 } 2011 return ms 2012 } 2013 return mi.MessageOf(x) 2014 } 2015 2016 // Deprecated: Use EvaluationConfig.ProtoReflect.Descriptor instead. 2017 func (*EvaluationConfig) Descriptor() ([]byte, []int) { 2018 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{16} 2019 } 2020 2021 func (x *EvaluationConfig) GetMetrics() []*Metric { 2022 if x != nil { 2023 return x.Metrics 2024 } 2025 return nil 2026 } 2027 2028 func (x *EvaluationConfig) GetOutputConfig() *OutputConfig { 2029 if x != nil { 2030 return x.OutputConfig 2031 } 2032 return nil 2033 } 2034 2035 func (x *EvaluationConfig) GetAutoraterConfig() *AutoraterConfig { 2036 if x != nil { 2037 return x.AutoraterConfig 2038 } 2039 return nil 2040 } 2041 2042 // Evaluate Dataset Run Result for Tuning Job. 2043 type EvaluateDatasetRun struct { 2044 state protoimpl.MessageState 2045 sizeCache protoimpl.SizeCache 2046 unknownFields protoimpl.UnknownFields 2047 2048 // Output only. The operation ID of the evaluation run. Format: 2049 // `projects/{project}/locations/{location}/operations/{operation_id}`. 2050 OperationName string `protobuf:"bytes,1,opt,name=operation_name,json=operationName,proto3" json:"operation_name,omitempty"` 2051 // Output only. The checkpoint id used in the evaluation run. Only populated 2052 // when evaluating checkpoints. 2053 CheckpointId string `protobuf:"bytes,2,opt,name=checkpoint_id,json=checkpointId,proto3" json:"checkpoint_id,omitempty"` 2054 // Output only. Results for EvaluationService.EvaluateDataset. 2055 EvaluateDatasetResponse *EvaluateDatasetResponse `protobuf:"bytes,3,opt,name=evaluate_dataset_response,json=evaluateDatasetResponse,proto3" json:"evaluate_dataset_response,omitempty"` 2056 // Output only. The error of the evaluation run if any. 2057 Error *status.Status `protobuf:"bytes,4,opt,name=error,proto3" json:"error,omitempty"` 2058 } 2059 2060 func (x *EvaluateDatasetRun) Reset() { 2061 *x = EvaluateDatasetRun{} 2062 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[17] 2063 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2064 ms.StoreMessageInfo(mi) 2065 } 2066 2067 func (x *EvaluateDatasetRun) String() string { 2068 return protoimpl.X.MessageStringOf(x) 2069 } 2070 2071 func (*EvaluateDatasetRun) ProtoMessage() {} 2072 2073 func (x *EvaluateDatasetRun) ProtoReflect() protoreflect.Message { 2074 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[17] 2075 if x != nil { 2076 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2077 if ms.LoadMessageInfo() == nil { 2078 ms.StoreMessageInfo(mi) 2079 } 2080 return ms 2081 } 2082 return mi.MessageOf(x) 2083 } 2084 2085 // Deprecated: Use EvaluateDatasetRun.ProtoReflect.Descriptor instead. 2086 func (*EvaluateDatasetRun) Descriptor() ([]byte, []int) { 2087 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{17} 2088 } 2089 2090 func (x *EvaluateDatasetRun) GetOperationName() string { 2091 if x != nil { 2092 return x.OperationName 2093 } 2094 return "" 2095 } 2096 2097 func (x *EvaluateDatasetRun) GetCheckpointId() string { 2098 if x != nil { 2099 return x.CheckpointId 2100 } 2101 return "" 2102 } 2103 2104 func (x *EvaluateDatasetRun) GetEvaluateDatasetResponse() *EvaluateDatasetResponse { 2105 if x != nil { 2106 return x.EvaluateDatasetResponse 2107 } 2108 return nil 2109 } 2110 2111 func (x *EvaluateDatasetRun) GetError() *status.Status { 2112 if x != nil { 2113 return x.Error 2114 } 2115 return nil 2116 } 2117 2118 // TunedModelCheckpoint for the Tuned Model of a Tuning Job. 2119 type TunedModelCheckpoint struct { 2120 state protoimpl.MessageState 2121 sizeCache protoimpl.SizeCache 2122 unknownFields protoimpl.UnknownFields 2123 2124 // The ID of the checkpoint. 2125 CheckpointId string `protobuf:"bytes,1,opt,name=checkpoint_id,json=checkpointId,proto3" json:"checkpoint_id,omitempty"` 2126 // The epoch of the checkpoint. 2127 Epoch int64 `protobuf:"varint,2,opt,name=epoch,proto3" json:"epoch,omitempty"` 2128 // The step of the checkpoint. 2129 Step int64 `protobuf:"varint,3,opt,name=step,proto3" json:"step,omitempty"` 2130 // The Endpoint resource name that the checkpoint is deployed to. Format: 2131 // `projects/{project}/locations/{location}/endpoints/{endpoint}`. 2132 Endpoint string `protobuf:"bytes,4,opt,name=endpoint,proto3" json:"endpoint,omitempty"` 2133 } 2134 2135 func (x *TunedModelCheckpoint) Reset() { 2136 *x = TunedModelCheckpoint{} 2137 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[18] 2138 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2139 ms.StoreMessageInfo(mi) 2140 } 2141 2142 func (x *TunedModelCheckpoint) String() string { 2143 return protoimpl.X.MessageStringOf(x) 2144 } 2145 2146 func (*TunedModelCheckpoint) ProtoMessage() {} 2147 2148 func (x *TunedModelCheckpoint) ProtoReflect() protoreflect.Message { 2149 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[18] 2150 if x != nil { 2151 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2152 if ms.LoadMessageInfo() == nil { 2153 ms.StoreMessageInfo(mi) 2154 } 2155 return ms 2156 } 2157 return mi.MessageOf(x) 2158 } 2159 2160 // Deprecated: Use TunedModelCheckpoint.ProtoReflect.Descriptor instead. 2161 func (*TunedModelCheckpoint) Descriptor() ([]byte, []int) { 2162 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{18} 2163 } 2164 2165 func (x *TunedModelCheckpoint) GetCheckpointId() string { 2166 if x != nil { 2167 return x.CheckpointId 2168 } 2169 return "" 2170 } 2171 2172 func (x *TunedModelCheckpoint) GetEpoch() int64 { 2173 if x != nil { 2174 return x.Epoch 2175 } 2176 return 0 2177 } 2178 2179 func (x *TunedModelCheckpoint) GetStep() int64 { 2180 if x != nil { 2181 return x.Step 2182 } 2183 return 0 2184 } 2185 2186 func (x *TunedModelCheckpoint) GetEndpoint() string { 2187 if x != nil { 2188 return x.Endpoint 2189 } 2190 return "" 2191 } 2192 2193 // A pre-tuned model for continuous tuning. 2194 type PreTunedModel struct { 2195 state protoimpl.MessageState 2196 sizeCache protoimpl.SizeCache 2197 unknownFields protoimpl.UnknownFields 2198 2199 // The resource name of the Model. 2200 // E.g., a model resource name with a specified version id or alias: 2201 // 2202 // `projects/{project}/locations/{location}/models/{model}@{version_id}` 2203 // 2204 // `projects/{project}/locations/{location}/models/{model}@{alias}` 2205 // 2206 // Or, omit the version id to use the default version: 2207 // 2208 // `projects/{project}/locations/{location}/models/{model}` 2209 TunedModelName string `protobuf:"bytes,1,opt,name=tuned_model_name,json=tunedModelName,proto3" json:"tuned_model_name,omitempty"` 2210 // Optional. The source checkpoint id. If not specified, the default 2211 // checkpoint will be used. 2212 CheckpointId string `protobuf:"bytes,2,opt,name=checkpoint_id,json=checkpointId,proto3" json:"checkpoint_id,omitempty"` 2213 // Output only. The name of the base model this 2214 // [PreTunedModel][google.cloud.aiplatform.v1beta1.PreTunedModel] was tuned 2215 // from. 2216 BaseModel string `protobuf:"bytes,3,opt,name=base_model,json=baseModel,proto3" json:"base_model,omitempty"` 2217 } 2218 2219 func (x *PreTunedModel) Reset() { 2220 *x = PreTunedModel{} 2221 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[19] 2222 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2223 ms.StoreMessageInfo(mi) 2224 } 2225 2226 func (x *PreTunedModel) String() string { 2227 return protoimpl.X.MessageStringOf(x) 2228 } 2229 2230 func (*PreTunedModel) ProtoMessage() {} 2231 2232 func (x *PreTunedModel) ProtoReflect() protoreflect.Message { 2233 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[19] 2234 if x != nil { 2235 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2236 if ms.LoadMessageInfo() == nil { 2237 ms.StoreMessageInfo(mi) 2238 } 2239 return ms 2240 } 2241 return mi.MessageOf(x) 2242 } 2243 2244 // Deprecated: Use PreTunedModel.ProtoReflect.Descriptor instead. 2245 func (*PreTunedModel) Descriptor() ([]byte, []int) { 2246 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{19} 2247 } 2248 2249 func (x *PreTunedModel) GetTunedModelName() string { 2250 if x != nil { 2251 return x.TunedModelName 2252 } 2253 return "" 2254 } 2255 2256 func (x *PreTunedModel) GetCheckpointId() string { 2257 if x != nil { 2258 return x.CheckpointId 2259 } 2260 return "" 2261 } 2262 2263 func (x *PreTunedModel) GetBaseModel() string { 2264 if x != nil { 2265 return x.BaseModel 2266 } 2267 return "" 2268 } 2269 2270 // Dataset bucket used to create a histogram for the distribution given a 2271 // population of values. 2272 type SupervisedTuningDatasetDistribution_DatasetBucket struct { 2273 state protoimpl.MessageState 2274 sizeCache protoimpl.SizeCache 2275 unknownFields protoimpl.UnknownFields 2276 2277 // Output only. Number of values in the bucket. 2278 Count float64 `protobuf:"fixed64,1,opt,name=count,proto3" json:"count,omitempty"` 2279 // Output only. Left bound of the bucket. 2280 Left float64 `protobuf:"fixed64,2,opt,name=left,proto3" json:"left,omitempty"` 2281 // Output only. Right bound of the bucket. 2282 Right float64 `protobuf:"fixed64,3,opt,name=right,proto3" json:"right,omitempty"` 2283 } 2284 2285 func (x *SupervisedTuningDatasetDistribution_DatasetBucket) Reset() { 2286 *x = SupervisedTuningDatasetDistribution_DatasetBucket{} 2287 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[21] 2288 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2289 ms.StoreMessageInfo(mi) 2290 } 2291 2292 func (x *SupervisedTuningDatasetDistribution_DatasetBucket) String() string { 2293 return protoimpl.X.MessageStringOf(x) 2294 } 2295 2296 func (*SupervisedTuningDatasetDistribution_DatasetBucket) ProtoMessage() {} 2297 2298 func (x *SupervisedTuningDatasetDistribution_DatasetBucket) ProtoReflect() protoreflect.Message { 2299 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[21] 2300 if x != nil { 2301 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2302 if ms.LoadMessageInfo() == nil { 2303 ms.StoreMessageInfo(mi) 2304 } 2305 return ms 2306 } 2307 return mi.MessageOf(x) 2308 } 2309 2310 // Deprecated: Use SupervisedTuningDatasetDistribution_DatasetBucket.ProtoReflect.Descriptor instead. 2311 func (*SupervisedTuningDatasetDistribution_DatasetBucket) Descriptor() ([]byte, []int) { 2312 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{2, 0} 2313 } 2314 2315 func (x *SupervisedTuningDatasetDistribution_DatasetBucket) GetCount() float64 { 2316 if x != nil { 2317 return x.Count 2318 } 2319 return 0 2320 } 2321 2322 func (x *SupervisedTuningDatasetDistribution_DatasetBucket) GetLeft() float64 { 2323 if x != nil { 2324 return x.Left 2325 } 2326 return 0 2327 } 2328 2329 func (x *SupervisedTuningDatasetDistribution_DatasetBucket) GetRight() float64 { 2330 if x != nil { 2331 return x.Right 2332 } 2333 return 0 2334 } 2335 2336 // Dataset bucket used to create a histogram for the distribution given a 2337 // population of values. 2338 type DatasetDistribution_DistributionBucket struct { 2339 state protoimpl.MessageState 2340 sizeCache protoimpl.SizeCache 2341 unknownFields protoimpl.UnknownFields 2342 2343 // Output only. Number of values in the bucket. 2344 Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"` 2345 // Output only. Left bound of the bucket. 2346 Left float64 `protobuf:"fixed64,2,opt,name=left,proto3" json:"left,omitempty"` 2347 // Output only. Right bound of the bucket. 2348 Right float64 `protobuf:"fixed64,3,opt,name=right,proto3" json:"right,omitempty"` 2349 } 2350 2351 func (x *DatasetDistribution_DistributionBucket) Reset() { 2352 *x = DatasetDistribution_DistributionBucket{} 2353 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[22] 2354 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2355 ms.StoreMessageInfo(mi) 2356 } 2357 2358 func (x *DatasetDistribution_DistributionBucket) String() string { 2359 return protoimpl.X.MessageStringOf(x) 2360 } 2361 2362 func (*DatasetDistribution_DistributionBucket) ProtoMessage() {} 2363 2364 func (x *DatasetDistribution_DistributionBucket) ProtoReflect() protoreflect.Message { 2365 mi := &file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[22] 2366 if x != nil { 2367 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2368 if ms.LoadMessageInfo() == nil { 2369 ms.StoreMessageInfo(mi) 2370 } 2371 return ms 2372 } 2373 return mi.MessageOf(x) 2374 } 2375 2376 // Deprecated: Use DatasetDistribution_DistributionBucket.ProtoReflect.Descriptor instead. 2377 func (*DatasetDistribution_DistributionBucket) Descriptor() ([]byte, []int) { 2378 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP(), []int{4, 0} 2379 } 2380 2381 func (x *DatasetDistribution_DistributionBucket) GetCount() int64 { 2382 if x != nil { 2383 return x.Count 2384 } 2385 return 0 2386 } 2387 2388 func (x *DatasetDistribution_DistributionBucket) GetLeft() float64 { 2389 if x != nil { 2390 return x.Left 2391 } 2392 return 0 2393 } 2394 2395 func (x *DatasetDistribution_DistributionBucket) GetRight() float64 { 2396 if x != nil { 2397 return x.Right 2398 } 2399 return 0 2400 } 2401 2402 var File_google_cloud_aiplatform_v1beta1_tuning_job_proto protoreflect.FileDescriptor 2403 2404 var file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDesc = []byte{ 2405 0x0a, 0x30, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 2406 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 2407 0x31, 0x2f, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6a, 0x6f, 0x62, 0x2e, 0x70, 0x72, 0x6f, 2408 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 2409 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 2410 0x74, 0x61, 0x31, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 2411 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 2412 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 2413 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 2414 0x2d, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 2415 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 2416 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x35, 2417 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 2418 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 2419 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x2e, 2420 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x38, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 2421 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 2422 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 2423 0x6e, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 2424 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x69, 2425 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 2426 0x2f, 0x6a, 0x6f, 0x62, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 2427 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 2428 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 2429 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 2430 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 2431 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x72, 0x70, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x74, 2432 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xe8, 0x0f, 0x0a, 0x09, 0x54, 0x75, 0x6e, 2433 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x12, 0x1f, 0x0a, 0x0a, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6d, 2434 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x09, 0x62, 0x61, 2435 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x58, 0x0a, 0x0f, 0x70, 0x72, 0x65, 0x5f, 0x74, 2436 0x75, 0x6e, 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 2437 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 2438 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 2439 0x61, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x54, 0x75, 0x6e, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 2440 0x48, 0x00, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x54, 0x75, 0x6e, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 2441 0x6c, 0x12, 0x6d, 0x0a, 0x16, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x65, 0x64, 0x5f, 2442 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 2443 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 2444 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 2445 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x65, 0x64, 0x54, 0x75, 2446 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 0x63, 0x48, 0x01, 0x52, 0x14, 0x73, 0x75, 0x70, 0x65, 2447 0x72, 0x76, 0x69, 0x73, 0x65, 0x64, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 0x63, 2448 0x12, 0x60, 0x0a, 0x11, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 2449 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 2450 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 2451 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x69, 2452 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x48, 0x01, 2453 0x52, 0x10, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 2454 0x65, 0x63, 0x12, 0x74, 0x0a, 0x19, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x5f, 0x6d, 0x6f, 2455 0x64, 0x65, 0x6c, 0x5f, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 2456 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 2457 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 2458 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x4d, 2459 0x6f, 0x64, 0x65, 0x6c, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 0x63, 0x48, 0x01, 2460 0x52, 0x16, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x54, 0x75, 2461 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 0x63, 0x12, 0x58, 0x0a, 0x0f, 0x76, 0x65, 0x6f, 0x5f, 2462 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x21, 0x20, 0x01, 0x28, 2463 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 2464 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 2465 0x74, 0x61, 0x31, 0x2e, 0x56, 0x65, 0x6f, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 2466 0x63, 0x48, 0x01, 0x52, 0x0d, 0x76, 0x65, 0x6f, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x70, 2467 0x65, 0x63, 0x12, 0x1a, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 2468 0x42, 0x06, 0xe0, 0x41, 0x08, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3c, 2469 0x0a, 0x18, 0x74, 0x75, 0x6e, 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x64, 0x69, 2470 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 2471 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x15, 0x74, 0x75, 0x6e, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 2472 0x6c, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0b, 2473 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 2474 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 2475 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x11, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x62, 0x61, 2476 0x73, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 2477 0xe0, 0x41, 0x01, 0x52, 0x0f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x42, 0x61, 0x73, 0x65, 0x4d, 2478 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x44, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 2479 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 2480 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 2481 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4a, 0x6f, 0x62, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 2482 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 2483 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 2484 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 2485 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 2486 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x0a, 2487 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 2488 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 2489 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 2490 0x03, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x08, 2491 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 2492 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 2493 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 2494 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 2495 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 2496 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 2497 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 2498 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x05, 0x65, 0x72, 2499 0x72, 0x6f, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 2500 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x03, 0xe0, 2501 0x41, 0x03, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x53, 0x0a, 0x06, 0x6c, 0x61, 0x62, 2502 0x65, 0x6c, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 2503 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 2504 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x75, 0x6e, 0x69, 2505 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 2506 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x49, 2507 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 2508 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x03, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x61, 0x69, 0x70, 0x6c, 2509 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 2510 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0a, 0x65, 2511 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x51, 0x0a, 0x0b, 0x74, 0x75, 0x6e, 2512 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 2513 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 2514 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 2515 0x2e, 0x54, 0x75, 0x6e, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x42, 0x03, 0xe0, 0x41, 0x03, 2516 0x52, 0x0a, 0x74, 0x75, 0x6e, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x61, 0x0a, 0x11, 2517 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x74, 0x61, 0x74, 2518 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2519 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 2520 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 2521 0x44, 0x61, 0x74, 0x61, 0x53, 0x74, 0x61, 0x74, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 2522 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 2523 0x50, 0x0a, 0x0c, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6a, 0x6f, 0x62, 0x18, 2524 0x12, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x03, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x61, 2525 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2526 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 2527 0x65, 0x4a, 0x6f, 0x62, 0x52, 0x0b, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x4a, 0x6f, 2528 0x62, 0x12, 0x58, 0x0a, 0x0f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 2529 0x73, 0x70, 0x65, 0x63, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 2530 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 2531 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x63, 2532 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x52, 0x0e, 0x65, 0x6e, 0x63, 2533 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x27, 0x0a, 0x0f, 0x73, 2534 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x16, 2535 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 2536 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x75, 2537 0x72, 0x69, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x6f, 2538 0x75, 0x74, 0x70, 0x75, 0x74, 0x55, 0x72, 0x69, 0x12, 0x6c, 0x0a, 0x15, 0x65, 0x76, 0x61, 0x6c, 2539 0x75, 0x61, 0x74, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x72, 0x75, 0x6e, 2540 0x73, 0x18, 0x20, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2541 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 2542 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 2543 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x52, 0x75, 0x6e, 0x42, 0x03, 0xe0, 0x41, 2544 0x03, 0x52, 0x13, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x73, 2545 0x65, 0x74, 0x52, 0x75, 0x6e, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 2546 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 2547 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 2548 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 2549 0x01, 0x3a, 0x80, 0x01, 0xea, 0x41, 0x7d, 0x0a, 0x23, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 2550 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 2551 0x6f, 0x6d, 0x2f, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x12, 0x3f, 0x70, 0x72, 2552 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 2553 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 2554 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x73, 2555 0x2f, 0x7b, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6a, 0x6f, 0x62, 0x7d, 0x2a, 0x0a, 0x74, 2556 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x73, 0x32, 0x09, 0x74, 0x75, 0x6e, 0x69, 0x6e, 2557 0x67, 0x4a, 0x6f, 0x62, 0x42, 0x0e, 0x0a, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6d, 2558 0x6f, 0x64, 0x65, 0x6c, 0x42, 0x0d, 0x0a, 0x0b, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x73, 2559 0x70, 0x65, 0x63, 0x22, 0xf1, 0x01, 0x0a, 0x0a, 0x54, 0x75, 0x6e, 0x65, 0x64, 0x4d, 0x6f, 0x64, 2560 0x65, 0x6c, 0x12, 0x3d, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 2561 0x09, 0x42, 0x27, 0xe0, 0x41, 0x03, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x61, 0x69, 0x70, 0x6c, 0x61, 2562 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 2563 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 2564 0x6c, 0x12, 0x46, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x02, 0x20, 2565 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41, 0x03, 0xfa, 0x41, 0x24, 0x0a, 0x22, 0x61, 0x69, 0x70, 2566 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 2567 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 2568 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x5c, 0x0a, 0x0b, 0x63, 0x68, 0x65, 2569 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 2570 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 2571 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 2572 0x2e, 0x54, 0x75, 0x6e, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x43, 0x68, 0x65, 0x63, 0x6b, 2573 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x63, 0x68, 0x65, 0x63, 2574 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x22, 0xc7, 0x03, 0x0a, 0x23, 0x53, 0x75, 0x70, 0x65, 2575 0x72, 0x76, 0x69, 0x73, 0x65, 0x64, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 2576 0x73, 0x65, 0x74, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 2577 0x15, 0x0a, 0x03, 0x73, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 2578 0x03, 0x52, 0x03, 0x73, 0x75, 0x6d, 0x12, 0x26, 0x0a, 0x0c, 0x62, 0x69, 0x6c, 0x6c, 0x61, 0x62, 2579 0x6c, 0x65, 0x5f, 0x73, 0x75, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 2580 0x03, 0x52, 0x0b, 0x62, 0x69, 0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x75, 0x6d, 0x12, 0x15, 2581 0x0a, 0x03, 0x6d, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x03, 2582 0x52, 0x03, 0x6d, 0x69, 0x6e, 0x12, 0x15, 0x0a, 0x03, 0x6d, 0x61, 0x78, 0x18, 0x03, 0x20, 0x01, 2583 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x6d, 0x61, 0x78, 0x12, 0x17, 0x0a, 0x04, 2584 0x6d, 0x65, 0x61, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 2585 0x04, 0x6d, 0x65, 0x61, 0x6e, 0x12, 0x1b, 0x0a, 0x06, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x6e, 0x18, 2586 0x05, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x06, 0x6d, 0x65, 0x64, 0x69, 2587 0x61, 0x6e, 0x12, 0x13, 0x0a, 0x02, 0x70, 0x35, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 2588 0xe0, 0x41, 0x03, 0x52, 0x02, 0x70, 0x35, 0x12, 0x15, 0x0a, 0x03, 0x70, 0x39, 0x35, 0x18, 0x07, 2589 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x70, 0x39, 0x35, 0x12, 0x71, 2590 0x0a, 0x07, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 2591 0x52, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 2592 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 2593 0x31, 0x2e, 0x53, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x65, 0x64, 0x54, 0x75, 0x6e, 0x69, 2594 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 2595 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x42, 0x75, 0x63, 2596 0x6b, 0x65, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 2597 0x73, 0x1a, 0x5e, 0x0a, 0x0d, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x42, 0x75, 0x63, 0x6b, 2598 0x65, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 2599 0x01, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x17, 0x0a, 2600 0x04, 0x6c, 0x65, 0x66, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x03, 2601 0x52, 0x04, 0x6c, 0x65, 0x66, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x72, 0x69, 0x67, 0x68, 0x74, 0x18, 2602 0x03, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x72, 0x69, 0x67, 0x68, 2603 0x74, 0x22, 0xcd, 0x08, 0x0a, 0x19, 0x53, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x65, 0x64, 2604 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 2605 0x44, 0x0a, 0x1c, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 2606 0x74, 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 2607 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x19, 0x74, 0x75, 0x6e, 0x69, 2608 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 2609 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x44, 0x0a, 0x1c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 2610 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x5f, 2611 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 2612 0x52, 0x19, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 2613 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x4a, 0x0a, 0x1e, 0x74, 2614 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x62, 0x69, 0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x68, 2615 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 2616 0x01, 0x28, 0x03, 0x42, 0x05, 0xe0, 0x41, 0x03, 0x18, 0x01, 0x52, 0x1b, 0x74, 0x6f, 0x74, 0x61, 2617 0x6c, 0x42, 0x69, 0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 2618 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x40, 0x0a, 0x1a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 2619 0x5f, 0x62, 0x69, 0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 2620 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 2621 0x52, 0x17, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x69, 0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x54, 2622 0x6f, 0x6b, 0x65, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x11, 0x74, 0x75, 0x6e, 2623 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 2624 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x74, 0x75, 0x6e, 0x69, 0x6e, 2625 0x67, 0x53, 0x74, 0x65, 0x70, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x8c, 0x01, 0x0a, 0x1d, 0x75, 2626 0x73, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 2627 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 2628 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 2629 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 2630 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x65, 0x64, 0x54, 2631 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x44, 0x69, 0x73, 0x74, 2632 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x1a, 0x75, 2633 0x73, 0x65, 0x72, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x69, 0x73, 2634 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x8e, 0x01, 0x0a, 0x1e, 0x75, 0x73, 2635 0x65, 0x72, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 2636 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 2637 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 2638 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 2639 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x65, 0x64, 0x54, 2640 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x44, 0x69, 0x73, 0x74, 2641 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x1b, 0x75, 2642 0x73, 0x65, 0x72, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x69, 2643 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x9b, 0x01, 0x0a, 0x25, 0x75, 2644 0x73, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 2645 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 2646 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x67, 0x6f, 0x6f, 2647 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 2648 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x70, 2649 0x65, 0x72, 0x76, 0x69, 0x73, 0x65, 0x64, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 2650 0x61, 0x73, 0x65, 0x74, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 2651 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x21, 0x75, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 2652 0x67, 0x65, 0x50, 0x65, 0x72, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x44, 0x69, 0x73, 0x74, 2653 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x61, 0x0a, 0x15, 0x75, 0x73, 0x65, 0x72, 2654 0x5f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 2655 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2656 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 2657 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 2658 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x13, 0x75, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 2659 0x73, 0x65, 0x74, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 0x46, 0x0a, 0x1d, 0x74, 2660 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x65, 2661 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 2662 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x1a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x72, 2663 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x64, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x43, 0x6f, 2664 0x75, 0x6e, 0x74, 0x12, 0x3f, 0x0a, 0x19, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x64, 2665 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, 2666 0x18, 0x0b, 0x20, 0x03, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x17, 0x74, 0x72, 0x75, 2667 0x6e, 0x63, 0x61, 0x74, 0x65, 0x64, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x49, 0x6e, 0x64, 2668 0x69, 0x63, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x17, 0x64, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x5f, 2669 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x73, 0x18, 2670 0x0c, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x15, 0x64, 0x72, 0x6f, 0x70, 2671 0x70, 0x65, 0x64, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 2672 0x73, 0x22, 0x89, 0x03, 0x0a, 0x13, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x44, 0x69, 0x73, 2673 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x15, 0x0a, 0x03, 0x73, 0x75, 0x6d, 2674 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x73, 0x75, 0x6d, 2675 0x12, 0x15, 0x0a, 0x03, 0x6d, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 2676 0x41, 0x03, 0x52, 0x03, 0x6d, 0x69, 0x6e, 0x12, 0x15, 0x0a, 0x03, 0x6d, 0x61, 0x78, 0x18, 0x03, 2677 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x6d, 0x61, 0x78, 0x12, 0x17, 2678 0x0a, 0x04, 0x6d, 0x65, 0x61, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 2679 0x03, 0x52, 0x04, 0x6d, 0x65, 0x61, 0x6e, 0x12, 0x1b, 0x0a, 0x06, 0x6d, 0x65, 0x64, 0x69, 0x61, 2680 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x06, 0x6d, 0x65, 2681 0x64, 0x69, 0x61, 0x6e, 0x12, 0x13, 0x0a, 0x02, 0x70, 0x35, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 2682 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x02, 0x70, 0x35, 0x12, 0x15, 0x0a, 0x03, 0x70, 0x39, 0x35, 2683 0x18, 0x07, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x70, 0x39, 0x35, 2684 0x12, 0x66, 0x0a, 0x07, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 2685 0x0b, 0x32, 0x47, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 2686 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 2687 0x74, 0x61, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x44, 0x69, 0x73, 0x74, 0x72, 2688 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 2689 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 2690 0x07, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x1a, 0x63, 0x0a, 0x12, 0x44, 0x69, 0x73, 0x74, 2691 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x19, 2692 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 2693 0x41, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6c, 0x65, 0x66, 2694 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6c, 0x65, 2695 0x66, 0x74, 0x12, 0x19, 0x0a, 0x05, 0x72, 0x69, 0x67, 0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 2696 0x01, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x72, 0x69, 0x67, 0x68, 0x74, 0x22, 0xad, 0x06, 2697 0x0a, 0x0c, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x44, 2698 0x0a, 0x1c, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 2699 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 2700 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x19, 0x74, 0x75, 0x6e, 0x69, 0x6e, 2701 0x67, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x43, 2702 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x44, 0x0a, 0x1c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x75, 2703 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x5f, 0x63, 2704 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 2705 0x19, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x68, 0x61, 0x72, 2706 0x61, 0x63, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x48, 0x0a, 0x1e, 0x74, 0x6f, 2707 0x74, 0x61, 0x6c, 0x5f, 0x62, 0x69, 0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x68, 0x61, 2708 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 2709 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x1b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x69, 2710 0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x43, 2711 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x11, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x73, 2712 0x74, 0x65, 0x70, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x42, 2713 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x65, 0x70, 2714 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x7c, 0x0a, 0x1d, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x6e, 2715 0x70, 0x75, 0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 2716 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 2717 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 2718 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 2719 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 2720 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x1a, 0x75, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x70, 2721 0x75, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 2722 0x69, 0x6f, 0x6e, 0x12, 0x83, 0x01, 0x0a, 0x1e, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6f, 0x75, 0x74, 2723 0x70, 0x75, 0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 2724 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 2725 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 2726 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 2727 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 2728 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x00, 0x52, 0x1b, 0x75, 0x73, 0x65, 0x72, 0x4f, 2729 0x75, 0x74, 0x70, 0x75, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 2730 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x8b, 0x01, 0x0a, 0x25, 0x75, 0x73, 2731 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x65, 2732 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 2733 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 2734 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 2735 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 2736 0x73, 0x65, 0x74, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x42, 2737 0x03, 0xe0, 0x41, 0x03, 0x52, 0x21, 0x75, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 2738 0x65, 0x50, 0x65, 0x72, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x44, 0x69, 0x73, 0x74, 0x72, 2739 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x61, 0x0a, 0x15, 0x75, 0x73, 0x65, 0x72, 0x5f, 2740 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 2741 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 2742 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 2743 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 2744 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x13, 0x75, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x73, 2745 0x65, 0x74, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x42, 0x21, 0x0a, 0x1f, 0x5f, 0x75, 2746 0x73, 0x65, 0x72, 0x5f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 2747 0x5f, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x81, 0x01, 2748 0x0a, 0x15, 0x44, 0x69, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 2749 0x74, 0x61, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x68, 0x0a, 0x16, 0x74, 0x72, 0x61, 0x69, 0x6e, 2750 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 2751 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2752 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 2753 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 2754 0x74, 0x53, 0x74, 0x61, 0x74, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x14, 0x74, 0x72, 0x61, 2755 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 2756 0x73, 0x22, 0x9c, 0x02, 0x0a, 0x0f, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 2757 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x7d, 0x0a, 0x1c, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 2758 0x73, 0x65, 0x64, 0x5f, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 2759 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67, 0x6f, 2760 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 2761 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 2762 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x65, 0x64, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 2763 0x74, 0x61, 0x53, 0x74, 0x61, 0x74, 0x73, 0x48, 0x00, 0x52, 0x19, 0x73, 0x75, 0x70, 0x65, 0x72, 2764 0x76, 0x69, 0x73, 0x65, 0x64, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x53, 2765 0x74, 0x61, 0x74, 0x73, 0x12, 0x75, 0x0a, 0x17, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x61, 2766 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 2767 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 2768 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 2769 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x69, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x61, 2770 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x53, 0x74, 0x61, 0x74, 0x73, 0x42, 0x03, 0xe0, 2771 0x41, 0x03, 0x48, 0x00, 0x52, 0x15, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x61, 0x74, 0x69, 2772 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x53, 0x74, 0x61, 0x74, 0x73, 0x42, 0x13, 0x0a, 0x11, 0x74, 2773 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 2774 0x22, 0xfe, 0x03, 0x0a, 0x19, 0x53, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x65, 0x64, 0x48, 2775 0x79, 0x70, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x24, 2776 0x0a, 0x0b, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 2777 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x43, 2778 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3d, 0x0a, 0x18, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 2779 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x69, 0x65, 0x72, 2780 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x16, 0x6c, 0x65, 0x61, 2781 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 2782 0x69, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 2783 0x72, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 2784 0x0c, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x74, 0x65, 0x12, 0x6e, 0x0a, 2785 0x0c, 0x61, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 2786 0x01, 0x28, 0x0e, 0x32, 0x46, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 2787 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 2788 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x65, 0x64, 2789 0x48, 0x79, 0x70, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x2e, 2790 0x41, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x53, 0x69, 0x7a, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 2791 0x52, 0x0b, 0x61, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 2792 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 2793 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x7a, 2794 0x65, 0x22, 0xbd, 0x01, 0x0a, 0x0b, 0x41, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x53, 0x69, 0x7a, 2795 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x41, 0x44, 0x41, 0x50, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x49, 0x5a, 2796 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 2797 0x14, 0x0a, 0x10, 0x41, 0x44, 0x41, 0x50, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x49, 0x5a, 0x45, 0x5f, 2798 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x44, 0x41, 0x50, 0x54, 0x45, 0x52, 2799 0x5f, 0x53, 0x49, 0x5a, 0x45, 0x5f, 0x54, 0x57, 0x4f, 0x10, 0x06, 0x12, 0x15, 0x0a, 0x11, 0x41, 2800 0x44, 0x41, 0x50, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x49, 0x5a, 0x45, 0x5f, 0x46, 0x4f, 0x55, 0x52, 2801 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x44, 0x41, 0x50, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x49, 2802 0x5a, 0x45, 0x5f, 0x45, 0x49, 0x47, 0x48, 0x54, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x44, 2803 0x41, 0x50, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x49, 0x5a, 0x45, 0x5f, 0x53, 0x49, 0x58, 0x54, 0x45, 2804 0x45, 0x4e, 0x10, 0x04, 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x44, 0x41, 0x50, 0x54, 0x45, 0x52, 0x5f, 2805 0x53, 0x49, 0x5a, 0x45, 0x5f, 0x54, 0x48, 0x49, 0x52, 0x54, 0x59, 0x5f, 0x54, 0x57, 0x4f, 0x10, 2806 0x05, 0x22, 0xdf, 0x04, 0x0a, 0x14, 0x53, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x65, 0x64, 2807 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 0x63, 0x12, 0x35, 0x0a, 0x14, 0x74, 0x72, 2808 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x75, 2809 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x12, 0x74, 2810 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x55, 0x72, 2811 0x69, 0x12, 0x39, 0x0a, 0x16, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 2812 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 2813 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x14, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 2814 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x55, 0x72, 0x69, 0x12, 0x6a, 0x0a, 0x10, 2815 0x68, 0x79, 0x70, 0x65, 0x72, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 2816 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 2817 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 2818 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 2819 0x73, 0x65, 0x64, 0x48, 0x79, 0x70, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 2820 0x72, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0f, 0x68, 0x79, 0x70, 0x65, 0x72, 0x50, 0x61, 2821 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x42, 0x0a, 0x1b, 0x65, 0x78, 0x70, 0x6f, 2822 0x72, 0x74, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 2823 0x6e, 0x74, 0x5f, 0x6f, 0x6e, 0x6c, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 2824 0x41, 0x01, 0x52, 0x18, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x68, 2825 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x63, 0x0a, 0x11, 2826 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 2827 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2828 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 2829 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 2830 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 2831 0x10, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 2832 0x67, 0x12, 0x61, 0x0a, 0x0b, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 2833 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 2834 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 2835 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 2836 0x73, 0x65, 0x64, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x54, 0x75, 2837 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 2838 0x4d, 0x6f, 0x64, 0x65, 0x22, 0x5d, 0x0a, 0x0a, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 2839 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x54, 0x55, 0x4e, 0x49, 0x4e, 0x47, 0x5f, 0x4d, 0x4f, 0x44, 2840 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 2841 0x14, 0x0a, 0x10, 0x54, 0x55, 0x4e, 0x49, 0x4e, 0x47, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x46, 2842 0x55, 0x4c, 0x4c, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x54, 0x55, 0x4e, 0x49, 0x4e, 0x47, 0x5f, 2843 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x45, 0x46, 0x54, 0x5f, 0x41, 0x44, 0x41, 0x50, 0x54, 0x45, 2844 0x52, 0x10, 0x02, 0x22, 0x9a, 0x04, 0x0a, 0x10, 0x44, 0x69, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x61, 2845 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x70, 0x65, 0x63, 0x12, 0x2e, 0x0a, 0x12, 0x62, 0x61, 0x73, 0x65, 2846 0x5f, 0x74, 0x65, 0x61, 0x63, 0x68, 0x65, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x05, 2847 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x10, 0x62, 0x61, 0x73, 0x65, 0x54, 0x65, 0x61, 0x63, 2848 0x68, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x63, 0x0a, 0x1a, 0x74, 0x75, 0x6e, 0x65, 2849 0x64, 0x5f, 0x74, 0x65, 0x61, 0x63, 0x68, 0x65, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 2850 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x41, 2851 0x21, 0x0a, 0x1f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 2852 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x6f, 0x64, 2853 0x65, 0x6c, 0x48, 0x00, 0x52, 0x17, 0x74, 0x75, 0x6e, 0x65, 0x64, 0x54, 0x65, 0x61, 0x63, 0x68, 2854 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x35, 0x0a, 2855 0x14, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 2856 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 2857 0x52, 0x12, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 2858 0x74, 0x55, 0x72, 0x69, 0x12, 0x3e, 0x0a, 0x16, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 2859 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x02, 2860 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x48, 0x01, 0x52, 0x14, 0x76, 0x61, 0x6c, 2861 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x55, 0x72, 2862 0x69, 0x88, 0x01, 0x01, 0x12, 0x6c, 0x0a, 0x10, 0x68, 0x79, 0x70, 0x65, 0x72, 0x5f, 0x70, 0x61, 2863 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 2864 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 2865 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 2866 0x2e, 0x44, 0x69, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x79, 0x70, 2867 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x42, 0x03, 0xe0, 0x41, 2868 0x01, 0x52, 0x0f, 0x68, 0x79, 0x70, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 2869 0x72, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x75, 0x64, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x6f, 2870 0x64, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x74, 0x75, 0x64, 0x65, 2871 0x6e, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x3b, 0x0a, 0x17, 0x70, 0x69, 0x70, 0x65, 0x6c, 2872 0x69, 0x6e, 0x65, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 2873 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x15, 0x70, 2874 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x6f, 0x6f, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 2875 0x74, 0x6f, 0x72, 0x79, 0x42, 0x0f, 0x0a, 0x0d, 0x74, 0x65, 0x61, 0x63, 0x68, 0x65, 0x72, 0x5f, 2876 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 2877 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x75, 0x72, 0x69, 2878 0x22, 0xa9, 0x02, 0x0a, 0x1b, 0x44, 0x69, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 2879 0x6e, 0x48, 0x79, 0x70, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 2880 0x12, 0x29, 0x0a, 0x0b, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 2881 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x48, 0x00, 0x52, 0x0a, 0x65, 0x70, 2882 0x6f, 0x63, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01, 0x01, 0x12, 0x42, 0x0a, 0x18, 0x6c, 2883 0x65, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x75, 0x6c, 2884 0x74, 0x69, 0x70, 0x6c, 0x69, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 2885 0x41, 0x01, 0x48, 0x01, 0x52, 0x16, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x61, 2886 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x69, 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 2887 0x6e, 0x0a, 0x0c, 0x61, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 2888 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x46, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 2889 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 2890 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 2891 0x65, 0x64, 0x48, 0x79, 0x70, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 2892 0x73, 0x2e, 0x41, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x53, 0x69, 0x7a, 0x65, 0x42, 0x03, 0xe0, 2893 0x41, 0x01, 0x52, 0x0b, 0x61, 0x64, 0x61, 0x70, 0x74, 0x65, 0x72, 0x53, 0x69, 0x7a, 0x65, 0x42, 2894 0x0e, 0x0a, 0x0c, 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x42, 2895 0x1b, 0x0a, 0x19, 0x5f, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x61, 0x74, 2896 0x65, 0x5f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x69, 0x65, 0x72, 0x22, 0xdf, 0x02, 0x0a, 2897 0x16, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x54, 0x75, 0x6e, 2898 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 0x63, 0x12, 0x35, 0x0a, 0x14, 0x74, 0x72, 0x61, 0x69, 0x6e, 2899 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 2900 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x12, 0x74, 0x72, 0x61, 0x69, 2901 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x55, 0x72, 0x69, 0x12, 0x39, 2902 0x0a, 0x16, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x74, 2903 0x61, 0x73, 0x65, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 2904 0xe0, 0x41, 0x01, 0x52, 0x14, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 2905 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x55, 0x72, 0x69, 0x12, 0x77, 0x0a, 0x10, 0x68, 0x79, 0x70, 2906 0x65, 0x72, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 2907 0x03, 0x28, 0x0b, 0x32, 0x4c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 2908 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 2909 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72, 0x4d, 0x6f, 0x64, 2910 0x65, 0x6c, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x48, 0x79, 0x70, 2911 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 2912 0x79, 0x52, 0x0f, 0x68, 0x79, 0x70, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 2913 0x72, 0x73, 0x1a, 0x5a, 0x0a, 0x14, 0x48, 0x79, 0x70, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 2914 0x65, 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 2915 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2c, 0x0a, 0x05, 2916 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 2917 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 2918 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x87, 2919 0x02, 0x0a, 0x0d, 0x54, 0x75, 0x6e, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x65, 0x66, 2920 0x12, 0x47, 0x0a, 0x0b, 0x74, 0x75, 0x6e, 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 2921 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x61, 0x69, 0x70, 0x6c, 2922 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 2923 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x48, 0x00, 0x52, 0x0a, 0x74, 2924 0x75, 0x6e, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x49, 0x0a, 0x0a, 0x74, 0x75, 0x6e, 2925 0x69, 0x6e, 0x67, 0x5f, 0x6a, 0x6f, 0x62, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x28, 0xfa, 2926 0x41, 0x25, 0x0a, 0x23, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 2927 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x75, 2928 0x6e, 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x48, 0x00, 0x52, 0x09, 0x74, 0x75, 0x6e, 0x69, 0x6e, 2929 0x67, 0x4a, 0x6f, 0x62, 0x12, 0x4f, 0x0a, 0x0c, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 0x6e, 0x65, 2930 0x5f, 0x6a, 0x6f, 0x62, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xfa, 0x41, 0x27, 0x0a, 2931 0x25, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 2932 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x69, 0x70, 0x65, 0x6c, 2933 0x69, 0x6e, 0x65, 0x4a, 0x6f, 0x62, 0x48, 0x00, 0x52, 0x0b, 0x70, 0x69, 0x70, 0x65, 0x6c, 0x69, 2934 0x6e, 0x65, 0x4a, 0x6f, 0x62, 0x42, 0x11, 0x0a, 0x0f, 0x74, 0x75, 0x6e, 0x65, 0x64, 0x5f, 0x6d, 2935 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x22, 0xb4, 0x02, 0x0a, 0x12, 0x56, 0x65, 0x6f, 2936 0x48, 0x79, 0x70, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 2937 0x24, 0x0a, 0x0b, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 2938 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x65, 0x70, 0x6f, 0x63, 0x68, 2939 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3d, 0x0a, 0x18, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x69, 0x6e, 2940 0x67, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x69, 0x65, 2941 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x16, 0x6c, 0x65, 2942 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 2943 0x6c, 0x69, 0x65, 0x72, 0x12, 0x64, 0x0a, 0x0b, 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x74, 2944 0x61, 0x73, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 2945 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 2946 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x65, 0x6f, 0x48, 2947 0x79, 0x70, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x2e, 0x54, 2948 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 2949 0x74, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x73, 0x6b, 0x22, 0x53, 0x0a, 0x0a, 0x54, 0x75, 2950 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x73, 0x6b, 0x12, 0x1b, 0x0a, 0x17, 0x54, 0x55, 0x4e, 0x49, 2951 0x4e, 0x47, 0x5f, 0x54, 0x41, 0x53, 0x4b, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 2952 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x55, 0x4e, 0x49, 0x4e, 0x47, 0x5f, 2953 0x54, 0x41, 0x53, 0x4b, 0x5f, 0x49, 0x32, 0x56, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x55, 2954 0x4e, 0x49, 0x4e, 0x47, 0x5f, 0x54, 0x41, 0x53, 0x4b, 0x5f, 0x54, 0x32, 0x56, 0x10, 0x02, 0x22, 2955 0xe6, 0x01, 0x0a, 0x0d, 0x56, 0x65, 0x6f, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x70, 0x65, 2956 0x63, 0x12, 0x35, 0x0a, 0x14, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x61, 2957 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 2958 0x03, 0xe0, 0x41, 0x02, 0x52, 0x12, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x44, 0x61, 2959 0x74, 0x61, 0x73, 0x65, 0x74, 0x55, 0x72, 0x69, 0x12, 0x39, 0x0a, 0x16, 0x76, 0x61, 0x6c, 0x69, 2960 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x5f, 0x75, 2961 0x72, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x14, 0x76, 2962 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 2963 0x55, 0x72, 0x69, 0x12, 0x63, 0x0a, 0x10, 0x68, 0x79, 0x70, 0x65, 0x72, 0x5f, 0x70, 0x61, 0x72, 2964 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 2965 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 2966 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 2967 0x56, 0x65, 0x6f, 0x48, 0x79, 0x70, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 2968 0x72, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0f, 0x68, 0x79, 0x70, 0x65, 0x72, 0x50, 0x61, 2969 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x22, 0x95, 0x02, 0x0a, 0x10, 0x45, 0x76, 0x61, 2970 0x6c, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x46, 0x0a, 2971 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 2972 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 2973 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 2974 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x6d, 0x65, 2975 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x57, 0x0a, 0x0d, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 2976 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 2977 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 2978 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 2979 0x75, 0x74, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 2980 0x52, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x60, 2981 0x0a, 0x10, 0x61, 0x75, 0x74, 0x6f, 0x72, 0x61, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 2982 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 2983 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 2984 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x72, 2985 0x61, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 2986 0x0f, 0x61, 0x75, 0x74, 0x6f, 0x72, 0x61, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 2987 0x22, 0x94, 0x02, 0x0a, 0x12, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 2988 0x61, 0x73, 0x65, 0x74, 0x52, 0x75, 0x6e, 0x12, 0x2a, 0x0a, 0x0e, 0x6f, 0x70, 0x65, 0x72, 0x61, 2989 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 2990 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 2991 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 2992 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 2993 0x0c, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x79, 0x0a, 2994 0x19, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 2995 0x74, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 2996 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 2997 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 2998 0x61, 0x31, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x73, 2999 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 3000 0x17, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 3001 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2d, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 3002 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 3003 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 3004 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x81, 0x01, 0x0a, 0x14, 0x54, 0x75, 0x6e, 0x65, 3005 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 3006 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x69, 3007 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 3008 0x69, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x02, 3009 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x73, 3010 0x74, 0x65, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x74, 0x65, 0x70, 0x12, 3011 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 3012 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x22, 0xad, 0x01, 0x0a, 0x0d, 3013 0x50, 0x72, 0x65, 0x54, 0x75, 0x6e, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x4e, 0x0a, 3014 0x10, 0x74, 0x75, 0x6e, 0x65, 0x64, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x6e, 0x61, 0x6d, 3015 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x24, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x61, 0x69, 3016 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 3017 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x0e, 0x74, 3018 0x75, 0x6e, 0x65, 0x64, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 3019 0x0d, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 3020 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x63, 0x68, 0x65, 0x63, 0x6b, 3021 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x62, 0x61, 0x73, 0x65, 0x5f, 3022 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 3023 0x52, 0x09, 0x62, 0x61, 0x73, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x42, 0xe5, 0x01, 0x0a, 0x23, 3024 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3025 0x2e, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x31, 0x62, 0x65, 3026 0x74, 0x61, 0x31, 0x42, 0x0e, 0x54, 0x75, 0x6e, 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x50, 0x72, 3027 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 3028 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 3029 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 3030 0x2f, 0x61, 0x69, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x70, 0x62, 0x3b, 0x61, 0x69, 3031 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x70, 0x62, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 3032 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 3033 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x56, 0x31, 0x42, 0x65, 0x74, 0x61, 0x31, 0xca, 0x02, 0x1f, 0x47, 3034 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x41, 0x49, 0x50, 0x6c, 3035 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x31, 0xea, 0x02, 3036 0x22, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 3037 0x41, 0x49, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x65, 3038 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 3039 } 3040 3041 var ( 3042 file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescOnce sync.Once 3043 file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescData = file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDesc 3044 ) 3045 3046 func file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescGZIP() []byte { 3047 file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescOnce.Do(func() { 3048 file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescData) 3049 }) 3050 return file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDescData 3051 } 3052 3053 var file_google_cloud_aiplatform_v1beta1_tuning_job_proto_enumTypes = make([]protoimpl.EnumInfo, 3) 3054 var file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes = make([]protoimpl.MessageInfo, 24) 3055 var file_google_cloud_aiplatform_v1beta1_tuning_job_proto_goTypes = []any{ 3056 (SupervisedHyperParameters_AdapterSize)(0), // 0: google.cloud.aiplatform.v1beta1.SupervisedHyperParameters.AdapterSize 3057 (SupervisedTuningSpec_TuningMode)(0), // 1: google.cloud.aiplatform.v1beta1.SupervisedTuningSpec.TuningMode 3058 (VeoHyperParameters_TuningTask)(0), // 2: google.cloud.aiplatform.v1beta1.VeoHyperParameters.TuningTask 3059 (*TuningJob)(nil), // 3: google.cloud.aiplatform.v1beta1.TuningJob 3060 (*TunedModel)(nil), // 4: google.cloud.aiplatform.v1beta1.TunedModel 3061 (*SupervisedTuningDatasetDistribution)(nil), // 5: google.cloud.aiplatform.v1beta1.SupervisedTuningDatasetDistribution 3062 (*SupervisedTuningDataStats)(nil), // 6: google.cloud.aiplatform.v1beta1.SupervisedTuningDataStats 3063 (*DatasetDistribution)(nil), // 7: google.cloud.aiplatform.v1beta1.DatasetDistribution 3064 (*DatasetStats)(nil), // 8: google.cloud.aiplatform.v1beta1.DatasetStats 3065 (*DistillationDataStats)(nil), // 9: google.cloud.aiplatform.v1beta1.DistillationDataStats 3066 (*TuningDataStats)(nil), // 10: google.cloud.aiplatform.v1beta1.TuningDataStats 3067 (*SupervisedHyperParameters)(nil), // 11: google.cloud.aiplatform.v1beta1.SupervisedHyperParameters 3068 (*SupervisedTuningSpec)(nil), // 12: google.cloud.aiplatform.v1beta1.SupervisedTuningSpec 3069 (*DistillationSpec)(nil), // 13: google.cloud.aiplatform.v1beta1.DistillationSpec 3070 (*DistillationHyperParameters)(nil), // 14: google.cloud.aiplatform.v1beta1.DistillationHyperParameters 3071 (*PartnerModelTuningSpec)(nil), // 15: google.cloud.aiplatform.v1beta1.PartnerModelTuningSpec 3072 (*TunedModelRef)(nil), // 16: google.cloud.aiplatform.v1beta1.TunedModelRef 3073 (*VeoHyperParameters)(nil), // 17: google.cloud.aiplatform.v1beta1.VeoHyperParameters 3074 (*VeoTuningSpec)(nil), // 18: google.cloud.aiplatform.v1beta1.VeoTuningSpec 3075 (*EvaluationConfig)(nil), // 19: google.cloud.aiplatform.v1beta1.EvaluationConfig 3076 (*EvaluateDatasetRun)(nil), // 20: google.cloud.aiplatform.v1beta1.EvaluateDatasetRun 3077 (*TunedModelCheckpoint)(nil), // 21: google.cloud.aiplatform.v1beta1.TunedModelCheckpoint 3078 (*PreTunedModel)(nil), // 22: google.cloud.aiplatform.v1beta1.PreTunedModel 3079 nil, // 23: google.cloud.aiplatform.v1beta1.TuningJob.LabelsEntry 3080 (*SupervisedTuningDatasetDistribution_DatasetBucket)(nil), // 24: google.cloud.aiplatform.v1beta1.SupervisedTuningDatasetDistribution.DatasetBucket 3081 (*DatasetDistribution_DistributionBucket)(nil), // 25: google.cloud.aiplatform.v1beta1.DatasetDistribution.DistributionBucket 3082 nil, // 26: google.cloud.aiplatform.v1beta1.PartnerModelTuningSpec.HyperParametersEntry 3083 (JobState)(0), // 27: google.cloud.aiplatform.v1beta1.JobState 3084 (*timestamppb.Timestamp)(nil), // 28: google.protobuf.Timestamp 3085 (*status.Status)(nil), // 29: google.rpc.Status 3086 (*EncryptionSpec)(nil), // 30: google.cloud.aiplatform.v1beta1.EncryptionSpec 3087 (*Content)(nil), // 31: google.cloud.aiplatform.v1beta1.Content 3088 (*Metric)(nil), // 32: google.cloud.aiplatform.v1beta1.Metric 3089 (*OutputConfig)(nil), // 33: google.cloud.aiplatform.v1beta1.OutputConfig 3090 (*AutoraterConfig)(nil), // 34: google.cloud.aiplatform.v1beta1.AutoraterConfig 3091 (*EvaluateDatasetResponse)(nil), // 35: google.cloud.aiplatform.v1beta1.EvaluateDatasetResponse 3092 (*structpb.Value)(nil), // 36: google.protobuf.Value 3093 } 3094 var file_google_cloud_aiplatform_v1beta1_tuning_job_proto_depIdxs = []int32{ 3095 22, // 0: google.cloud.aiplatform.v1beta1.TuningJob.pre_tuned_model:type_name -> google.cloud.aiplatform.v1beta1.PreTunedModel 3096 12, // 1: google.cloud.aiplatform.v1beta1.TuningJob.supervised_tuning_spec:type_name -> google.cloud.aiplatform.v1beta1.SupervisedTuningSpec 3097 13, // 2: google.cloud.aiplatform.v1beta1.TuningJob.distillation_spec:type_name -> google.cloud.aiplatform.v1beta1.DistillationSpec 3098 15, // 3: google.cloud.aiplatform.v1beta1.TuningJob.partner_model_tuning_spec:type_name -> google.cloud.aiplatform.v1beta1.PartnerModelTuningSpec 3099 18, // 4: google.cloud.aiplatform.v1beta1.TuningJob.veo_tuning_spec:type_name -> google.cloud.aiplatform.v1beta1.VeoTuningSpec 3100 27, // 5: google.cloud.aiplatform.v1beta1.TuningJob.state:type_name -> google.cloud.aiplatform.v1beta1.JobState 3101 28, // 6: google.cloud.aiplatform.v1beta1.TuningJob.create_time:type_name -> google.protobuf.Timestamp 3102 28, // 7: google.cloud.aiplatform.v1beta1.TuningJob.start_time:type_name -> google.protobuf.Timestamp 3103 28, // 8: google.cloud.aiplatform.v1beta1.TuningJob.end_time:type_name -> google.protobuf.Timestamp 3104 28, // 9: google.cloud.aiplatform.v1beta1.TuningJob.update_time:type_name -> google.protobuf.Timestamp 3105 29, // 10: google.cloud.aiplatform.v1beta1.TuningJob.error:type_name -> google.rpc.Status 3106 23, // 11: google.cloud.aiplatform.v1beta1.TuningJob.labels:type_name -> google.cloud.aiplatform.v1beta1.TuningJob.LabelsEntry 3107 4, // 12: google.cloud.aiplatform.v1beta1.TuningJob.tuned_model:type_name -> google.cloud.aiplatform.v1beta1.TunedModel 3108 10, // 13: google.cloud.aiplatform.v1beta1.TuningJob.tuning_data_stats:type_name -> google.cloud.aiplatform.v1beta1.TuningDataStats 3109 30, // 14: google.cloud.aiplatform.v1beta1.TuningJob.encryption_spec:type_name -> google.cloud.aiplatform.v1beta1.EncryptionSpec 3110 20, // 15: google.cloud.aiplatform.v1beta1.TuningJob.evaluate_dataset_runs:type_name -> google.cloud.aiplatform.v1beta1.EvaluateDatasetRun 3111 21, // 16: google.cloud.aiplatform.v1beta1.TunedModel.checkpoints:type_name -> google.cloud.aiplatform.v1beta1.TunedModelCheckpoint 3112 24, // 17: google.cloud.aiplatform.v1beta1.SupervisedTuningDatasetDistribution.buckets:type_name -> google.cloud.aiplatform.v1beta1.SupervisedTuningDatasetDistribution.DatasetBucket 3113 5, // 18: google.cloud.aiplatform.v1beta1.SupervisedTuningDataStats.user_input_token_distribution:type_name -> google.cloud.aiplatform.v1beta1.SupervisedTuningDatasetDistribution 3114 5, // 19: google.cloud.aiplatform.v1beta1.SupervisedTuningDataStats.user_output_token_distribution:type_name -> google.cloud.aiplatform.v1beta1.SupervisedTuningDatasetDistribution 3115 5, // 20: google.cloud.aiplatform.v1beta1.SupervisedTuningDataStats.user_message_per_example_distribution:type_name -> google.cloud.aiplatform.v1beta1.SupervisedTuningDatasetDistribution 3116 31, // 21: google.cloud.aiplatform.v1beta1.SupervisedTuningDataStats.user_dataset_examples:type_name -> google.cloud.aiplatform.v1beta1.Content 3117 25, // 22: google.cloud.aiplatform.v1beta1.DatasetDistribution.buckets:type_name -> google.cloud.aiplatform.v1beta1.DatasetDistribution.DistributionBucket 3118 7, // 23: google.cloud.aiplatform.v1beta1.DatasetStats.user_input_token_distribution:type_name -> google.cloud.aiplatform.v1beta1.DatasetDistribution 3119 7, // 24: google.cloud.aiplatform.v1beta1.DatasetStats.user_output_token_distribution:type_name -> google.cloud.aiplatform.v1beta1.DatasetDistribution 3120 7, // 25: google.cloud.aiplatform.v1beta1.DatasetStats.user_message_per_example_distribution:type_name -> google.cloud.aiplatform.v1beta1.DatasetDistribution 3121 31, // 26: google.cloud.aiplatform.v1beta1.DatasetStats.user_dataset_examples:type_name -> google.cloud.aiplatform.v1beta1.Content 3122 8, // 27: google.cloud.aiplatform.v1beta1.DistillationDataStats.training_dataset_stats:type_name -> google.cloud.aiplatform.v1beta1.DatasetStats 3123 6, // 28: google.cloud.aiplatform.v1beta1.TuningDataStats.supervised_tuning_data_stats:type_name -> google.cloud.aiplatform.v1beta1.SupervisedTuningDataStats 3124 9, // 29: google.cloud.aiplatform.v1beta1.TuningDataStats.distillation_data_stats:type_name -> google.cloud.aiplatform.v1beta1.DistillationDataStats 3125 0, // 30: google.cloud.aiplatform.v1beta1.SupervisedHyperParameters.adapter_size:type_name -> google.cloud.aiplatform.v1beta1.SupervisedHyperParameters.AdapterSize 3126 11, // 31: google.cloud.aiplatform.v1beta1.SupervisedTuningSpec.hyper_parameters:type_name -> google.cloud.aiplatform.v1beta1.SupervisedHyperParameters 3127 19, // 32: google.cloud.aiplatform.v1beta1.SupervisedTuningSpec.evaluation_config:type_name -> google.cloud.aiplatform.v1beta1.EvaluationConfig 3128 1, // 33: google.cloud.aiplatform.v1beta1.SupervisedTuningSpec.tuning_mode:type_name -> google.cloud.aiplatform.v1beta1.SupervisedTuningSpec.TuningMode 3129 14, // 34: google.cloud.aiplatform.v1beta1.DistillationSpec.hyper_parameters:type_name -> google.cloud.aiplatform.v1beta1.DistillationHyperParameters 3130 0, // 35: google.cloud.aiplatform.v1beta1.DistillationHyperParameters.adapter_size:type_name -> google.cloud.aiplatform.v1beta1.SupervisedHyperParameters.AdapterSize 3131 26, // 36: google.cloud.aiplatform.v1beta1.PartnerModelTuningSpec.hyper_parameters:type_name -> google.cloud.aiplatform.v1beta1.PartnerModelTuningSpec.HyperParametersEntry 3132 2, // 37: google.cloud.aiplatform.v1beta1.VeoHyperParameters.tuning_task:type_name -> google.cloud.aiplatform.v1beta1.VeoHyperParameters.TuningTask 3133 17, // 38: google.cloud.aiplatform.v1beta1.VeoTuningSpec.hyper_parameters:type_name -> google.cloud.aiplatform.v1beta1.VeoHyperParameters 3134 32, // 39: google.cloud.aiplatform.v1beta1.EvaluationConfig.metrics:type_name -> google.cloud.aiplatform.v1beta1.Metric 3135 33, // 40: google.cloud.aiplatform.v1beta1.EvaluationConfig.output_config:type_name -> google.cloud.aiplatform.v1beta1.OutputConfig 3136 34, // 41: google.cloud.aiplatform.v1beta1.EvaluationConfig.autorater_config:type_name -> google.cloud.aiplatform.v1beta1.AutoraterConfig 3137 35, // 42: google.cloud.aiplatform.v1beta1.EvaluateDatasetRun.evaluate_dataset_response:type_name -> google.cloud.aiplatform.v1beta1.EvaluateDatasetResponse 3138 29, // 43: google.cloud.aiplatform.v1beta1.EvaluateDatasetRun.error:type_name -> google.rpc.Status 3139 36, // 44: google.cloud.aiplatform.v1beta1.PartnerModelTuningSpec.HyperParametersEntry.value:type_name -> google.protobuf.Value 3140 45, // [45:45] is the sub-list for method output_type 3141 45, // [45:45] is the sub-list for method input_type 3142 45, // [45:45] is the sub-list for extension type_name 3143 45, // [45:45] is the sub-list for extension extendee 3144 0, // [0:45] is the sub-list for field type_name 3145 } 3146 3147 func init() { file_google_cloud_aiplatform_v1beta1_tuning_job_proto_init() } 3148 func file_google_cloud_aiplatform_v1beta1_tuning_job_proto_init() { 3149 if File_google_cloud_aiplatform_v1beta1_tuning_job_proto != nil { 3150 return 3151 } 3152 file_google_cloud_aiplatform_v1beta1_content_proto_init() 3153 file_google_cloud_aiplatform_v1beta1_encryption_spec_proto_init() 3154 file_google_cloud_aiplatform_v1beta1_evaluation_service_proto_init() 3155 file_google_cloud_aiplatform_v1beta1_job_state_proto_init() 3156 file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[0].OneofWrappers = []any{ 3157 (*TuningJob_BaseModel)(nil), 3158 (*TuningJob_PreTunedModel)(nil), 3159 (*TuningJob_SupervisedTuningSpec)(nil), 3160 (*TuningJob_DistillationSpec)(nil), 3161 (*TuningJob_PartnerModelTuningSpec)(nil), 3162 (*TuningJob_VeoTuningSpec)(nil), 3163 } 3164 file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[5].OneofWrappers = []any{} 3165 file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[7].OneofWrappers = []any{ 3166 (*TuningDataStats_SupervisedTuningDataStats)(nil), 3167 (*TuningDataStats_DistillationDataStats)(nil), 3168 } 3169 file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[10].OneofWrappers = []any{ 3170 (*DistillationSpec_BaseTeacherModel)(nil), 3171 (*DistillationSpec_TunedTeacherModelSource)(nil), 3172 } 3173 file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[11].OneofWrappers = []any{} 3174 file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes[13].OneofWrappers = []any{ 3175 (*TunedModelRef_TunedModel)(nil), 3176 (*TunedModelRef_TuningJob)(nil), 3177 (*TunedModelRef_PipelineJob)(nil), 3178 } 3179 type x struct{} 3180 out := protoimpl.TypeBuilder{ 3181 File: protoimpl.DescBuilder{ 3182 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 3183 RawDescriptor: file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDesc, 3184 NumEnums: 3, 3185 NumMessages: 24, 3186 NumExtensions: 0, 3187 NumServices: 0, 3188 }, 3189 GoTypes: file_google_cloud_aiplatform_v1beta1_tuning_job_proto_goTypes, 3190 DependencyIndexes: file_google_cloud_aiplatform_v1beta1_tuning_job_proto_depIdxs, 3191 EnumInfos: file_google_cloud_aiplatform_v1beta1_tuning_job_proto_enumTypes, 3192 MessageInfos: file_google_cloud_aiplatform_v1beta1_tuning_job_proto_msgTypes, 3193 }.Build() 3194 File_google_cloud_aiplatform_v1beta1_tuning_job_proto = out.File 3195 file_google_cloud_aiplatform_v1beta1_tuning_job_proto_rawDesc = nil 3196 file_google_cloud_aiplatform_v1beta1_tuning_job_proto_goTypes = nil 3197 file_google_cloud_aiplatform_v1beta1_tuning_job_proto_depIdxs = nil 3198 }