Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.aws.sagemaker.inputs.EndpointConfigurationProductionVariantArgs Maven / Gradle / Ivy
Go to download
A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.aws.sagemaker.inputs;
import com.pulumi.aws.sagemaker.inputs.EndpointConfigurationProductionVariantCoreDumpConfigArgs;
import com.pulumi.aws.sagemaker.inputs.EndpointConfigurationProductionVariantManagedInstanceScalingArgs;
import com.pulumi.aws.sagemaker.inputs.EndpointConfigurationProductionVariantRoutingConfigArgs;
import com.pulumi.aws.sagemaker.inputs.EndpointConfigurationProductionVariantServerlessConfigArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.Double;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class EndpointConfigurationProductionVariantArgs extends com.pulumi.resources.ResourceArgs {
public static final EndpointConfigurationProductionVariantArgs Empty = new EndpointConfigurationProductionVariantArgs();
/**
* The size of the Elastic Inference (EI) instance to use for the production variant.
*
*/
@Import(name="acceleratorType")
private @Nullable Output acceleratorType;
/**
* @return The size of the Elastic Inference (EI) instance to use for the production variant.
*
*/
public Optional> acceleratorType() {
return Optional.ofNullable(this.acceleratorType);
}
/**
* The timeout value, in seconds, for your inference container to pass health check by SageMaker Hosting. For more information about health check, see [How Your Container Should Respond to Health Check (Ping) Requests](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-inference-code.html#your-algorithms-inference-algo-ping-requests). Valid values between `60` and `3600`.
*
*/
@Import(name="containerStartupHealthCheckTimeoutInSeconds")
private @Nullable Output containerStartupHealthCheckTimeoutInSeconds;
/**
* @return The timeout value, in seconds, for your inference container to pass health check by SageMaker Hosting. For more information about health check, see [How Your Container Should Respond to Health Check (Ping) Requests](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-inference-code.html#your-algorithms-inference-algo-ping-requests). Valid values between `60` and `3600`.
*
*/
public Optional> containerStartupHealthCheckTimeoutInSeconds() {
return Optional.ofNullable(this.containerStartupHealthCheckTimeoutInSeconds);
}
/**
* Specifies configuration for a core dump from the model container when the process crashes. Fields are documented below.
*
*/
@Import(name="coreDumpConfig")
private @Nullable Output coreDumpConfig;
/**
* @return Specifies configuration for a core dump from the model container when the process crashes. Fields are documented below.
*
*/
public Optional> coreDumpConfig() {
return Optional.ofNullable(this.coreDumpConfig);
}
/**
* You can use this parameter to turn on native Amazon Web Services Systems Manager (SSM) access for a production variant behind an endpoint. By default, SSM access is disabled for all production variants behind an endpoints.
*
*/
@Import(name="enableSsmAccess")
private @Nullable Output enableSsmAccess;
/**
* @return You can use this parameter to turn on native Amazon Web Services Systems Manager (SSM) access for a production variant behind an endpoint. By default, SSM access is disabled for all production variants behind an endpoints.
*
*/
public Optional> enableSsmAccess() {
return Optional.ofNullable(this.enableSsmAccess);
}
/**
* Specifies an option from a collection of preconfigured Amazon Machine Image (AMI) images. Each image is configured by Amazon Web Services with a set of software and driver versions. Amazon Web Services optimizes these configurations for different machine learning workloads.
*
*/
@Import(name="inferenceAmiVersion")
private @Nullable Output inferenceAmiVersion;
/**
* @return Specifies an option from a collection of preconfigured Amazon Machine Image (AMI) images. Each image is configured by Amazon Web Services with a set of software and driver versions. Amazon Web Services optimizes these configurations for different machine learning workloads.
*
*/
public Optional> inferenceAmiVersion() {
return Optional.ofNullable(this.inferenceAmiVersion);
}
/**
* Initial number of instances used for auto-scaling.
*
*/
@Import(name="initialInstanceCount")
private @Nullable Output initialInstanceCount;
/**
* @return Initial number of instances used for auto-scaling.
*
*/
public Optional> initialInstanceCount() {
return Optional.ofNullable(this.initialInstanceCount);
}
/**
* Determines initial traffic distribution among all of the models that you specify in the endpoint configuration. If unspecified, it defaults to `1.0`.
*
*/
@Import(name="initialVariantWeight")
private @Nullable Output initialVariantWeight;
/**
* @return Determines initial traffic distribution among all of the models that you specify in the endpoint configuration. If unspecified, it defaults to `1.0`.
*
*/
public Optional> initialVariantWeight() {
return Optional.ofNullable(this.initialVariantWeight);
}
/**
* The type of instance to start.
*
*/
@Import(name="instanceType")
private @Nullable Output instanceType;
/**
* @return The type of instance to start.
*
*/
public Optional> instanceType() {
return Optional.ofNullable(this.instanceType);
}
/**
* Settings that control the range in the number of instances that the endpoint provisions as it scales up or down to accommodate traffic.
*
*/
@Import(name="managedInstanceScaling")
private @Nullable Output managedInstanceScaling;
/**
* @return Settings that control the range in the number of instances that the endpoint provisions as it scales up or down to accommodate traffic.
*
*/
public Optional> managedInstanceScaling() {
return Optional.ofNullable(this.managedInstanceScaling);
}
/**
* The timeout value, in seconds, to download and extract the model that you want to host from Amazon S3 to the individual inference instance associated with this production variant. Valid values between `60` and `3600`.
*
*/
@Import(name="modelDataDownloadTimeoutInSeconds")
private @Nullable Output modelDataDownloadTimeoutInSeconds;
/**
* @return The timeout value, in seconds, to download and extract the model that you want to host from Amazon S3 to the individual inference instance associated with this production variant. Valid values between `60` and `3600`.
*
*/
public Optional> modelDataDownloadTimeoutInSeconds() {
return Optional.ofNullable(this.modelDataDownloadTimeoutInSeconds);
}
/**
* The name of the model to use.
*
*/
@Import(name="modelName", required=true)
private Output modelName;
/**
* @return The name of the model to use.
*
*/
public Output modelName() {
return this.modelName;
}
/**
* Sets how the endpoint routes incoming traffic. See routing_config below.
*
*/
@Import(name="routingConfigs")
private @Nullable Output> routingConfigs;
/**
* @return Sets how the endpoint routes incoming traffic. See routing_config below.
*
*/
public Optional>> routingConfigs() {
return Optional.ofNullable(this.routingConfigs);
}
/**
* Specifies configuration for how an endpoint performs asynchronous inference.
*
*/
@Import(name="serverlessConfig")
private @Nullable Output serverlessConfig;
/**
* @return Specifies configuration for how an endpoint performs asynchronous inference.
*
*/
public Optional> serverlessConfig() {
return Optional.ofNullable(this.serverlessConfig);
}
/**
* The name of the variant. If omitted, this provider will assign a random, unique name.
*
*/
@Import(name="variantName")
private @Nullable Output variantName;
/**
* @return The name of the variant. If omitted, this provider will assign a random, unique name.
*
*/
public Optional> variantName() {
return Optional.ofNullable(this.variantName);
}
/**
* The size, in GB, of the ML storage volume attached to individual inference instance associated with the production variant. Valid values between `1` and `512`.
*
*/
@Import(name="volumeSizeInGb")
private @Nullable Output volumeSizeInGb;
/**
* @return The size, in GB, of the ML storage volume attached to individual inference instance associated with the production variant. Valid values between `1` and `512`.
*
*/
public Optional> volumeSizeInGb() {
return Optional.ofNullable(this.volumeSizeInGb);
}
private EndpointConfigurationProductionVariantArgs() {}
private EndpointConfigurationProductionVariantArgs(EndpointConfigurationProductionVariantArgs $) {
this.acceleratorType = $.acceleratorType;
this.containerStartupHealthCheckTimeoutInSeconds = $.containerStartupHealthCheckTimeoutInSeconds;
this.coreDumpConfig = $.coreDumpConfig;
this.enableSsmAccess = $.enableSsmAccess;
this.inferenceAmiVersion = $.inferenceAmiVersion;
this.initialInstanceCount = $.initialInstanceCount;
this.initialVariantWeight = $.initialVariantWeight;
this.instanceType = $.instanceType;
this.managedInstanceScaling = $.managedInstanceScaling;
this.modelDataDownloadTimeoutInSeconds = $.modelDataDownloadTimeoutInSeconds;
this.modelName = $.modelName;
this.routingConfigs = $.routingConfigs;
this.serverlessConfig = $.serverlessConfig;
this.variantName = $.variantName;
this.volumeSizeInGb = $.volumeSizeInGb;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(EndpointConfigurationProductionVariantArgs defaults) {
return new Builder(defaults);
}
public static final class Builder {
private EndpointConfigurationProductionVariantArgs $;
public Builder() {
$ = new EndpointConfigurationProductionVariantArgs();
}
public Builder(EndpointConfigurationProductionVariantArgs defaults) {
$ = new EndpointConfigurationProductionVariantArgs(Objects.requireNonNull(defaults));
}
/**
* @param acceleratorType The size of the Elastic Inference (EI) instance to use for the production variant.
*
* @return builder
*
*/
public Builder acceleratorType(@Nullable Output acceleratorType) {
$.acceleratorType = acceleratorType;
return this;
}
/**
* @param acceleratorType The size of the Elastic Inference (EI) instance to use for the production variant.
*
* @return builder
*
*/
public Builder acceleratorType(String acceleratorType) {
return acceleratorType(Output.of(acceleratorType));
}
/**
* @param containerStartupHealthCheckTimeoutInSeconds The timeout value, in seconds, for your inference container to pass health check by SageMaker Hosting. For more information about health check, see [How Your Container Should Respond to Health Check (Ping) Requests](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-inference-code.html#your-algorithms-inference-algo-ping-requests). Valid values between `60` and `3600`.
*
* @return builder
*
*/
public Builder containerStartupHealthCheckTimeoutInSeconds(@Nullable Output containerStartupHealthCheckTimeoutInSeconds) {
$.containerStartupHealthCheckTimeoutInSeconds = containerStartupHealthCheckTimeoutInSeconds;
return this;
}
/**
* @param containerStartupHealthCheckTimeoutInSeconds The timeout value, in seconds, for your inference container to pass health check by SageMaker Hosting. For more information about health check, see [How Your Container Should Respond to Health Check (Ping) Requests](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-inference-code.html#your-algorithms-inference-algo-ping-requests). Valid values between `60` and `3600`.
*
* @return builder
*
*/
public Builder containerStartupHealthCheckTimeoutInSeconds(Integer containerStartupHealthCheckTimeoutInSeconds) {
return containerStartupHealthCheckTimeoutInSeconds(Output.of(containerStartupHealthCheckTimeoutInSeconds));
}
/**
* @param coreDumpConfig Specifies configuration for a core dump from the model container when the process crashes. Fields are documented below.
*
* @return builder
*
*/
public Builder coreDumpConfig(@Nullable Output coreDumpConfig) {
$.coreDumpConfig = coreDumpConfig;
return this;
}
/**
* @param coreDumpConfig Specifies configuration for a core dump from the model container when the process crashes. Fields are documented below.
*
* @return builder
*
*/
public Builder coreDumpConfig(EndpointConfigurationProductionVariantCoreDumpConfigArgs coreDumpConfig) {
return coreDumpConfig(Output.of(coreDumpConfig));
}
/**
* @param enableSsmAccess You can use this parameter to turn on native Amazon Web Services Systems Manager (SSM) access for a production variant behind an endpoint. By default, SSM access is disabled for all production variants behind an endpoints.
*
* @return builder
*
*/
public Builder enableSsmAccess(@Nullable Output enableSsmAccess) {
$.enableSsmAccess = enableSsmAccess;
return this;
}
/**
* @param enableSsmAccess You can use this parameter to turn on native Amazon Web Services Systems Manager (SSM) access for a production variant behind an endpoint. By default, SSM access is disabled for all production variants behind an endpoints.
*
* @return builder
*
*/
public Builder enableSsmAccess(Boolean enableSsmAccess) {
return enableSsmAccess(Output.of(enableSsmAccess));
}
/**
* @param inferenceAmiVersion Specifies an option from a collection of preconfigured Amazon Machine Image (AMI) images. Each image is configured by Amazon Web Services with a set of software and driver versions. Amazon Web Services optimizes these configurations for different machine learning workloads.
*
* @return builder
*
*/
public Builder inferenceAmiVersion(@Nullable Output inferenceAmiVersion) {
$.inferenceAmiVersion = inferenceAmiVersion;
return this;
}
/**
* @param inferenceAmiVersion Specifies an option from a collection of preconfigured Amazon Machine Image (AMI) images. Each image is configured by Amazon Web Services with a set of software and driver versions. Amazon Web Services optimizes these configurations for different machine learning workloads.
*
* @return builder
*
*/
public Builder inferenceAmiVersion(String inferenceAmiVersion) {
return inferenceAmiVersion(Output.of(inferenceAmiVersion));
}
/**
* @param initialInstanceCount Initial number of instances used for auto-scaling.
*
* @return builder
*
*/
public Builder initialInstanceCount(@Nullable Output initialInstanceCount) {
$.initialInstanceCount = initialInstanceCount;
return this;
}
/**
* @param initialInstanceCount Initial number of instances used for auto-scaling.
*
* @return builder
*
*/
public Builder initialInstanceCount(Integer initialInstanceCount) {
return initialInstanceCount(Output.of(initialInstanceCount));
}
/**
* @param initialVariantWeight Determines initial traffic distribution among all of the models that you specify in the endpoint configuration. If unspecified, it defaults to `1.0`.
*
* @return builder
*
*/
public Builder initialVariantWeight(@Nullable Output initialVariantWeight) {
$.initialVariantWeight = initialVariantWeight;
return this;
}
/**
* @param initialVariantWeight Determines initial traffic distribution among all of the models that you specify in the endpoint configuration. If unspecified, it defaults to `1.0`.
*
* @return builder
*
*/
public Builder initialVariantWeight(Double initialVariantWeight) {
return initialVariantWeight(Output.of(initialVariantWeight));
}
/**
* @param instanceType The type of instance to start.
*
* @return builder
*
*/
public Builder instanceType(@Nullable Output instanceType) {
$.instanceType = instanceType;
return this;
}
/**
* @param instanceType The type of instance to start.
*
* @return builder
*
*/
public Builder instanceType(String instanceType) {
return instanceType(Output.of(instanceType));
}
/**
* @param managedInstanceScaling Settings that control the range in the number of instances that the endpoint provisions as it scales up or down to accommodate traffic.
*
* @return builder
*
*/
public Builder managedInstanceScaling(@Nullable Output managedInstanceScaling) {
$.managedInstanceScaling = managedInstanceScaling;
return this;
}
/**
* @param managedInstanceScaling Settings that control the range in the number of instances that the endpoint provisions as it scales up or down to accommodate traffic.
*
* @return builder
*
*/
public Builder managedInstanceScaling(EndpointConfigurationProductionVariantManagedInstanceScalingArgs managedInstanceScaling) {
return managedInstanceScaling(Output.of(managedInstanceScaling));
}
/**
* @param modelDataDownloadTimeoutInSeconds The timeout value, in seconds, to download and extract the model that you want to host from Amazon S3 to the individual inference instance associated with this production variant. Valid values between `60` and `3600`.
*
* @return builder
*
*/
public Builder modelDataDownloadTimeoutInSeconds(@Nullable Output modelDataDownloadTimeoutInSeconds) {
$.modelDataDownloadTimeoutInSeconds = modelDataDownloadTimeoutInSeconds;
return this;
}
/**
* @param modelDataDownloadTimeoutInSeconds The timeout value, in seconds, to download and extract the model that you want to host from Amazon S3 to the individual inference instance associated with this production variant. Valid values between `60` and `3600`.
*
* @return builder
*
*/
public Builder modelDataDownloadTimeoutInSeconds(Integer modelDataDownloadTimeoutInSeconds) {
return modelDataDownloadTimeoutInSeconds(Output.of(modelDataDownloadTimeoutInSeconds));
}
/**
* @param modelName The name of the model to use.
*
* @return builder
*
*/
public Builder modelName(Output modelName) {
$.modelName = modelName;
return this;
}
/**
* @param modelName The name of the model to use.
*
* @return builder
*
*/
public Builder modelName(String modelName) {
return modelName(Output.of(modelName));
}
/**
* @param routingConfigs Sets how the endpoint routes incoming traffic. See routing_config below.
*
* @return builder
*
*/
public Builder routingConfigs(@Nullable Output> routingConfigs) {
$.routingConfigs = routingConfigs;
return this;
}
/**
* @param routingConfigs Sets how the endpoint routes incoming traffic. See routing_config below.
*
* @return builder
*
*/
public Builder routingConfigs(List routingConfigs) {
return routingConfigs(Output.of(routingConfigs));
}
/**
* @param routingConfigs Sets how the endpoint routes incoming traffic. See routing_config below.
*
* @return builder
*
*/
public Builder routingConfigs(EndpointConfigurationProductionVariantRoutingConfigArgs... routingConfigs) {
return routingConfigs(List.of(routingConfigs));
}
/**
* @param serverlessConfig Specifies configuration for how an endpoint performs asynchronous inference.
*
* @return builder
*
*/
public Builder serverlessConfig(@Nullable Output serverlessConfig) {
$.serverlessConfig = serverlessConfig;
return this;
}
/**
* @param serverlessConfig Specifies configuration for how an endpoint performs asynchronous inference.
*
* @return builder
*
*/
public Builder serverlessConfig(EndpointConfigurationProductionVariantServerlessConfigArgs serverlessConfig) {
return serverlessConfig(Output.of(serverlessConfig));
}
/**
* @param variantName The name of the variant. If omitted, this provider will assign a random, unique name.
*
* @return builder
*
*/
public Builder variantName(@Nullable Output variantName) {
$.variantName = variantName;
return this;
}
/**
* @param variantName The name of the variant. If omitted, this provider will assign a random, unique name.
*
* @return builder
*
*/
public Builder variantName(String variantName) {
return variantName(Output.of(variantName));
}
/**
* @param volumeSizeInGb The size, in GB, of the ML storage volume attached to individual inference instance associated with the production variant. Valid values between `1` and `512`.
*
* @return builder
*
*/
public Builder volumeSizeInGb(@Nullable Output volumeSizeInGb) {
$.volumeSizeInGb = volumeSizeInGb;
return this;
}
/**
* @param volumeSizeInGb The size, in GB, of the ML storage volume attached to individual inference instance associated with the production variant. Valid values between `1` and `512`.
*
* @return builder
*
*/
public Builder volumeSizeInGb(Integer volumeSizeInGb) {
return volumeSizeInGb(Output.of(volumeSizeInGb));
}
public EndpointConfigurationProductionVariantArgs build() {
if ($.modelName == null) {
throw new MissingRequiredPropertyException("EndpointConfigurationProductionVariantArgs", "modelName");
}
return $;
}
}
}