All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.awsnative.sagemaker.kotlin.inputs.ModelExplainabilityJobDefinitionClusterConfigArgs.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.sagemaker.kotlin.inputs

import com.pulumi.awsnative.sagemaker.inputs.ModelExplainabilityJobDefinitionClusterConfigArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 * Configuration for the cluster used to run model monitoring jobs.
 * @property instanceCount The number of ML compute instances to use in the model monitoring job. For distributed processing jobs, specify a value greater than 1. The default value is 1.
 * @property instanceType The ML compute instance type for the processing job.
 * @property volumeKmsKeyId The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance(s) that run the model monitoring job.
 * @property volumeSizeInGb The size of the ML storage volume, in gigabytes, that you want to provision. You must specify sufficient ML storage for your scenario.
 */
public data class ModelExplainabilityJobDefinitionClusterConfigArgs(
    public val instanceCount: Output,
    public val instanceType: Output,
    public val volumeKmsKeyId: Output? = null,
    public val volumeSizeInGb: Output,
) :
    ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.sagemaker.inputs.ModelExplainabilityJobDefinitionClusterConfigArgs =
        com.pulumi.awsnative.sagemaker.inputs.ModelExplainabilityJobDefinitionClusterConfigArgs.builder()
            .instanceCount(instanceCount.applyValue({ args0 -> args0 }))
            .instanceType(instanceType.applyValue({ args0 -> args0 }))
            .volumeKmsKeyId(volumeKmsKeyId?.applyValue({ args0 -> args0 }))
            .volumeSizeInGb(volumeSizeInGb.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [ModelExplainabilityJobDefinitionClusterConfigArgs].
 */
@PulumiTagMarker
public class ModelExplainabilityJobDefinitionClusterConfigArgsBuilder internal constructor() {
    private var instanceCount: Output? = null

    private var instanceType: Output? = null

    private var volumeKmsKeyId: Output? = null

    private var volumeSizeInGb: Output? = null

    /**
     * @param value The number of ML compute instances to use in the model monitoring job. For distributed processing jobs, specify a value greater than 1. The default value is 1.
     */
    @JvmName("vfqfmbsqjrlblscr")
    public suspend fun instanceCount(`value`: Output) {
        this.instanceCount = value
    }

    /**
     * @param value The ML compute instance type for the processing job.
     */
    @JvmName("otgihmcrepmnfmkw")
    public suspend fun instanceType(`value`: Output) {
        this.instanceType = value
    }

    /**
     * @param value The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance(s) that run the model monitoring job.
     */
    @JvmName("lepctolgmfsjbxxt")
    public suspend fun volumeKmsKeyId(`value`: Output) {
        this.volumeKmsKeyId = value
    }

    /**
     * @param value The size of the ML storage volume, in gigabytes, that you want to provision. You must specify sufficient ML storage for your scenario.
     */
    @JvmName("dninidypxfvimgsr")
    public suspend fun volumeSizeInGb(`value`: Output) {
        this.volumeSizeInGb = value
    }

    /**
     * @param value The number of ML compute instances to use in the model monitoring job. For distributed processing jobs, specify a value greater than 1. The default value is 1.
     */
    @JvmName("eoeprpyodctrjslo")
    public suspend fun instanceCount(`value`: Int) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.instanceCount = mapped
    }

    /**
     * @param value The ML compute instance type for the processing job.
     */
    @JvmName("cnogwmqppolfyrrf")
    public suspend fun instanceType(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.instanceType = mapped
    }

    /**
     * @param value The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance(s) that run the model monitoring job.
     */
    @JvmName("obljjarycrpqerrr")
    public suspend fun volumeKmsKeyId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.volumeKmsKeyId = mapped
    }

    /**
     * @param value The size of the ML storage volume, in gigabytes, that you want to provision. You must specify sufficient ML storage for your scenario.
     */
    @JvmName("ljaxojdpnivvrfap")
    public suspend fun volumeSizeInGb(`value`: Int) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.volumeSizeInGb = mapped
    }

    internal fun build(): ModelExplainabilityJobDefinitionClusterConfigArgs =
        ModelExplainabilityJobDefinitionClusterConfigArgs(
            instanceCount = instanceCount ?: throw PulumiNullFieldException("instanceCount"),
            instanceType = instanceType ?: throw PulumiNullFieldException("instanceType"),
            volumeKmsKeyId = volumeKmsKeyId,
            volumeSizeInGb = volumeSizeInGb ?: throw PulumiNullFieldException("volumeSizeInGb"),
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy