# frozen_string_literal: true
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/aiplatform/v1/study.proto

require 'google/protobuf'

require 'google/api/field_behavior_pb'
require 'google/api/resource_pb'
require 'google/protobuf/duration_pb'
require 'google/protobuf/struct_pb'
require 'google/protobuf/timestamp_pb'
require 'google/protobuf/wrappers_pb'


descriptor_data = "\n&google/cloud/aiplatform/v1/study.proto\x12\x1agoogle.cloud.aiplatform.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/wrappers.proto\"\xae\x03\n\x05Study\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12>\n\nstudy_spec\x18\x03 \x01(\x0b\x32%.google.cloud.aiplatform.v1.StudySpecB\x03\xe0\x41\x02\x12;\n\x05state\x18\x04 \x01(\x0e\x32\'.google.cloud.aiplatform.v1.Study.StateB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x1c\n\x0finactive_reason\x18\x06 \x01(\tB\x03\xe0\x41\x03\"G\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x01\x12\x0c\n\x08INACTIVE\x10\x02\x12\r\n\tCOMPLETED\x10\x03:]\xea\x41Z\n\x1f\x61iplatform.googleapis.com/Study\x12\x37projects/{project}/locations/{location}/studies/{study}\"\xd0\x07\n\x05Trial\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x0f\n\x02id\x18\x02 \x01(\tB\x03\xe0\x41\x03\x12;\n\x05state\x18\x03 \x01(\x0e\x32\'.google.cloud.aiplatform.v1.Trial.StateB\x03\xe0\x41\x03\x12\x44\n\nparameters\x18\x04 \x03(\x0b\x32+.google.cloud.aiplatform.v1.Trial.ParameterB\x03\xe0\x41\x03\x12G\n\x11\x66inal_measurement\x18\x05 \x01(\x0b\x32\'.google.cloud.aiplatform.v1.MeasurementB\x03\xe0\x41\x03\x12\x42\n\x0cmeasurements\x18\x06 \x03(\x0b\x32\'.google.cloud.aiplatform.v1.MeasurementB\x03\xe0\x41\x03\x12\x33\n\nstart_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x31\n\x08\x65nd_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x16\n\tclient_id\x18\t \x01(\tB\x03\xe0\x41\x03\x12\x1e\n\x11infeasible_reason\x18\n \x01(\tB\x03\xe0\x41\x03\x12?\n\ncustom_job\x18\x0b \x01(\tB+\xe0\x41\x03\xfa\x41%\n#aiplatform.googleapis.com/CustomJob\x12R\n\x0fweb_access_uris\x18\x0c \x03(\x0b\x32\x34.google.cloud.aiplatform.v1.Trial.WebAccessUrisEntryB\x03\xe0\x41\x03\x1aR\n\tParameter\x12\x19\n\x0cparameter_id\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12*\n\x05value\x18\x02 \x01(\x0b\x32\x16.google.protobuf.ValueB\x03\xe0\x41\x03\x1a\x34\n\x12WebAccessUrisEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"f\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\r\n\tREQUESTED\x10\x01\x12\n\n\x06\x41\x43TIVE\x10\x02\x12\x0c\n\x08STOPPING\x10\x03\x12\r\n\tSUCCEEDED\x10\x04\x12\x0e\n\nINFEASIBLE\x10\x05:l\xea\x41i\n\x1f\x61iplatform.googleapis.com/Trial\x12\x46projects/{project}/locations/{location}/studies/{study}/trials/{trial}\"d\n\x0cTrialContext\x12\x13\n\x0b\x64\x65scription\x18\x01 \x01(\t\x12?\n\nparameters\x18\x02 \x03(\x0b\x32+.google.cloud.aiplatform.v1.Trial.Parameter\"\x86\x01\n\x13StudyTimeConstraint\x12\x31\n\x0cmax_duration\x18\x01 \x01(\x0b\x32\x19.google.protobuf.DurationH\x00\x12.\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x42\x0c\n\nconstraint\"\xd7!\n\tStudySpec\x12j\n\x19\x64\x65\x63\x61y_curve_stopping_spec\x18\x04 \x01(\x0b\x32\x45.google.cloud.aiplatform.v1.StudySpec.DecayCurveAutomatedStoppingSpecH\x00\x12k\n\x1emedian_automated_stopping_spec\x18\x05 \x01(\x0b\x32\x41.google.cloud.aiplatform.v1.StudySpec.MedianAutomatedStoppingSpecH\x00\x12k\n\x1e\x63onvex_automated_stopping_spec\x18\t \x01(\x0b\x32\x41.google.cloud.aiplatform.v1.StudySpec.ConvexAutomatedStoppingSpecH\x00\x12\x46\n\x07metrics\x18\x01 \x03(\x0b\x32\x30.google.cloud.aiplatform.v1.StudySpec.MetricSpecB\x03\xe0\x41\x02\x12L\n\nparameters\x18\x02 \x03(\x0b\x32\x33.google.cloud.aiplatform.v1.StudySpec.ParameterSpecB\x03\xe0\x41\x02\x12\x42\n\talgorithm\x18\x03 \x01(\x0e\x32/.google.cloud.aiplatform.v1.StudySpec.Algorithm\x12Q\n\x11observation_noise\x18\x06 \x01(\x0e\x32\x36.google.cloud.aiplatform.v1.StudySpec.ObservationNoise\x12\x62\n\x1ameasurement_selection_type\x18\x07 \x01(\x0e\x32>.google.cloud.aiplatform.v1.StudySpec.MeasurementSelectionType\x12]\n\x15study_stopping_config\x18\x0b \x01(\x0b\x32\x39.google.cloud.aiplatform.v1.StudySpec.StudyStoppingConfigH\x01\x88\x01\x01\x1a\xad\x03\n\nMetricSpec\x12\x16\n\tmetric_id\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12L\n\x04goal\x18\x02 \x01(\x0e\x32\x39.google.cloud.aiplatform.v1.StudySpec.MetricSpec.GoalTypeB\x03\xe0\x41\x02\x12_\n\rsafety_config\x18\x03 \x01(\x0b\x32\x43.google.cloud.aiplatform.v1.StudySpec.MetricSpec.SafetyMetricConfigH\x00\x88\x01\x01\x1a\x82\x01\n\x12SafetyMetricConfig\x12\x18\n\x10safety_threshold\x18\x01 \x01(\x01\x12-\n desired_min_safe_trials_fraction\x18\x02 \x01(\x01H\x00\x88\x01\x01\x42#\n!_desired_min_safe_trials_fraction\"A\n\x08GoalType\x12\x19\n\x15GOAL_TYPE_UNSPECIFIED\x10\x00\x12\x0c\n\x08MAXIMIZE\x10\x01\x12\x0c\n\x08MINIMIZE\x10\x02\x42\x10\n\x0e_safety_config\x1a\xcd\x0e\n\rParameterSpec\x12`\n\x11\x64ouble_value_spec\x18\x02 \x01(\x0b\x32\x43.google.cloud.aiplatform.v1.StudySpec.ParameterSpec.DoubleValueSpecH\x00\x12\x62\n\x12integer_value_spec\x18\x03 \x01(\x0b\x32\x44.google.cloud.aiplatform.v1.StudySpec.ParameterSpec.IntegerValueSpecH\x00\x12j\n\x16\x63\x61tegorical_value_spec\x18\x04 \x01(\x0b\x32H.google.cloud.aiplatform.v1.StudySpec.ParameterSpec.CategoricalValueSpecH\x00\x12\x64\n\x13\x64iscrete_value_spec\x18\x05 \x01(\x0b\x32\x45.google.cloud.aiplatform.v1.StudySpec.ParameterSpec.DiscreteValueSpecH\x00\x12\x19\n\x0cparameter_id\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12Q\n\nscale_type\x18\x06 \x01(\x0e\x32=.google.cloud.aiplatform.v1.StudySpec.ParameterSpec.ScaleType\x12q\n\x1b\x63onditional_parameter_specs\x18\n \x03(\x0b\x32L.google.cloud.aiplatform.v1.StudySpec.ParameterSpec.ConditionalParameterSpec\x1ao\n\x0f\x44oubleValueSpec\x12\x16\n\tmin_value\x18\x01 \x01(\x01\x42\x03\xe0\x41\x02\x12\x16\n\tmax_value\x18\x02 \x01(\x01\x42\x03\xe0\x41\x02\x12\x1a\n\rdefault_value\x18\x04 \x01(\x01H\x00\x88\x01\x01\x42\x10\n\x0e_default_value\x1ap\n\x10IntegerValueSpec\x12\x16\n\tmin_value\x18\x01 \x01(\x03\x42\x03\xe0\x41\x02\x12\x16\n\tmax_value\x18\x02 \x01(\x03\x42\x03\xe0\x41\x02\x12\x1a\n\rdefault_value\x18\x04 \x01(\x03H\x00\x88\x01\x01\x42\x10\n\x0e_default_value\x1aY\n\x14\x43\x61tegoricalValueSpec\x12\x13\n\x06values\x18\x01 \x03(\tB\x03\xe0\x41\x02\x12\x1a\n\rdefault_value\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\x10\n\x0e_default_value\x1aV\n\x11\x44iscreteValueSpec\x12\x13\n\x06values\x18\x01 \x03(\x01\x42\x03\xe0\x41\x02\x12\x1a\n\rdefault_value\x18\x03 \x01(\x01H\x00\x88\x01\x01\x42\x10\n\x0e_default_value\x1a\xa4\x05\n\x18\x43onditionalParameterSpec\x12\x85\x01\n\x16parent_discrete_values\x18\x02 \x01(\x0b\x32\x63.google.cloud.aiplatform.v1.StudySpec.ParameterSpec.ConditionalParameterSpec.DiscreteValueConditionH\x00\x12{\n\x11parent_int_values\x18\x03 \x01(\x0b\x32^.google.cloud.aiplatform.v1.StudySpec.ParameterSpec.ConditionalParameterSpec.IntValueConditionH\x00\x12\x8b\x01\n\x19parent_categorical_values\x18\x04 \x01(\x0b\x32\x66.google.cloud.aiplatform.v1.StudySpec.ParameterSpec.ConditionalParameterSpec.CategoricalValueConditionH\x00\x12P\n\x0eparameter_spec\x18\x01 \x01(\x0b\x32\x33.google.cloud.aiplatform.v1.StudySpec.ParameterSpecB\x03\xe0\x41\x02\x1a-\n\x16\x44iscreteValueCondition\x12\x13\n\x06values\x18\x01 \x03(\x01\x42\x03\xe0\x41\x02\x1a(\n\x11IntValueCondition\x12\x13\n\x06values\x18\x01 \x03(\x03\x42\x03\xe0\x41\x02\x1a\x30\n\x19\x43\x61tegoricalValueCondition\x12\x13\n\x06values\x18\x01 \x03(\tB\x03\xe0\x41\x02\x42\x18\n\x16parent_value_condition\"n\n\tScaleType\x12\x1a\n\x16SCALE_TYPE_UNSPECIFIED\x10\x00\x12\x15\n\x11UNIT_LINEAR_SCALE\x10\x01\x12\x12\n\x0eUNIT_LOG_SCALE\x10\x02\x12\x1a\n\x16UNIT_REVERSE_LOG_SCALE\x10\x03\x42\x16\n\x14parameter_value_spec\x1a?\n\x1f\x44\x65\x63\x61yCurveAutomatedStoppingSpec\x12\x1c\n\x14use_elapsed_duration\x18\x01 \x01(\x08\x1a;\n\x1bMedianAutomatedStoppingSpec\x12\x1c\n\x14use_elapsed_duration\x18\x01 \x01(\x08\x1a\xf6\x01\n\x1b\x43onvexAutomatedStoppingSpec\x12\x16\n\x0emax_step_count\x18\x01 \x01(\x03\x12\x16\n\x0emin_step_count\x18\x02 \x01(\x03\x12\x1d\n\x15min_measurement_count\x18\x03 \x01(\x03\x12$\n\x1clearning_rate_parameter_name\x18\x04 \x01(\t\x12\x1c\n\x14use_elapsed_duration\x18\x05 \x01(\x08\x12&\n\x19update_all_stopped_trials\x18\x06 \x01(\x08H\x00\x88\x01\x01\x42\x1c\n\x1a_update_all_stopped_trials\x1a\xdd\x03\n\x13StudyStoppingConfig\x12\x34\n\x10should_stop_asap\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.BoolValue\x12S\n\x1aminimum_runtime_constraint\x18\x02 \x01(\x0b\x32/.google.cloud.aiplatform.v1.StudyTimeConstraint\x12S\n\x1amaximum_runtime_constraint\x18\x03 \x01(\x0b\x32/.google.cloud.aiplatform.v1.StudyTimeConstraint\x12\x33\n\x0emin_num_trials\x18\x04 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12\x33\n\x0emax_num_trials\x18\x05 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12?\n\x1amax_num_trials_no_progress\x18\x06 \x01(\x0b\x32\x1b.google.protobuf.Int32Value\x12;\n\x18max_duration_no_progress\x18\x07 \x01(\x0b\x32\x19.google.protobuf.Duration\"J\n\tAlgorithm\x12\x19\n\x15\x41LGORITHM_UNSPECIFIED\x10\x00\x12\x0f\n\x0bGRID_SEARCH\x10\x02\x12\x11\n\rRANDOM_SEARCH\x10\x03\"H\n\x10ObservationNoise\x12!\n\x1dOBSERVATION_NOISE_UNSPECIFIED\x10\x00\x12\x07\n\x03LOW\x10\x01\x12\x08\n\x04HIGH\x10\x02\"r\n\x18MeasurementSelectionType\x12*\n&MEASUREMENT_SELECTION_TYPE_UNSPECIFIED\x10\x00\x12\x14\n\x10LAST_MEASUREMENT\x10\x01\x12\x14\n\x10\x42\x45ST_MEASUREMENT\x10\x02\x42\x19\n\x17\x61utomated_stopping_specB\x18\n\x16_study_stopping_config\"\xdc\x01\n\x0bMeasurement\x12\x38\n\x10\x65lapsed_duration\x18\x01 \x01(\x0b\x32\x19.google.protobuf.DurationB\x03\xe0\x41\x03\x12\x17\n\nstep_count\x18\x02 \x01(\x03\x42\x03\xe0\x41\x03\x12\x44\n\x07metrics\x18\x03 \x03(\x0b\x32..google.cloud.aiplatform.v1.Measurement.MetricB\x03\xe0\x41\x03\x1a\x34\n\x06Metric\x12\x16\n\tmetric_id\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x12\n\x05value\x18\x02 \x01(\x01\x42\x03\xe0\x41\x03\x42\xc8\x01\n\x1e\x63om.google.cloud.aiplatform.v1B\nStudyProtoP\x01Z>cloud.google.com/go/aiplatform/apiv1/aiplatformpb;aiplatformpb\xaa\x02\x1aGoogle.Cloud.AIPlatform.V1\xca\x02\x1aGoogle\\Cloud\\AIPlatform\\V1\xea\x02\x1dGoogle::Cloud::AIPlatform::V1b\x06proto3"

