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

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

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

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

import com.pulumi.awsnative.sagemaker.inputs.ModelPackageTransformJobDefinitionArgs.builder
import com.pulumi.awsnative.sagemaker.kotlin.enums.ModelPackageTransformJobDefinitionBatchStrategy
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 com.pulumi.kotlin.applySuspend
import kotlin.Int
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 * Defines the input needed to run a transform job using the inference specification specified in the algorithm.
 * @property batchStrategy A string that determines the number of records included in a single mini-batch.
 * @property environment The environment variables to set in the Docker container. We support up to 16 key and values entries in the map.
 * @property maxConcurrentTransforms The maximum number of parallel requests that can be sent to each instance in a transform job. The default value is 1.
 * @property maxPayloadInMb The maximum payload size allowed, in MB. A payload is the data portion of a record (without metadata).
 * @property transformInput A description of the input source and the way the transform job consumes it.
 * @property transformOutput Identifies the Amazon S3 location where you want Amazon SageMaker to save the results from the transform job.
 * @property transformResources Identifies the ML compute instances for the transform job.
 */
public data class ModelPackageTransformJobDefinitionArgs(
    public val batchStrategy: Output? = null,
    public val environment: Output? = null,
    public val maxConcurrentTransforms: Output? = null,
    public val maxPayloadInMb: Output? = null,
    public val transformInput: Output,
    public val transformOutput: Output,
    public val transformResources: Output,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.sagemaker.inputs.ModelPackageTransformJobDefinitionArgs =
        com.pulumi.awsnative.sagemaker.inputs.ModelPackageTransformJobDefinitionArgs.builder()
            .batchStrategy(batchStrategy?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .environment(environment?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .maxConcurrentTransforms(maxConcurrentTransforms?.applyValue({ args0 -> args0 }))
            .maxPayloadInMb(maxPayloadInMb?.applyValue({ args0 -> args0 }))
            .transformInput(transformInput.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .transformOutput(transformOutput.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .transformResources(
                transformResources.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            ).build()
}

/**
 * Builder for [ModelPackageTransformJobDefinitionArgs].
 */
@PulumiTagMarker
public class ModelPackageTransformJobDefinitionArgsBuilder internal constructor() {
    private var batchStrategy: Output? = null

    private var environment: Output? = null

    private var maxConcurrentTransforms: Output? = null

    private var maxPayloadInMb: Output? = null

    private var transformInput: Output? = null

    private var transformOutput: Output? = null

    private var transformResources: Output? = null

    /**
     * @param value A string that determines the number of records included in a single mini-batch.
     */
    @JvmName("jbvymktoxindtmbs")
    public suspend fun batchStrategy(`value`: Output) {
        this.batchStrategy = value
    }

    /**
     * @param value The environment variables to set in the Docker container. We support up to 16 key and values entries in the map.
     */
    @JvmName("fpwjmgofayyqvdsl")
    public suspend fun environment(`value`: Output) {
        this.environment = value
    }

    /**
     * @param value The maximum number of parallel requests that can be sent to each instance in a transform job. The default value is 1.
     */
    @JvmName("clojmaiwhhjacalq")
    public suspend fun maxConcurrentTransforms(`value`: Output) {
        this.maxConcurrentTransforms = value
    }

    /**
     * @param value The maximum payload size allowed, in MB. A payload is the data portion of a record (without metadata).
     */
    @JvmName("eojtnoiivpnhxhgm")
    public suspend fun maxPayloadInMb(`value`: Output) {
        this.maxPayloadInMb = value
    }

    /**
     * @param value A description of the input source and the way the transform job consumes it.
     */
    @JvmName("osgbwhykoadnmidf")
    public suspend fun transformInput(`value`: Output) {
        this.transformInput = value
    }

    /**
     * @param value Identifies the Amazon S3 location where you want Amazon SageMaker to save the results from the transform job.
     */
    @JvmName("mkuwedwcsyoggbrv")
    public suspend fun transformOutput(`value`: Output) {
        this.transformOutput = value
    }

    /**
     * @param value Identifies the ML compute instances for the transform job.
     */
    @JvmName("dgqydsdexljvnkja")
    public suspend fun transformResources(`value`: Output) {
        this.transformResources = value
    }

    /**
     * @param value A string that determines the number of records included in a single mini-batch.
     */
    @JvmName("plxaiamavjhdycbh")
    public suspend fun batchStrategy(`value`: ModelPackageTransformJobDefinitionBatchStrategy?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.batchStrategy = mapped
    }

    /**
     * @param value The environment variables to set in the Docker container. We support up to 16 key and values entries in the map.
     */
    @JvmName("nxdkdymorpbeedaf")
    public suspend fun environment(`value`: ModelPackageEnvironmentArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.environment = mapped
    }

    /**
     * @param argument The environment variables to set in the Docker container. We support up to 16 key and values entries in the map.
     */
    @JvmName("dsahowktvwtypeqg")
    public suspend fun environment(argument: suspend ModelPackageEnvironmentArgsBuilder.() -> Unit) {
        val toBeMapped = ModelPackageEnvironmentArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.environment = mapped
    }

    /**
     * @param value The maximum number of parallel requests that can be sent to each instance in a transform job. The default value is 1.
     */
    @JvmName("lqdwlhckoehiyfoo")
    public suspend fun maxConcurrentTransforms(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maxConcurrentTransforms = mapped
    }

    /**
     * @param value The maximum payload size allowed, in MB. A payload is the data portion of a record (without metadata).
     */
    @JvmName("csbeakuwjuaqnwki")
    public suspend fun maxPayloadInMb(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maxPayloadInMb = mapped
    }

    /**
     * @param value A description of the input source and the way the transform job consumes it.
     */
    @JvmName("kennpfheqijnknpc")
    public suspend fun transformInput(`value`: ModelPackageTransformInputArgs) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.transformInput = mapped
    }

    /**
     * @param argument A description of the input source and the way the transform job consumes it.
     */
    @JvmName("agojcplwtxnlvcmf")
    public suspend fun transformInput(argument: suspend ModelPackageTransformInputArgsBuilder.() -> Unit) {
        val toBeMapped = ModelPackageTransformInputArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.transformInput = mapped
    }

    /**
     * @param value Identifies the Amazon S3 location where you want Amazon SageMaker to save the results from the transform job.
     */
    @JvmName("gxxtykiglktsjdjw")
    public suspend fun transformOutput(`value`: ModelPackageTransformOutputArgs) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.transformOutput = mapped
    }

    /**
     * @param argument Identifies the Amazon S3 location where you want Amazon SageMaker to save the results from the transform job.
     */
    @JvmName("fhvnboguuadignxw")
    public suspend fun transformOutput(argument: suspend ModelPackageTransformOutputArgsBuilder.() -> Unit) {
        val toBeMapped = ModelPackageTransformOutputArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.transformOutput = mapped
    }

    /**
     * @param value Identifies the ML compute instances for the transform job.
     */
    @JvmName("wvhnjhwubxwumtcx")
    public suspend fun transformResources(`value`: ModelPackageTransformResourcesArgs) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.transformResources = mapped
    }

    /**
     * @param argument Identifies the ML compute instances for the transform job.
     */
    @JvmName("jstaujcafnvlwkxj")
    public suspend fun transformResources(argument: suspend ModelPackageTransformResourcesArgsBuilder.() -> Unit) {
        val toBeMapped = ModelPackageTransformResourcesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.transformResources = mapped
    }

    internal fun build(): ModelPackageTransformJobDefinitionArgs =
        ModelPackageTransformJobDefinitionArgs(
            batchStrategy = batchStrategy,
            environment = environment,
            maxConcurrentTransforms = maxConcurrentTransforms,
            maxPayloadInMb = maxPayloadInMb,
            transformInput = transformInput ?: throw PulumiNullFieldException("transformInput"),
            transformOutput = transformOutput ?: throw PulumiNullFieldException("transformOutput"),
            transformResources = transformResources ?: throw PulumiNullFieldException("transformResources"),
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy