Class: Google::Apis::AiplatformV1beta1::GoogleCloudAiplatformV1beta1DedicatedResources

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/aiplatform_v1beta1/classes.rb,
lib/google/apis/aiplatform_v1beta1/representations.rb,
lib/google/apis/aiplatform_v1beta1/representations.rb

Overview

A description of resources that are dedicated to a DeployedModel or DeployedIndex, and that need a higher degree of manual configuration.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudAiplatformV1beta1DedicatedResources

Returns a new instance of GoogleCloudAiplatformV1beta1DedicatedResources.



7693
7694
7695
# File 'lib/google/apis/aiplatform_v1beta1/classes.rb', line 7693

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#autoscaling_metric_specsArray<Google::Apis::AiplatformV1beta1::GoogleCloudAiplatformV1beta1AutoscalingMetricSpec>

Immutable. The metric specifications that overrides a resource utilization metric (CPU utilization, accelerator's duty cycle, and so on) target value ( default to 60 if not set). At most one entry is allowed per metric. If machine_spec.accelerator_count is above 0, the autoscaling will be based on both CPU utilization and accelerator's duty cycle metrics and scale up when either metrics exceeds its target value while scale down if both metrics are under their target value. The default target value is 60 for both metrics. If machine_spec.accelerator_count is 0, the autoscaling will be based on CPU utilization metric only with default target value 60 if not explicitly set. For example, in the case of Online Prediction, if you want to override target CPU utilization to 80, you should set autoscaling_metric_specs.metric_name to aiplatform.googleapis.com/prediction/online/cpu/utilization and autoscaling_metric_specs.target to 80. Corresponds to the JSON property autoscalingMetricSpecs



7627
7628
7629
# File 'lib/google/apis/aiplatform_v1beta1/classes.rb', line 7627

def autoscaling_metric_specs
  @autoscaling_metric_specs
end

#flex_startGoogle::Apis::AiplatformV1beta1::GoogleCloudAiplatformV1beta1FlexStart

FlexStart is used to schedule the deployment workload on DWS resource. It contains the max duration of the deployment. Corresponds to the JSON property flexStart



7633
7634
7635
# File 'lib/google/apis/aiplatform_v1beta1/classes.rb', line 7633

def flex_start
  @flex_start
end

#initial_replica_countFixnum

Immutable. Number of initial replicas being deployed on when scaling the workload up from zero or when creating the workload in case min_replica_count =

  1. When min_replica_count > 0 (meaning that the scale-to-zero feature is not enabled), initial_replica_count should not be set. When min_replica_count = 0 ( meaning that the scale-to-zero feature is enabled), initial_replica_count should be larger than zero, but no greater than max_replica_count. Corresponds to the JSON property initialReplicaCount

Returns:

  • (Fixnum)


7643
7644
7645
# File 'lib/google/apis/aiplatform_v1beta1/classes.rb', line 7643

def initial_replica_count
  @initial_replica_count
end

#machine_specGoogle::Apis::AiplatformV1beta1::GoogleCloudAiplatformV1beta1MachineSpec

Specification of a single machine. Corresponds to the JSON property machineSpec



7648
7649
7650
# File 'lib/google/apis/aiplatform_v1beta1/classes.rb', line 7648

def machine_spec
  @machine_spec
end

#max_replica_countFixnum

Immutable. The maximum number of replicas that may be deployed on when the traffic against it increases. If the requested value is too large, the deployment will error, but if deployment succeeds then the ability to scale to that many replicas is guaranteed (barring service outages). If traffic increases beyond what its replicas at maximum may handle, a portion of the traffic will be dropped. If this value is not provided, will use min_replica_count as the default value. The value of this field impacts the charge against Vertex CPU and GPU quotas. Specifically, you will be charged for (max_replica_count * number of cores in the selected machine type) and ( max_replica_count * number of GPUs per replica in the selected machine type). Corresponds to the JSON property maxReplicaCount

Returns:

  • (Fixnum)


7662
7663
7664
# File 'lib/google/apis/aiplatform_v1beta1/classes.rb', line 7662

def max_replica_count
  @max_replica_count
end

#min_replica_countFixnum

Required. Immutable. The minimum number of machine replicas that will be always deployed on. This value must be greater than or equal to 1. If traffic increases, it may dynamically be deployed onto more replicas, and as traffic decreases, some of these extra replicas may be freed. Corresponds to the JSON property minReplicaCount

Returns:

  • (Fixnum)


7670
7671
7672
# File 'lib/google/apis/aiplatform_v1beta1/classes.rb', line 7670

def min_replica_count
  @min_replica_count
end

#required_replica_countFixnum

Optional. Number of required available replicas for the deployment to succeed. This field is only needed when partial deployment/mutation is desired. If set, the deploy/mutate operation will succeed once available_replica_count reaches required_replica_count, and the rest of the replicas will be retried. If not set, the default required_replica_count will be min_replica_count. Corresponds to the JSON property requiredReplicaCount

Returns:

  • (Fixnum)


7679
7680
7681
# File 'lib/google/apis/aiplatform_v1beta1/classes.rb', line 7679

def required_replica_count
  @required_replica_count
end

#scale_to_zero_specGoogle::Apis::AiplatformV1beta1::GoogleCloudAiplatformV1beta1DedicatedResourcesScaleToZeroSpec

Specification for scale-to-zero feature. Corresponds to the JSON property scaleToZeroSpec



7684
7685
7686
# File 'lib/google/apis/aiplatform_v1beta1/classes.rb', line 7684

def scale_to_zero_spec
  @scale_to_zero_spec
end

#spotBoolean Also known as: spot?

Optional. If true, schedule the deployment workload on spot VMs. Corresponds to the JSON property spot

Returns:

  • (Boolean)


7690
7691
7692
# File 'lib/google/apis/aiplatform_v1beta1/classes.rb', line 7690

def spot
  @spot
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



7698
7699
7700
7701
7702
7703
7704
7705
7706
7707
7708
# File 'lib/google/apis/aiplatform_v1beta1/classes.rb', line 7698

def update!(**args)
  @autoscaling_metric_specs = args[:autoscaling_metric_specs] if args.key?(:autoscaling_metric_specs)
  @flex_start = args[:flex_start] if args.key?(:flex_start)
  @initial_replica_count = args[:initial_replica_count] if args.key?(:initial_replica_count)
  @machine_spec = args[:machine_spec] if args.key?(:machine_spec)
  @max_replica_count = args[:max_replica_count] if args.key?(:max_replica_count)
  @min_replica_count = args[:min_replica_count] if args.key?(:min_replica_count)
  @required_replica_count = args[:required_replica_count] if args.key?(:required_replica_count)
  @scale_to_zero_spec = args[:scale_to_zero_spec] if args.key?(:scale_to_zero_spec)
  @spot = args[:spot] if args.key?(:spot)
end