pool = Google::Protobuf::DescriptorPool.generated_pool

begin
  pool.add_serialized_file(descriptor_data)
rescue TypeError
  # Compatibility code: will be removed in the next major version.
  require 'google/protobuf/descriptor_pb'
  parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
  parsed.clear_dependency
  serialized = parsed.class.encode(parsed)
  file = pool.add_serialized_file(serialized)
  warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
  imports = [
    ["google.protobuf.Timestamp", "google/protobuf/timestamp.proto"],
    ["google.protobuf.Value", "google/protobuf/struct.proto"],
    ["google.protobuf.Duration", "google/protobuf/duration.proto"],
    ["google.protobuf.BoolValue", "google/protobuf/wrappers.proto"],
  ]
  imports.each do |type_name, expected_filename|
    import_file = pool.lookup(type_name).file_descriptor
    if import_file.name != expected_filename
      warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
    end
  end
  warn "Each proto file must use a consistent fully-qualified name."
  warn "This will become an error in the next major version."
end

module Google
  module Cloud
    module AIPlatform
      module V1
        Study = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.Study").msgclass
        Study::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.Study.State").enummodule
        Trial = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.Trial").msgclass
        Trial::Parameter = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.Trial.Parameter").msgclass
        Trial::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.Trial.State").enummodule
        TrialContext = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.TrialContext").msgclass
        StudyTimeConstraint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudyTimeConstraint").msgclass
        StudySpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec").msgclass
        StudySpec::MetricSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.MetricSpec").msgclass
        StudySpec::MetricSpec::SafetyMetricConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.MetricSpec.SafetyMetricConfig").msgclass
        StudySpec::MetricSpec::GoalType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.MetricSpec.GoalType").enummodule
        StudySpec::ParameterSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.ParameterSpec").msgclass
        StudySpec::ParameterSpec::DoubleValueSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.ParameterSpec.DoubleValueSpec").msgclass
        StudySpec::ParameterSpec::IntegerValueSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.ParameterSpec.IntegerValueSpec").msgclass
        StudySpec::ParameterSpec::CategoricalValueSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.ParameterSpec.CategoricalValueSpec").msgclass
        StudySpec::ParameterSpec::DiscreteValueSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.ParameterSpec.DiscreteValueSpec").msgclass
        StudySpec::ParameterSpec::ConditionalParameterSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.ParameterSpec.ConditionalParameterSpec").msgclass
        StudySpec::ParameterSpec::ConditionalParameterSpec::DiscreteValueCondition = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.ParameterSpec.ConditionalParameterSpec.DiscreteValueCondition").msgclass
        StudySpec::ParameterSpec::ConditionalParameterSpec::IntValueCondition = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.ParameterSpec.ConditionalParameterSpec.IntValueCondition").msgclass
        StudySpec::ParameterSpec::ConditionalParameterSpec::CategoricalValueCondition = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.ParameterSpec.ConditionalParameterSpec.CategoricalValueCondition").msgclass
        StudySpec::ParameterSpec::ScaleType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.ParameterSpec.ScaleType").enummodule
        StudySpec::DecayCurveAutomatedStoppingSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.DecayCurveAutomatedStoppingSpec").msgclass
        StudySpec::MedianAutomatedStoppingSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.MedianAutomatedStoppingSpec").msgclass
        StudySpec::ConvexAutomatedStoppingSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.ConvexAutomatedStoppingSpec").msgclass
        StudySpec::StudyStoppingConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.StudyStoppingConfig").msgclass
        StudySpec::Algorithm = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.Algorithm").enummodule
        StudySpec::ObservationNoise = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.ObservationNoise").enummodule
        StudySpec::MeasurementSelectionType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.StudySpec.MeasurementSelectionType").enummodule
        Measurement = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.Measurement").msgclass
        Measurement::Metric = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.aiplatform.v1.Measurement.Metric").msgclass
      end
    end
  end
end
