Flow Definition Args
data class FlowDefinitionArgs(val flowDefinitionName: Output<String>? = null, val humanLoopActivationConfig: Output<FlowDefinitionHumanLoopActivationConfigArgs>? = null, val humanLoopConfig: Output<FlowDefinitionHumanLoopConfigArgs>? = null, val humanLoopRequestSource: Output<FlowDefinitionHumanLoopRequestSourceArgs>? = null, val outputConfig: Output<FlowDefinitionOutputConfigArgs>? = null, val roleArn: Output<String>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<FlowDefinitionArgs>
Provides a SageMaker Flow Definition resource.
Example Usage
Basic Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.sagemaker.FlowDefinition;
import com.pulumi.aws.sagemaker.FlowDefinitionArgs;
import com.pulumi.aws.sagemaker.inputs.FlowDefinitionHumanLoopConfigArgs;
import com.pulumi.aws.sagemaker.inputs.FlowDefinitionOutputConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new FlowDefinition("example", FlowDefinitionArgs.builder()
.flowDefinitionName("example")
.roleArn(aws_iam_role.example().arn())
.humanLoopConfig(FlowDefinitionHumanLoopConfigArgs.builder()
.humanTaskUiArn(aws_sagemaker_human_task_ui.example().arn())
.taskAvailabilityLifetimeInSeconds(1)
.taskCount(1)
.taskDescription("example")
.taskTitle("example")
.workteamArn(aws_sagemaker_workteam.example().arn())
.build())
.outputConfig(FlowDefinitionOutputConfigArgs.builder()
.s3OutputPath(String.format("s3://%s/", aws_s3_bucket.example().bucket()))
.build())
.build());
}
}
Content copied to clipboard
Public Workteam Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.sagemaker.FlowDefinition;
import com.pulumi.aws.sagemaker.FlowDefinitionArgs;
import com.pulumi.aws.sagemaker.inputs.FlowDefinitionHumanLoopConfigArgs;
import com.pulumi.aws.sagemaker.inputs.FlowDefinitionHumanLoopConfigPublicWorkforceTaskPriceArgs;
import com.pulumi.aws.sagemaker.inputs.FlowDefinitionHumanLoopConfigPublicWorkforceTaskPriceAmountInUsdArgs;
import com.pulumi.aws.sagemaker.inputs.FlowDefinitionOutputConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new FlowDefinition("example", FlowDefinitionArgs.builder()
.flowDefinitionName("example")
.roleArn(aws_iam_role.example().arn())
.humanLoopConfig(FlowDefinitionHumanLoopConfigArgs.builder()
.humanTaskUiArn(aws_sagemaker_human_task_ui.example().arn())
.taskAvailabilityLifetimeInSeconds(1)
.taskCount(1)
.taskDescription("example")
.taskTitle("example")
.workteamArn(String.format("arn:aws:sagemaker:%s:394669845002:workteam/public-crowd/default", data.aws_region().current().name()))
.publicWorkforceTaskPrice(FlowDefinitionHumanLoopConfigPublicWorkforceTaskPriceArgs.builder()
.amountInUsd(FlowDefinitionHumanLoopConfigPublicWorkforceTaskPriceAmountInUsdArgs.builder()
.cents(1)
.tenthFractionsOfACent(2)
.build())
.build())
.build())
.outputConfig(FlowDefinitionOutputConfigArgs.builder()
.s3OutputPath(String.format("s3://%s/", aws_s3_bucket.example().bucket()))
.build())
.build());
}
}
Content copied to clipboard
Human Loop Activation Config Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.sagemaker.FlowDefinition;
import com.pulumi.aws.sagemaker.FlowDefinitionArgs;
import com.pulumi.aws.sagemaker.inputs.FlowDefinitionHumanLoopConfigArgs;
import com.pulumi.aws.sagemaker.inputs.FlowDefinitionHumanLoopRequestSourceArgs;
import com.pulumi.aws.sagemaker.inputs.FlowDefinitionHumanLoopActivationConfigArgs;
import com.pulumi.aws.sagemaker.inputs.FlowDefinitionHumanLoopActivationConfigHumanLoopActivationConditionsConfigArgs;
import com.pulumi.aws.sagemaker.inputs.FlowDefinitionOutputConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new FlowDefinition("example", FlowDefinitionArgs.builder()
.flowDefinitionName("example")
.roleArn(aws_iam_role.example().arn())
.humanLoopConfig(FlowDefinitionHumanLoopConfigArgs.builder()
.humanTaskUiArn(aws_sagemaker_human_task_ui.example().arn())
.taskAvailabilityLifetimeInSeconds(1)
.taskCount(1)
.taskDescription("example")
.taskTitle("example")
.workteamArn(aws_sagemaker_workteam.example().arn())
.build())
.humanLoopRequestSource(FlowDefinitionHumanLoopRequestSourceArgs.builder()
.awsManagedHumanLoopRequestSource("AWS/Textract/AnalyzeDocument/Forms/V1")
.build())
.humanLoopActivationConfig(FlowDefinitionHumanLoopActivationConfigArgs.builder()
.humanLoopActivationConditionsConfig(FlowDefinitionHumanLoopActivationConfigHumanLoopActivationConditionsConfigArgs.builder()
.humanLoopActivationConditions("""
{
"Conditions": [
{
"ConditionType": "Sampling",
"ConditionParameters": {
"RandomSamplingPercentage": 5
}
}
]
}
""")
.build())
.build())
.outputConfig(FlowDefinitionOutputConfigArgs.builder()
.s3OutputPath(String.format("s3://%s/", aws_s3_bucket.example().bucket()))
.build())
.build());
}
}
Content copied to clipboard
Import
SageMaker Flow Definitions can be imported using the flow_definition_name
, e.g.,
$ pulumi import aws:sagemaker/flowDefinition:FlowDefinition example example
Content copied to clipboard
Constructors
Link copied to clipboard
constructor(flowDefinitionName: Output<String>? = null, humanLoopActivationConfig: Output<FlowDefinitionHumanLoopActivationConfigArgs>? = null, humanLoopConfig: Output<FlowDefinitionHumanLoopConfigArgs>? = null, humanLoopRequestSource: Output<FlowDefinitionHumanLoopRequestSourceArgs>? = null, outputConfig: Output<FlowDefinitionOutputConfigArgs>? = null, roleArn: Output<String>? = null, tags: Output<Map<String, String>>? = null)
Properties
Link copied to clipboard
The name of your flow definition.
Link copied to clipboard
An object containing information about the events that trigger a human workflow. See Human Loop Activation Config details below.
Link copied to clipboard
An object containing information about the tasks the human reviewers will perform. See Human Loop Config details below.
Link copied to clipboard
Container for configuring the source of human task requests. Use to specify if Amazon Rekognition or Amazon Textract is used as an integration source. See Human Loop Request Source details below.
Link copied to clipboard
An object containing information about where the human review results will be uploaded. See Output Config details below.