1. Packages
  2. AWS
  3. API Docs
  4. bedrock
  5. AgentAgent
AWS v6.60.0 published on Tuesday, Nov 19, 2024 by Pulumi

aws.bedrock.AgentAgent

Explore with Pulumi AI

aws logo
AWS v6.60.0 published on Tuesday, Nov 19, 2024 by Pulumi

    Resource for managing an AWS Agents for Amazon Bedrock Agent.

    Example Usage

    Basic Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const current = aws.getCallerIdentity({});
    const currentGetPartition = aws.getPartition({});
    const currentGetRegion = aws.getRegion({});
    const exampleAgentTrust = Promise.all([current, currentGetPartition, currentGetRegion, current]).then(([current, currentGetPartition, currentGetRegion, current1]) => aws.iam.getPolicyDocument({
        statements: [{
            actions: ["sts:AssumeRole"],
            principals: [{
                identifiers: ["bedrock.amazonaws.com"],
                type: "Service",
            }],
            conditions: [
                {
                    test: "StringEquals",
                    values: [current.accountId],
                    variable: "aws:SourceAccount",
                },
                {
                    test: "ArnLike",
                    values: [`arn:${currentGetPartition.partition}:bedrock:${currentGetRegion.name}:${current1.accountId}:agent/*`],
                    variable: "AWS:SourceArn",
                },
            ],
        }],
    }));
    const exampleAgentPermissions = Promise.all([currentGetPartition, currentGetRegion]).then(([currentGetPartition, currentGetRegion]) => aws.iam.getPolicyDocument({
        statements: [{
            actions: ["bedrock:InvokeModel"],
            resources: [`arn:${currentGetPartition.partition}:bedrock:${currentGetRegion.name}::foundation-model/anthropic.claude-v2`],
        }],
    }));
    const example = new aws.iam.Role("example", {
        assumeRolePolicy: exampleAgentTrust.then(exampleAgentTrust => exampleAgentTrust.json),
        namePrefix: "AmazonBedrockExecutionRoleForAgents_",
    });
    const exampleRolePolicy = new aws.iam.RolePolicy("example", {
        policy: exampleAgentPermissions.then(exampleAgentPermissions => exampleAgentPermissions.json),
        role: example.id,
    });
    const exampleAgentAgent = new aws.bedrock.AgentAgent("example", {
        agentName: "my-agent-name",
        agentResourceRoleArn: example.arn,
        idleSessionTtlInSeconds: 500,
        foundationModel: "anthropic.claude-v2",
    });
    
    import pulumi
    import pulumi_aws as aws
    
    current = aws.get_caller_identity()
    current_get_partition = aws.get_partition()
    current_get_region = aws.get_region()
    example_agent_trust = aws.iam.get_policy_document(statements=[{
        "actions": ["sts:AssumeRole"],
        "principals": [{
            "identifiers": ["bedrock.amazonaws.com"],
            "type": "Service",
        }],
        "conditions": [
            {
                "test": "StringEquals",
                "values": [current.account_id],
                "variable": "aws:SourceAccount",
            },
            {
                "test": "ArnLike",
                "values": [f"arn:{current_get_partition.partition}:bedrock:{current_get_region.name}:{current.account_id}:agent/*"],
                "variable": "AWS:SourceArn",
            },
        ],
    }])
    example_agent_permissions = aws.iam.get_policy_document(statements=[{
        "actions": ["bedrock:InvokeModel"],
        "resources": [f"arn:{current_get_partition.partition}:bedrock:{current_get_region.name}::foundation-model/anthropic.claude-v2"],
    }])
    example = aws.iam.Role("example",
        assume_role_policy=example_agent_trust.json,
        name_prefix="AmazonBedrockExecutionRoleForAgents_")
    example_role_policy = aws.iam.RolePolicy("example",
        policy=example_agent_permissions.json,
        role=example.id)
    example_agent_agent = aws.bedrock.AgentAgent("example",
        agent_name="my-agent-name",
        agent_resource_role_arn=example.arn,
        idle_session_ttl_in_seconds=500,
        foundation_model="anthropic.claude-v2")
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/bedrock"
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
    current, err := aws.GetCallerIdentity(ctx, &aws.GetCallerIdentityArgs{
    }, nil);
    if err != nil {
    return err
    }
    currentGetPartition, err := aws.GetPartition(ctx, &aws.GetPartitionArgs{
    }, nil);
    if err != nil {
    return err
    }
    currentGetRegion, err := aws.GetRegion(ctx, &aws.GetRegionArgs{
    }, nil);
    if err != nil {
    return err
    }
    exampleAgentTrust, err := iam.GetPolicyDocument(ctx, &iam.GetPolicyDocumentArgs{
    Statements: []iam.GetPolicyDocumentStatement{
    {
    Actions: []string{
    "sts:AssumeRole",
    },
    Principals: []iam.GetPolicyDocumentStatementPrincipal{
    {
    Identifiers: []string{
    "bedrock.amazonaws.com",
    },
    Type: "Service",
    },
    },
    Conditions: []iam.GetPolicyDocumentStatementCondition{
    {
    Test: "StringEquals",
    Values: interface{}{
    current.AccountId,
    },
    Variable: "aws:SourceAccount",
    },
    {
    Test: "ArnLike",
    Values: []string{
    fmt.Sprintf("arn:%v:bedrock:%v:%v:agent/*", currentGetPartition.Partition, currentGetRegion.Name, current.AccountId),
    },
    Variable: "AWS:SourceArn",
    },
    },
    },
    },
    }, nil);
    if err != nil {
    return err
    }
    exampleAgentPermissions, err := iam.GetPolicyDocument(ctx, &iam.GetPolicyDocumentArgs{
    Statements: []iam.GetPolicyDocumentStatement{
    {
    Actions: []string{
    "bedrock:InvokeModel",
    },
    Resources: []string{
    fmt.Sprintf("arn:%v:bedrock:%v::foundation-model/anthropic.claude-v2", currentGetPartition.Partition, currentGetRegion.Name),
    },
    },
    },
    }, nil);
    if err != nil {
    return err
    }
    example, err := iam.NewRole(ctx, "example", &iam.RoleArgs{
    AssumeRolePolicy: pulumi.String(exampleAgentTrust.Json),
    NamePrefix: pulumi.String("AmazonBedrockExecutionRoleForAgents_"),
    })
    if err != nil {
    return err
    }
    _, err = iam.NewRolePolicy(ctx, "example", &iam.RolePolicyArgs{
    Policy: pulumi.String(exampleAgentPermissions.Json),
    Role: example.ID(),
    })
    if err != nil {
    return err
    }
    _, err = bedrock.NewAgentAgent(ctx, "example", &bedrock.AgentAgentArgs{
    AgentName: pulumi.String("my-agent-name"),
    AgentResourceRoleArn: example.Arn,
    IdleSessionTtlInSeconds: pulumi.Int(500),
    FoundationModel: pulumi.String("anthropic.claude-v2"),
    })
    if err != nil {
    return err
    }
    return nil
    })
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var current = Aws.GetCallerIdentity.Invoke();
    
        var currentGetPartition = Aws.GetPartition.Invoke();
    
        var currentGetRegion = Aws.GetRegion.Invoke();
    
        var exampleAgentTrust = Aws.Iam.GetPolicyDocument.Invoke(new()
        {
            Statements = new[]
            {
                new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs
                {
                    Actions = new[]
                    {
                        "sts:AssumeRole",
                    },
                    Principals = new[]
                    {
                        new Aws.Iam.Inputs.GetPolicyDocumentStatementPrincipalInputArgs
                        {
                            Identifiers = new[]
                            {
                                "bedrock.amazonaws.com",
                            },
                            Type = "Service",
                        },
                    },
                    Conditions = new[]
                    {
                        new Aws.Iam.Inputs.GetPolicyDocumentStatementConditionInputArgs
                        {
                            Test = "StringEquals",
                            Values = new[]
                            {
                                current.Apply(getCallerIdentityResult => getCallerIdentityResult.AccountId),
                            },
                            Variable = "aws:SourceAccount",
                        },
                        new Aws.Iam.Inputs.GetPolicyDocumentStatementConditionInputArgs
                        {
                            Test = "ArnLike",
                            Values = new[]
                            {
                                $"arn:{currentGetPartition.Apply(getPartitionResult => getPartitionResult.Partition)}:bedrock:{currentGetRegion.Apply(getRegionResult => getRegionResult.Name)}:{current.Apply(getCallerIdentityResult => getCallerIdentityResult.AccountId)}:agent/*",
                            },
                            Variable = "AWS:SourceArn",
                        },
                    },
                },
            },
        });
    
        var exampleAgentPermissions = Aws.Iam.GetPolicyDocument.Invoke(new()
        {
            Statements = new[]
            {
                new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs
                {
                    Actions = new[]
                    {
                        "bedrock:InvokeModel",
                    },
                    Resources = new[]
                    {
                        $"arn:{currentGetPartition.Apply(getPartitionResult => getPartitionResult.Partition)}:bedrock:{currentGetRegion.Apply(getRegionResult => getRegionResult.Name)}::foundation-model/anthropic.claude-v2",
                    },
                },
            },
        });
    
        var example = new Aws.Iam.Role("example", new()
        {
            AssumeRolePolicy = exampleAgentTrust.Apply(getPolicyDocumentResult => getPolicyDocumentResult.Json),
            NamePrefix = "AmazonBedrockExecutionRoleForAgents_",
        });
    
        var exampleRolePolicy = new Aws.Iam.RolePolicy("example", new()
        {
            Policy = exampleAgentPermissions.Apply(getPolicyDocumentResult => getPolicyDocumentResult.Json),
            Role = example.Id,
        });
    
        var exampleAgentAgent = new Aws.Bedrock.AgentAgent("example", new()
        {
            AgentName = "my-agent-name",
            AgentResourceRoleArn = example.Arn,
            IdleSessionTtlInSeconds = 500,
            FoundationModel = "anthropic.claude-v2",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.AwsFunctions;
    import com.pulumi.aws.inputs.GetCallerIdentityArgs;
    import com.pulumi.aws.inputs.GetPartitionArgs;
    import com.pulumi.aws.inputs.GetRegionArgs;
    import com.pulumi.aws.iam.IamFunctions;
    import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs;
    import com.pulumi.aws.iam.Role;
    import com.pulumi.aws.iam.RoleArgs;
    import com.pulumi.aws.iam.RolePolicy;
    import com.pulumi.aws.iam.RolePolicyArgs;
    import com.pulumi.aws.bedrock.AgentAgent;
    import com.pulumi.aws.bedrock.AgentAgentArgs;
    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) {
            final var current = AwsFunctions.getCallerIdentity();
    
            final var currentGetPartition = AwsFunctions.getPartition();
    
            final var currentGetRegion = AwsFunctions.getRegion();
    
            final var exampleAgentTrust = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()
                .statements(GetPolicyDocumentStatementArgs.builder()
                    .actions("sts:AssumeRole")
                    .principals(GetPolicyDocumentStatementPrincipalArgs.builder()
                        .identifiers("bedrock.amazonaws.com")
                        .type("Service")
                        .build())
                    .conditions(                
                        GetPolicyDocumentStatementConditionArgs.builder()
                            .test("StringEquals")
                            .values(current.applyValue(getCallerIdentityResult -> getCallerIdentityResult.accountId()))
                            .variable("aws:SourceAccount")
                            .build(),
                        GetPolicyDocumentStatementConditionArgs.builder()
                            .test("ArnLike")
                            .values(String.format("arn:%s:bedrock:%s:%s:agent/*", currentGetPartition.applyValue(getPartitionResult -> getPartitionResult.partition()),currentGetRegion.applyValue(getRegionResult -> getRegionResult.name()),current.applyValue(getCallerIdentityResult -> getCallerIdentityResult.accountId())))
                            .variable("AWS:SourceArn")
                            .build())
                    .build())
                .build());
    
            final var exampleAgentPermissions = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()
                .statements(GetPolicyDocumentStatementArgs.builder()
                    .actions("bedrock:InvokeModel")
                    .resources(String.format("arn:%s:bedrock:%s::foundation-model/anthropic.claude-v2", currentGetPartition.applyValue(getPartitionResult -> getPartitionResult.partition()),currentGetRegion.applyValue(getRegionResult -> getRegionResult.name())))
                    .build())
                .build());
    
            var example = new Role("example", RoleArgs.builder()
                .assumeRolePolicy(exampleAgentTrust.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult.json()))
                .namePrefix("AmazonBedrockExecutionRoleForAgents_")
                .build());
    
            var exampleRolePolicy = new RolePolicy("exampleRolePolicy", RolePolicyArgs.builder()
                .policy(exampleAgentPermissions.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult.json()))
                .role(example.id())
                .build());
    
            var exampleAgentAgent = new AgentAgent("exampleAgentAgent", AgentAgentArgs.builder()
                .agentName("my-agent-name")
                .agentResourceRoleArn(example.arn())
                .idleSessionTtlInSeconds(500)
                .foundationModel("anthropic.claude-v2")
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:iam:Role
        properties:
          assumeRolePolicy: ${exampleAgentTrust.json}
          namePrefix: AmazonBedrockExecutionRoleForAgents_
      exampleRolePolicy:
        type: aws:iam:RolePolicy
        name: example
        properties:
          policy: ${exampleAgentPermissions.json}
          role: ${example.id}
      exampleAgentAgent:
        type: aws:bedrock:AgentAgent
        name: example
        properties:
          agentName: my-agent-name
          agentResourceRoleArn: ${example.arn}
          idleSessionTtlInSeconds: 500
          foundationModel: anthropic.claude-v2
    variables:
      current:
        fn::invoke:
          Function: aws:getCallerIdentity
          Arguments: {}
      currentGetPartition:
        fn::invoke:
          Function: aws:getPartition
          Arguments: {}
      currentGetRegion:
        fn::invoke:
          Function: aws:getRegion
          Arguments: {}
      exampleAgentTrust:
        fn::invoke:
          Function: aws:iam:getPolicyDocument
          Arguments:
            statements:
              - actions:
                  - sts:AssumeRole
                principals:
                  - identifiers:
                      - bedrock.amazonaws.com
                    type: Service
                conditions:
                  - test: StringEquals
                    values:
                      - ${current.accountId}
                    variable: aws:SourceAccount
                  - test: ArnLike
                    values:
                      - arn:${currentGetPartition.partition}:bedrock:${currentGetRegion.name}:${current.accountId}:agent/*
                    variable: AWS:SourceArn
      exampleAgentPermissions:
        fn::invoke:
          Function: aws:iam:getPolicyDocument
          Arguments:
            statements:
              - actions:
                  - bedrock:InvokeModel
                resources:
                  - arn:${currentGetPartition.partition}:bedrock:${currentGetRegion.name}::foundation-model/anthropic.claude-v2
    

    Create AgentAgent Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new AgentAgent(name: string, args: AgentAgentArgs, opts?: CustomResourceOptions);
    @overload
    def AgentAgent(resource_name: str,
                   args: AgentAgentArgs,
                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def AgentAgent(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   foundation_model: Optional[str] = None,
                   agent_resource_role_arn: Optional[str] = None,
                   agent_name: Optional[str] = None,
                   idle_session_ttl_in_seconds: Optional[int] = None,
                   description: Optional[str] = None,
                   guardrail_configurations: Optional[Sequence[AgentAgentGuardrailConfigurationArgs]] = None,
                   customer_encryption_key_arn: Optional[str] = None,
                   instruction: Optional[str] = None,
                   prepare_agent: Optional[bool] = None,
                   prompt_override_configurations: Optional[Sequence[AgentAgentPromptOverrideConfigurationArgs]] = None,
                   skip_resource_in_use_check: Optional[bool] = None,
                   tags: Optional[Mapping[str, str]] = None,
                   timeouts: Optional[AgentAgentTimeoutsArgs] = None)
    func NewAgentAgent(ctx *Context, name string, args AgentAgentArgs, opts ...ResourceOption) (*AgentAgent, error)
    public AgentAgent(string name, AgentAgentArgs args, CustomResourceOptions? opts = null)
    public AgentAgent(String name, AgentAgentArgs args)
    public AgentAgent(String name, AgentAgentArgs args, CustomResourceOptions options)
    
    type: aws:bedrock:AgentAgent
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args AgentAgentArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args AgentAgentArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args AgentAgentArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args AgentAgentArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args AgentAgentArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var agentAgentResource = new Aws.Bedrock.AgentAgent("agentAgentResource", new()
    {
        FoundationModel = "string",
        AgentResourceRoleArn = "string",
        AgentName = "string",
        IdleSessionTtlInSeconds = 0,
        Description = "string",
        GuardrailConfigurations = new[]
        {
            new Aws.Bedrock.Inputs.AgentAgentGuardrailConfigurationArgs
            {
                GuardrailIdentifier = "string",
                GuardrailVersion = "string",
            },
        },
        CustomerEncryptionKeyArn = "string",
        Instruction = "string",
        PrepareAgent = false,
        PromptOverrideConfigurations = new[]
        {
            new Aws.Bedrock.Inputs.AgentAgentPromptOverrideConfigurationArgs
            {
                OverrideLambda = "string",
                PromptConfigurations = new[]
                {
                    new Aws.Bedrock.Inputs.AgentAgentPromptOverrideConfigurationPromptConfigurationArgs
                    {
                        BasePromptTemplate = "string",
                        InferenceConfigurations = new[]
                        {
                            new Aws.Bedrock.Inputs.AgentAgentPromptOverrideConfigurationPromptConfigurationInferenceConfigurationArgs
                            {
                                MaxLength = 0,
                                StopSequences = new[]
                                {
                                    "string",
                                },
                                Temperature = 0,
                                TopK = 0,
                                TopP = 0,
                            },
                        },
                        ParserMode = "string",
                        PromptCreationMode = "string",
                        PromptState = "string",
                        PromptType = "string",
                    },
                },
            },
        },
        SkipResourceInUseCheck = false,
        Tags = 
        {
            { "string", "string" },
        },
        Timeouts = new Aws.Bedrock.Inputs.AgentAgentTimeoutsArgs
        {
            Create = "string",
            Delete = "string",
            Update = "string",
        },
    });
    
    example, err := bedrock.NewAgentAgent(ctx, "agentAgentResource", &bedrock.AgentAgentArgs{
    	FoundationModel:         pulumi.String("string"),
    	AgentResourceRoleArn:    pulumi.String("string"),
    	AgentName:               pulumi.String("string"),
    	IdleSessionTtlInSeconds: pulumi.Int(0),
    	Description:             pulumi.String("string"),
    	GuardrailConfigurations: bedrock.AgentAgentGuardrailConfigurationArray{
    		&bedrock.AgentAgentGuardrailConfigurationArgs{
    			GuardrailIdentifier: pulumi.String("string"),
    			GuardrailVersion:    pulumi.String("string"),
    		},
    	},
    	CustomerEncryptionKeyArn: pulumi.String("string"),
    	Instruction:              pulumi.String("string"),
    	PrepareAgent:             pulumi.Bool(false),
    	PromptOverrideConfigurations: bedrock.AgentAgentPromptOverrideConfigurationArray{
    		&bedrock.AgentAgentPromptOverrideConfigurationArgs{
    			OverrideLambda: pulumi.String("string"),
    			PromptConfigurations: bedrock.AgentAgentPromptOverrideConfigurationPromptConfigurationArray{
    				&bedrock.AgentAgentPromptOverrideConfigurationPromptConfigurationArgs{
    					BasePromptTemplate: pulumi.String("string"),
    					InferenceConfigurations: bedrock.AgentAgentPromptOverrideConfigurationPromptConfigurationInferenceConfigurationArray{
    						&bedrock.AgentAgentPromptOverrideConfigurationPromptConfigurationInferenceConfigurationArgs{
    							MaxLength: pulumi.Int(0),
    							StopSequences: pulumi.StringArray{
    								pulumi.String("string"),
    							},
    							Temperature: pulumi.Float64(0),
    							TopK:        pulumi.Int(0),
    							TopP:        pulumi.Float64(0),
    						},
    					},
    					ParserMode:         pulumi.String("string"),
    					PromptCreationMode: pulumi.String("string"),
    					PromptState:        pulumi.String("string"),
    					PromptType:         pulumi.String("string"),
    				},
    			},
    		},
    	},
    	SkipResourceInUseCheck: pulumi.Bool(false),
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Timeouts: &bedrock.AgentAgentTimeoutsArgs{
    		Create: pulumi.String("string"),
    		Delete: pulumi.String("string"),
    		Update: pulumi.String("string"),
    	},
    })
    
    var agentAgentResource = new AgentAgent("agentAgentResource", AgentAgentArgs.builder()
        .foundationModel("string")
        .agentResourceRoleArn("string")
        .agentName("string")
        .idleSessionTtlInSeconds(0)
        .description("string")
        .guardrailConfigurations(AgentAgentGuardrailConfigurationArgs.builder()
            .guardrailIdentifier("string")
            .guardrailVersion("string")
            .build())
        .customerEncryptionKeyArn("string")
        .instruction("string")
        .prepareAgent(false)
        .promptOverrideConfigurations(AgentAgentPromptOverrideConfigurationArgs.builder()
            .overrideLambda("string")
            .promptConfigurations(AgentAgentPromptOverrideConfigurationPromptConfigurationArgs.builder()
                .basePromptTemplate("string")
                .inferenceConfigurations(AgentAgentPromptOverrideConfigurationPromptConfigurationInferenceConfigurationArgs.builder()
                    .maxLength(0)
                    .stopSequences("string")
                    .temperature(0)
                    .topK(0)
                    .topP(0)
                    .build())
                .parserMode("string")
                .promptCreationMode("string")
                .promptState("string")
                .promptType("string")
                .build())
            .build())
        .skipResourceInUseCheck(false)
        .tags(Map.of("string", "string"))
        .timeouts(AgentAgentTimeoutsArgs.builder()
            .create("string")
            .delete("string")
            .update("string")
            .build())
        .build());
    
    agent_agent_resource = aws.bedrock.AgentAgent("agentAgentResource",
        foundation_model="string",
        agent_resource_role_arn="string",
        agent_name="string",
        idle_session_ttl_in_seconds=0,
        description="string",
        guardrail_configurations=[{
            "guardrail_identifier": "string",
            "guardrail_version": "string",
        }],
        customer_encryption_key_arn="string",
        instruction="string",
        prepare_agent=False,
        prompt_override_configurations=[{
            "override_lambda": "string",
            "prompt_configurations": [{
                "base_prompt_template": "string",
                "inference_configurations": [{
                    "max_length": 0,
                    "stop_sequences": ["string"],
                    "temperature": 0,
                    "top_k": 0,
                    "top_p": 0,
                }],
                "parser_mode": "string",
                "prompt_creation_mode": "string",
                "prompt_state": "string",
                "prompt_type": "string",
            }],
        }],
        skip_resource_in_use_check=False,
        tags={
            "string": "string",
        },
        timeouts={
            "create": "string",
            "delete": "string",
            "update": "string",
        })
    
    const agentAgentResource = new aws.bedrock.AgentAgent("agentAgentResource", {
        foundationModel: "string",
        agentResourceRoleArn: "string",
        agentName: "string",
        idleSessionTtlInSeconds: 0,
        description: "string",
        guardrailConfigurations: [{
            guardrailIdentifier: "string",
            guardrailVersion: "string",
        }],
        customerEncryptionKeyArn: "string",
        instruction: "string",
        prepareAgent: false,
        promptOverrideConfigurations: [{
            overrideLambda: "string",
            promptConfigurations: [{
                basePromptTemplate: "string",
                inferenceConfigurations: [{
                    maxLength: 0,
                    stopSequences: ["string"],
                    temperature: 0,
                    topK: 0,
                    topP: 0,
                }],
                parserMode: "string",
                promptCreationMode: "string",
                promptState: "string",
                promptType: "string",
            }],
        }],
        skipResourceInUseCheck: false,
        tags: {
            string: "string",
        },
        timeouts: {
            create: "string",
            "delete": "string",
            update: "string",
        },
    });
    
    type: aws:bedrock:AgentAgent
    properties:
        agentName: string
        agentResourceRoleArn: string
        customerEncryptionKeyArn: string
        description: string
        foundationModel: string
        guardrailConfigurations:
            - guardrailIdentifier: string
              guardrailVersion: string
        idleSessionTtlInSeconds: 0
        instruction: string
        prepareAgent: false
        promptOverrideConfigurations:
            - overrideLambda: string
              promptConfigurations:
                - basePromptTemplate: string
                  inferenceConfigurations:
                    - maxLength: 0
                      stopSequences:
                        - string
                      temperature: 0
                      topK: 0
                      topP: 0
                  parserMode: string
                  promptCreationMode: string
                  promptState: string
                  promptType: string
        skipResourceInUseCheck: false
        tags:
            string: string
        timeouts:
            create: string
            delete: string
            update: string
    

    AgentAgent Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The AgentAgent resource accepts the following input properties:

    AgentName string
    Name of the agent.
    AgentResourceRoleArn string
    ARN of the IAM role with permissions to invoke API operations on the agent.
    FoundationModel string

    Foundation model used for orchestration by the agent.

    The following arguments are optional:

    CustomerEncryptionKeyArn string
    ARN of the AWS KMS key that encrypts the agent.
    Description string
    Description of the agent.
    GuardrailConfigurations List<AgentAgentGuardrailConfiguration>
    IdleSessionTtlInSeconds int
    Number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent. A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.
    Instruction string
    Instructions that tell the agent what it should do and how it should interact with users.
    PrepareAgent bool
    Whether to prepare the agent after creation or modification. Defaults to true.
    PromptOverrideConfigurations List<AgentAgentPromptOverrideConfiguration>
    Configurations to override prompt templates in different parts of an agent sequence. For more information, see Advanced prompts. See prompt_override_configuration Block for details.
    SkipResourceInUseCheck bool
    Whether the in-use check is skipped when deleting the agent.
    Tags Dictionary<string, string>
    Map of tags assigned to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    Timeouts AgentAgentTimeouts
    AgentName string
    Name of the agent.
    AgentResourceRoleArn string
    ARN of the IAM role with permissions to invoke API operations on the agent.
    FoundationModel string

    Foundation model used for orchestration by the agent.

    The following arguments are optional:

    CustomerEncryptionKeyArn string
    ARN of the AWS KMS key that encrypts the agent.
    Description string
    Description of the agent.
    GuardrailConfigurations []AgentAgentGuardrailConfigurationArgs
    IdleSessionTtlInSeconds int
    Number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent. A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.
    Instruction string
    Instructions that tell the agent what it should do and how it should interact with users.
    PrepareAgent bool
    Whether to prepare the agent after creation or modification. Defaults to true.
    PromptOverrideConfigurations []AgentAgentPromptOverrideConfigurationArgs
    Configurations to override prompt templates in different parts of an agent sequence. For more information, see Advanced prompts. See prompt_override_configuration Block for details.
    SkipResourceInUseCheck bool
    Whether the in-use check is skipped when deleting the agent.
    Tags map[string]string
    Map of tags assigned to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    Timeouts AgentAgentTimeoutsArgs
    agentName String
    Name of the agent.
    agentResourceRoleArn String
    ARN of the IAM role with permissions to invoke API operations on the agent.
    foundationModel String

    Foundation model used for orchestration by the agent.

    The following arguments are optional:

    customerEncryptionKeyArn String
    ARN of the AWS KMS key that encrypts the agent.
    description String
    Description of the agent.
    guardrailConfigurations List<AgentAgentGuardrailConfiguration>
    idleSessionTtlInSeconds Integer
    Number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent. A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.
    instruction String
    Instructions that tell the agent what it should do and how it should interact with users.
    prepareAgent Boolean
    Whether to prepare the agent after creation or modification. Defaults to true.
    promptOverrideConfigurations List<AgentAgentPromptOverrideConfiguration>
    Configurations to override prompt templates in different parts of an agent sequence. For more information, see Advanced prompts. See prompt_override_configuration Block for details.
    skipResourceInUseCheck Boolean
    Whether the in-use check is skipped when deleting the agent.
    tags Map<String,String>
    Map of tags assigned to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    timeouts AgentAgentTimeouts
    agentName string
    Name of the agent.
    agentResourceRoleArn string
    ARN of the IAM role with permissions to invoke API operations on the agent.
    foundationModel string

    Foundation model used for orchestration by the agent.

    The following arguments are optional:

    customerEncryptionKeyArn string
    ARN of the AWS KMS key that encrypts the agent.
    description string
    Description of the agent.
    guardrailConfigurations AgentAgentGuardrailConfiguration[]
    idleSessionTtlInSeconds number
    Number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent. A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.
    instruction string
    Instructions that tell the agent what it should do and how it should interact with users.
    prepareAgent boolean
    Whether to prepare the agent after creation or modification. Defaults to true.
    promptOverrideConfigurations AgentAgentPromptOverrideConfiguration[]
    Configurations to override prompt templates in different parts of an agent sequence. For more information, see Advanced prompts. See prompt_override_configuration Block for details.
    skipResourceInUseCheck boolean
    Whether the in-use check is skipped when deleting the agent.
    tags {[key: string]: string}
    Map of tags assigned to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    timeouts AgentAgentTimeouts
    agent_name str
    Name of the agent.
    agent_resource_role_arn str
    ARN of the IAM role with permissions to invoke API operations on the agent.
    foundation_model str

    Foundation model used for orchestration by the agent.

    The following arguments are optional:

    customer_encryption_key_arn str
    ARN of the AWS KMS key that encrypts the agent.
    description str
    Description of the agent.
    guardrail_configurations Sequence[AgentAgentGuardrailConfigurationArgs]
    idle_session_ttl_in_seconds int
    Number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent. A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.
    instruction str
    Instructions that tell the agent what it should do and how it should interact with users.
    prepare_agent bool
    Whether to prepare the agent after creation or modification. Defaults to true.
    prompt_override_configurations Sequence[AgentAgentPromptOverrideConfigurationArgs]
    Configurations to override prompt templates in different parts of an agent sequence. For more information, see Advanced prompts. See prompt_override_configuration Block for details.
    skip_resource_in_use_check bool
    Whether the in-use check is skipped when deleting the agent.
    tags Mapping[str, str]
    Map of tags assigned to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    timeouts AgentAgentTimeoutsArgs
    agentName String
    Name of the agent.
    agentResourceRoleArn String
    ARN of the IAM role with permissions to invoke API operations on the agent.
    foundationModel String

    Foundation model used for orchestration by the agent.

    The following arguments are optional:

    customerEncryptionKeyArn String
    ARN of the AWS KMS key that encrypts the agent.
    description String
    Description of the agent.
    guardrailConfigurations List<Property Map>
    idleSessionTtlInSeconds Number
    Number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent. A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.
    instruction String
    Instructions that tell the agent what it should do and how it should interact with users.
    prepareAgent Boolean
    Whether to prepare the agent after creation or modification. Defaults to true.
    promptOverrideConfigurations List<Property Map>
    Configurations to override prompt templates in different parts of an agent sequence. For more information, see Advanced prompts. See prompt_override_configuration Block for details.
    skipResourceInUseCheck Boolean
    Whether the in-use check is skipped when deleting the agent.
    tags Map<String>
    Map of tags assigned to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    timeouts Property Map

    Outputs

    All input properties are implicitly available as output properties. Additionally, the AgentAgent resource produces the following output properties:

    AgentArn string
    ARN of the agent.
    AgentId string
    Unique identifier of the agent.
    AgentVersion string
    Version of the agent.
    Id string
    The provider-assigned unique ID for this managed resource.
    TagsAll Dictionary<string, string>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    AgentArn string
    ARN of the agent.
    AgentId string
    Unique identifier of the agent.
    AgentVersion string
    Version of the agent.
    Id string
    The provider-assigned unique ID for this managed resource.
    TagsAll map[string]string
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    agentArn String
    ARN of the agent.
    agentId String
    Unique identifier of the agent.
    agentVersion String
    Version of the agent.
    id String
    The provider-assigned unique ID for this managed resource.
    tagsAll Map<String,String>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    agentArn string
    ARN of the agent.
    agentId string
    Unique identifier of the agent.
    agentVersion string
    Version of the agent.
    id string
    The provider-assigned unique ID for this managed resource.
    tagsAll {[key: string]: string}
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    agent_arn str
    ARN of the agent.
    agent_id str
    Unique identifier of the agent.
    agent_version str
    Version of the agent.
    id str
    The provider-assigned unique ID for this managed resource.
    tags_all Mapping[str, str]
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    agentArn String
    ARN of the agent.
    agentId String
    Unique identifier of the agent.
    agentVersion String
    Version of the agent.
    id String
    The provider-assigned unique ID for this managed resource.
    tagsAll Map<String>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Look up Existing AgentAgent Resource

    Get an existing AgentAgent resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: AgentAgentState, opts?: CustomResourceOptions): AgentAgent
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            agent_arn: Optional[str] = None,
            agent_id: Optional[str] = None,
            agent_name: Optional[str] = None,
            agent_resource_role_arn: Optional[str] = None,
            agent_version: Optional[str] = None,
            customer_encryption_key_arn: Optional[str] = None,
            description: Optional[str] = None,
            foundation_model: Optional[str] = None,
            guardrail_configurations: Optional[Sequence[AgentAgentGuardrailConfigurationArgs]] = None,
            idle_session_ttl_in_seconds: Optional[int] = None,
            instruction: Optional[str] = None,
            prepare_agent: Optional[bool] = None,
            prompt_override_configurations: Optional[Sequence[AgentAgentPromptOverrideConfigurationArgs]] = None,
            skip_resource_in_use_check: Optional[bool] = None,
            tags: Optional[Mapping[str, str]] = None,
            tags_all: Optional[Mapping[str, str]] = None,
            timeouts: Optional[AgentAgentTimeoutsArgs] = None) -> AgentAgent
    func GetAgentAgent(ctx *Context, name string, id IDInput, state *AgentAgentState, opts ...ResourceOption) (*AgentAgent, error)
    public static AgentAgent Get(string name, Input<string> id, AgentAgentState? state, CustomResourceOptions? opts = null)
    public static AgentAgent get(String name, Output<String> id, AgentAgentState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AgentArn string
    ARN of the agent.
    AgentId string
    Unique identifier of the agent.
    AgentName string
    Name of the agent.
    AgentResourceRoleArn string
    ARN of the IAM role with permissions to invoke API operations on the agent.
    AgentVersion string
    Version of the agent.
    CustomerEncryptionKeyArn string
    ARN of the AWS KMS key that encrypts the agent.
    Description string
    Description of the agent.
    FoundationModel string

    Foundation model used for orchestration by the agent.

    The following arguments are optional:

    GuardrailConfigurations List<AgentAgentGuardrailConfiguration>
    IdleSessionTtlInSeconds int
    Number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent. A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.
    Instruction string
    Instructions that tell the agent what it should do and how it should interact with users.
    PrepareAgent bool
    Whether to prepare the agent after creation or modification. Defaults to true.
    PromptOverrideConfigurations List<AgentAgentPromptOverrideConfiguration>
    Configurations to override prompt templates in different parts of an agent sequence. For more information, see Advanced prompts. See prompt_override_configuration Block for details.
    SkipResourceInUseCheck bool
    Whether the in-use check is skipped when deleting the agent.
    Tags Dictionary<string, string>
    Map of tags assigned to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    TagsAll Dictionary<string, string>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Timeouts AgentAgentTimeouts
    AgentArn string
    ARN of the agent.
    AgentId string
    Unique identifier of the agent.
    AgentName string
    Name of the agent.
    AgentResourceRoleArn string
    ARN of the IAM role with permissions to invoke API operations on the agent.
    AgentVersion string
    Version of the agent.
    CustomerEncryptionKeyArn string
    ARN of the AWS KMS key that encrypts the agent.
    Description string
    Description of the agent.
    FoundationModel string

    Foundation model used for orchestration by the agent.

    The following arguments are optional:

    GuardrailConfigurations []AgentAgentGuardrailConfigurationArgs
    IdleSessionTtlInSeconds int
    Number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent. A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.
    Instruction string
    Instructions that tell the agent what it should do and how it should interact with users.
    PrepareAgent bool
    Whether to prepare the agent after creation or modification. Defaults to true.
    PromptOverrideConfigurations []AgentAgentPromptOverrideConfigurationArgs
    Configurations to override prompt templates in different parts of an agent sequence. For more information, see Advanced prompts. See prompt_override_configuration Block for details.
    SkipResourceInUseCheck bool
    Whether the in-use check is skipped when deleting the agent.
    Tags map[string]string
    Map of tags assigned to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    TagsAll map[string]string
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Timeouts AgentAgentTimeoutsArgs
    agentArn String
    ARN of the agent.
    agentId String
    Unique identifier of the agent.
    agentName String
    Name of the agent.
    agentResourceRoleArn String
    ARN of the IAM role with permissions to invoke API operations on the agent.
    agentVersion String
    Version of the agent.
    customerEncryptionKeyArn String
    ARN of the AWS KMS key that encrypts the agent.
    description String
    Description of the agent.
    foundationModel String

    Foundation model used for orchestration by the agent.

    The following arguments are optional:

    guardrailConfigurations List<AgentAgentGuardrailConfiguration>
    idleSessionTtlInSeconds Integer
    Number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent. A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.
    instruction String
    Instructions that tell the agent what it should do and how it should interact with users.
    prepareAgent Boolean
    Whether to prepare the agent after creation or modification. Defaults to true.
    promptOverrideConfigurations List<AgentAgentPromptOverrideConfiguration>
    Configurations to override prompt templates in different parts of an agent sequence. For more information, see Advanced prompts. See prompt_override_configuration Block for details.
    skipResourceInUseCheck Boolean
    Whether the in-use check is skipped when deleting the agent.
    tags Map<String,String>
    Map of tags assigned to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll Map<String,String>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    timeouts AgentAgentTimeouts
    agentArn string
    ARN of the agent.
    agentId string
    Unique identifier of the agent.
    agentName string
    Name of the agent.
    agentResourceRoleArn string
    ARN of the IAM role with permissions to invoke API operations on the agent.
    agentVersion string
    Version of the agent.
    customerEncryptionKeyArn string
    ARN of the AWS KMS key that encrypts the agent.
    description string
    Description of the agent.
    foundationModel string

    Foundation model used for orchestration by the agent.

    The following arguments are optional:

    guardrailConfigurations AgentAgentGuardrailConfiguration[]
    idleSessionTtlInSeconds number
    Number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent. A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.
    instruction string
    Instructions that tell the agent what it should do and how it should interact with users.
    prepareAgent boolean
    Whether to prepare the agent after creation or modification. Defaults to true.
    promptOverrideConfigurations AgentAgentPromptOverrideConfiguration[]
    Configurations to override prompt templates in different parts of an agent sequence. For more information, see Advanced prompts. See prompt_override_configuration Block for details.
    skipResourceInUseCheck boolean
    Whether the in-use check is skipped when deleting the agent.
    tags {[key: string]: string}
    Map of tags assigned to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll {[key: string]: string}
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    timeouts AgentAgentTimeouts
    agent_arn str
    ARN of the agent.
    agent_id str
    Unique identifier of the agent.
    agent_name str
    Name of the agent.
    agent_resource_role_arn str
    ARN of the IAM role with permissions to invoke API operations on the agent.
    agent_version str
    Version of the agent.
    customer_encryption_key_arn str
    ARN of the AWS KMS key that encrypts the agent.
    description str
    Description of the agent.
    foundation_model str

    Foundation model used for orchestration by the agent.

    The following arguments are optional:

    guardrail_configurations Sequence[AgentAgentGuardrailConfigurationArgs]
    idle_session_ttl_in_seconds int
    Number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent. A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.
    instruction str
    Instructions that tell the agent what it should do and how it should interact with users.
    prepare_agent bool
    Whether to prepare the agent after creation or modification. Defaults to true.
    prompt_override_configurations Sequence[AgentAgentPromptOverrideConfigurationArgs]
    Configurations to override prompt templates in different parts of an agent sequence. For more information, see Advanced prompts. See prompt_override_configuration Block for details.
    skip_resource_in_use_check bool
    Whether the in-use check is skipped when deleting the agent.
    tags Mapping[str, str]
    Map of tags assigned to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tags_all Mapping[str, str]
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    timeouts AgentAgentTimeoutsArgs
    agentArn String
    ARN of the agent.
    agentId String
    Unique identifier of the agent.
    agentName String
    Name of the agent.
    agentResourceRoleArn String
    ARN of the IAM role with permissions to invoke API operations on the agent.
    agentVersion String
    Version of the agent.
    customerEncryptionKeyArn String
    ARN of the AWS KMS key that encrypts the agent.
    description String
    Description of the agent.
    foundationModel String

    Foundation model used for orchestration by the agent.

    The following arguments are optional:

    guardrailConfigurations List<Property Map>
    idleSessionTtlInSeconds Number
    Number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent. A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.
    instruction String
    Instructions that tell the agent what it should do and how it should interact with users.
    prepareAgent Boolean
    Whether to prepare the agent after creation or modification. Defaults to true.
    promptOverrideConfigurations List<Property Map>
    Configurations to override prompt templates in different parts of an agent sequence. For more information, see Advanced prompts. See prompt_override_configuration Block for details.
    skipResourceInUseCheck Boolean
    Whether the in-use check is skipped when deleting the agent.
    tags Map<String>
    Map of tags assigned to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll Map<String>
    Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    timeouts Property Map

    Supporting Types

    AgentAgentGuardrailConfiguration, AgentAgentGuardrailConfigurationArgs

    GuardrailIdentifier string
    Unique identifier of the guardrail.
    GuardrailVersion string
    Version of the guardrail.
    GuardrailIdentifier string
    Unique identifier of the guardrail.
    GuardrailVersion string
    Version of the guardrail.
    guardrailIdentifier String
    Unique identifier of the guardrail.
    guardrailVersion String
    Version of the guardrail.
    guardrailIdentifier string
    Unique identifier of the guardrail.
    guardrailVersion string
    Version of the guardrail.
    guardrail_identifier str
    Unique identifier of the guardrail.
    guardrail_version str
    Version of the guardrail.
    guardrailIdentifier String
    Unique identifier of the guardrail.
    guardrailVersion String
    Version of the guardrail.

    AgentAgentPromptOverrideConfiguration, AgentAgentPromptOverrideConfigurationArgs

    OverrideLambda string
    ARN of the Lambda function to use when parsing the raw foundation model output in parts of the agent sequence. If you specify this field, at least one of the prompt_configurations block must contain a parser_mode value that is set to OVERRIDDEN.
    PromptConfigurations List<AgentAgentPromptOverrideConfigurationPromptConfiguration>
    Configurations to override a prompt template in one part of an agent sequence. See prompt_configurations Block for details.
    OverrideLambda string
    ARN of the Lambda function to use when parsing the raw foundation model output in parts of the agent sequence. If you specify this field, at least one of the prompt_configurations block must contain a parser_mode value that is set to OVERRIDDEN.
    PromptConfigurations []AgentAgentPromptOverrideConfigurationPromptConfiguration
    Configurations to override a prompt template in one part of an agent sequence. See prompt_configurations Block for details.
    overrideLambda String
    ARN of the Lambda function to use when parsing the raw foundation model output in parts of the agent sequence. If you specify this field, at least one of the prompt_configurations block must contain a parser_mode value that is set to OVERRIDDEN.
    promptConfigurations List<AgentAgentPromptOverrideConfigurationPromptConfiguration>
    Configurations to override a prompt template in one part of an agent sequence. See prompt_configurations Block for details.
    overrideLambda string
    ARN of the Lambda function to use when parsing the raw foundation model output in parts of the agent sequence. If you specify this field, at least one of the prompt_configurations block must contain a parser_mode value that is set to OVERRIDDEN.
    promptConfigurations AgentAgentPromptOverrideConfigurationPromptConfiguration[]
    Configurations to override a prompt template in one part of an agent sequence. See prompt_configurations Block for details.
    override_lambda str
    ARN of the Lambda function to use when parsing the raw foundation model output in parts of the agent sequence. If you specify this field, at least one of the prompt_configurations block must contain a parser_mode value that is set to OVERRIDDEN.
    prompt_configurations Sequence[AgentAgentPromptOverrideConfigurationPromptConfiguration]
    Configurations to override a prompt template in one part of an agent sequence. See prompt_configurations Block for details.
    overrideLambda String
    ARN of the Lambda function to use when parsing the raw foundation model output in parts of the agent sequence. If you specify this field, at least one of the prompt_configurations block must contain a parser_mode value that is set to OVERRIDDEN.
    promptConfigurations List<Property Map>
    Configurations to override a prompt template in one part of an agent sequence. See prompt_configurations Block for details.

    AgentAgentPromptOverrideConfigurationPromptConfiguration, AgentAgentPromptOverrideConfigurationPromptConfigurationArgs

    BasePromptTemplate string
    prompt template with which to replace the default prompt template. You can use placeholder variables in the base prompt template to customize the prompt. For more information, see Prompt template placeholder variables.
    InferenceConfigurations List<AgentAgentPromptOverrideConfigurationPromptConfigurationInferenceConfiguration>
    Inference parameters to use when the agent invokes a foundation model in the part of the agent sequence defined by the prompt_type. For more information, see Inference parameters for foundation models. See inference_configuration Block for details.
    ParserMode string
    Whether to override the default parser Lambda function when parsing the raw foundation model output in the part of the agent sequence defined by the prompt_type. If you set the argument as OVERRIDDEN, the override_lambda argument in the prompt_override_configuration block must be specified with the ARN of a Lambda function. Valid values: DEFAULT, OVERRIDDEN.
    PromptCreationMode string
    Whether to override the default prompt template for this prompt_type. Set this argument to OVERRIDDEN to use the prompt that you provide in the base_prompt_template. If you leave it as DEFAULT, the agent uses a default prompt template. Valid values: DEFAULT, OVERRIDDEN.
    PromptState string
    Whether to allow the agent to carry out the step specified in the prompt_type. If you set this argument to DISABLED, the agent skips that step. Valid Values: ENABLED, DISABLED.
    PromptType string
    Step in the agent sequence that this prompt configuration applies to. Valid values: PRE_PROCESSING, ORCHESTRATION, POST_PROCESSING, KNOWLEDGE_BASE_RESPONSE_GENERATION.
    BasePromptTemplate string
    prompt template with which to replace the default prompt template. You can use placeholder variables in the base prompt template to customize the prompt. For more information, see Prompt template placeholder variables.
    InferenceConfigurations []AgentAgentPromptOverrideConfigurationPromptConfigurationInferenceConfiguration
    Inference parameters to use when the agent invokes a foundation model in the part of the agent sequence defined by the prompt_type. For more information, see Inference parameters for foundation models. See inference_configuration Block for details.
    ParserMode string
    Whether to override the default parser Lambda function when parsing the raw foundation model output in the part of the agent sequence defined by the prompt_type. If you set the argument as OVERRIDDEN, the override_lambda argument in the prompt_override_configuration block must be specified with the ARN of a Lambda function. Valid values: DEFAULT, OVERRIDDEN.
    PromptCreationMode string
    Whether to override the default prompt template for this prompt_type. Set this argument to OVERRIDDEN to use the prompt that you provide in the base_prompt_template. If you leave it as DEFAULT, the agent uses a default prompt template. Valid values: DEFAULT, OVERRIDDEN.
    PromptState string
    Whether to allow the agent to carry out the step specified in the prompt_type. If you set this argument to DISABLED, the agent skips that step. Valid Values: ENABLED, DISABLED.
    PromptType string
    Step in the agent sequence that this prompt configuration applies to. Valid values: PRE_PROCESSING, ORCHESTRATION, POST_PROCESSING, KNOWLEDGE_BASE_RESPONSE_GENERATION.
    basePromptTemplate String
    prompt template with which to replace the default prompt template. You can use placeholder variables in the base prompt template to customize the prompt. For more information, see Prompt template placeholder variables.
    inferenceConfigurations List<AgentAgentPromptOverrideConfigurationPromptConfigurationInferenceConfiguration>
    Inference parameters to use when the agent invokes a foundation model in the part of the agent sequence defined by the prompt_type. For more information, see Inference parameters for foundation models. See inference_configuration Block for details.
    parserMode String
    Whether to override the default parser Lambda function when parsing the raw foundation model output in the part of the agent sequence defined by the prompt_type. If you set the argument as OVERRIDDEN, the override_lambda argument in the prompt_override_configuration block must be specified with the ARN of a Lambda function. Valid values: DEFAULT, OVERRIDDEN.
    promptCreationMode String
    Whether to override the default prompt template for this prompt_type. Set this argument to OVERRIDDEN to use the prompt that you provide in the base_prompt_template. If you leave it as DEFAULT, the agent uses a default prompt template. Valid values: DEFAULT, OVERRIDDEN.
    promptState String
    Whether to allow the agent to carry out the step specified in the prompt_type. If you set this argument to DISABLED, the agent skips that step. Valid Values: ENABLED, DISABLED.
    promptType String
    Step in the agent sequence that this prompt configuration applies to. Valid values: PRE_PROCESSING, ORCHESTRATION, POST_PROCESSING, KNOWLEDGE_BASE_RESPONSE_GENERATION.
    basePromptTemplate string
    prompt template with which to replace the default prompt template. You can use placeholder variables in the base prompt template to customize the prompt. For more information, see Prompt template placeholder variables.
    inferenceConfigurations AgentAgentPromptOverrideConfigurationPromptConfigurationInferenceConfiguration[]
    Inference parameters to use when the agent invokes a foundation model in the part of the agent sequence defined by the prompt_type. For more information, see Inference parameters for foundation models. See inference_configuration Block for details.
    parserMode string
    Whether to override the default parser Lambda function when parsing the raw foundation model output in the part of the agent sequence defined by the prompt_type. If you set the argument as OVERRIDDEN, the override_lambda argument in the prompt_override_configuration block must be specified with the ARN of a Lambda function. Valid values: DEFAULT, OVERRIDDEN.
    promptCreationMode string
    Whether to override the default prompt template for this prompt_type. Set this argument to OVERRIDDEN to use the prompt that you provide in the base_prompt_template. If you leave it as DEFAULT, the agent uses a default prompt template. Valid values: DEFAULT, OVERRIDDEN.
    promptState string
    Whether to allow the agent to carry out the step specified in the prompt_type. If you set this argument to DISABLED, the agent skips that step. Valid Values: ENABLED, DISABLED.
    promptType string
    Step in the agent sequence that this prompt configuration applies to. Valid values: PRE_PROCESSING, ORCHESTRATION, POST_PROCESSING, KNOWLEDGE_BASE_RESPONSE_GENERATION.
    base_prompt_template str
    prompt template with which to replace the default prompt template. You can use placeholder variables in the base prompt template to customize the prompt. For more information, see Prompt template placeholder variables.
    inference_configurations Sequence[AgentAgentPromptOverrideConfigurationPromptConfigurationInferenceConfiguration]
    Inference parameters to use when the agent invokes a foundation model in the part of the agent sequence defined by the prompt_type. For more information, see Inference parameters for foundation models. See inference_configuration Block for details.
    parser_mode str
    Whether to override the default parser Lambda function when parsing the raw foundation model output in the part of the agent sequence defined by the prompt_type. If you set the argument as OVERRIDDEN, the override_lambda argument in the prompt_override_configuration block must be specified with the ARN of a Lambda function. Valid values: DEFAULT, OVERRIDDEN.
    prompt_creation_mode str
    Whether to override the default prompt template for this prompt_type. Set this argument to OVERRIDDEN to use the prompt that you provide in the base_prompt_template. If you leave it as DEFAULT, the agent uses a default prompt template. Valid values: DEFAULT, OVERRIDDEN.
    prompt_state str
    Whether to allow the agent to carry out the step specified in the prompt_type. If you set this argument to DISABLED, the agent skips that step. Valid Values: ENABLED, DISABLED.
    prompt_type str
    Step in the agent sequence that this prompt configuration applies to. Valid values: PRE_PROCESSING, ORCHESTRATION, POST_PROCESSING, KNOWLEDGE_BASE_RESPONSE_GENERATION.
    basePromptTemplate String
    prompt template with which to replace the default prompt template. You can use placeholder variables in the base prompt template to customize the prompt. For more information, see Prompt template placeholder variables.
    inferenceConfigurations List<Property Map>
    Inference parameters to use when the agent invokes a foundation model in the part of the agent sequence defined by the prompt_type. For more information, see Inference parameters for foundation models. See inference_configuration Block for details.
    parserMode String
    Whether to override the default parser Lambda function when parsing the raw foundation model output in the part of the agent sequence defined by the prompt_type. If you set the argument as OVERRIDDEN, the override_lambda argument in the prompt_override_configuration block must be specified with the ARN of a Lambda function. Valid values: DEFAULT, OVERRIDDEN.
    promptCreationMode String
    Whether to override the default prompt template for this prompt_type. Set this argument to OVERRIDDEN to use the prompt that you provide in the base_prompt_template. If you leave it as DEFAULT, the agent uses a default prompt template. Valid values: DEFAULT, OVERRIDDEN.
    promptState String
    Whether to allow the agent to carry out the step specified in the prompt_type. If you set this argument to DISABLED, the agent skips that step. Valid Values: ENABLED, DISABLED.
    promptType String
    Step in the agent sequence that this prompt configuration applies to. Valid values: PRE_PROCESSING, ORCHESTRATION, POST_PROCESSING, KNOWLEDGE_BASE_RESPONSE_GENERATION.

    AgentAgentPromptOverrideConfigurationPromptConfigurationInferenceConfiguration, AgentAgentPromptOverrideConfigurationPromptConfigurationInferenceConfigurationArgs

    MaxLength int
    Maximum number of tokens to allow in the generated response.
    StopSequences List<string>
    List of stop sequences. A stop sequence is a sequence of characters that causes the model to stop generating the response.
    Temperature double
    Likelihood of the model selecting higher-probability options while generating a response. A lower value makes the model more likely to choose higher-probability options, while a higher value makes the model more likely to choose lower-probability options.
    TopK int
    Number of top most-likely candidates, between 0 and 500, from which the model chooses the next token in the sequence.
    TopP double
    Top percentage of the probability distribution of next tokens, between 0 and 1 (denoting 0% and 100%), from which the model chooses the next token in the sequence.
    MaxLength int
    Maximum number of tokens to allow in the generated response.
    StopSequences []string
    List of stop sequences. A stop sequence is a sequence of characters that causes the model to stop generating the response.
    Temperature float64
    Likelihood of the model selecting higher-probability options while generating a response. A lower value makes the model more likely to choose higher-probability options, while a higher value makes the model more likely to choose lower-probability options.
    TopK int
    Number of top most-likely candidates, between 0 and 500, from which the model chooses the next token in the sequence.
    TopP float64
    Top percentage of the probability distribution of next tokens, between 0 and 1 (denoting 0% and 100%), from which the model chooses the next token in the sequence.
    maxLength Integer
    Maximum number of tokens to allow in the generated response.
    stopSequences List<String>
    List of stop sequences. A stop sequence is a sequence of characters that causes the model to stop generating the response.
    temperature Double
    Likelihood of the model selecting higher-probability options while generating a response. A lower value makes the model more likely to choose higher-probability options, while a higher value makes the model more likely to choose lower-probability options.
    topK Integer
    Number of top most-likely candidates, between 0 and 500, from which the model chooses the next token in the sequence.
    topP Double
    Top percentage of the probability distribution of next tokens, between 0 and 1 (denoting 0% and 100%), from which the model chooses the next token in the sequence.
    maxLength number
    Maximum number of tokens to allow in the generated response.
    stopSequences string[]
    List of stop sequences. A stop sequence is a sequence of characters that causes the model to stop generating the response.
    temperature number
    Likelihood of the model selecting higher-probability options while generating a response. A lower value makes the model more likely to choose higher-probability options, while a higher value makes the model more likely to choose lower-probability options.
    topK number
    Number of top most-likely candidates, between 0 and 500, from which the model chooses the next token in the sequence.
    topP number
    Top percentage of the probability distribution of next tokens, between 0 and 1 (denoting 0% and 100%), from which the model chooses the next token in the sequence.
    max_length int
    Maximum number of tokens to allow in the generated response.
    stop_sequences Sequence[str]
    List of stop sequences. A stop sequence is a sequence of characters that causes the model to stop generating the response.
    temperature float
    Likelihood of the model selecting higher-probability options while generating a response. A lower value makes the model more likely to choose higher-probability options, while a higher value makes the model more likely to choose lower-probability options.
    top_k int
    Number of top most-likely candidates, between 0 and 500, from which the model chooses the next token in the sequence.
    top_p float
    Top percentage of the probability distribution of next tokens, between 0 and 1 (denoting 0% and 100%), from which the model chooses the next token in the sequence.
    maxLength Number
    Maximum number of tokens to allow in the generated response.
    stopSequences List<String>
    List of stop sequences. A stop sequence is a sequence of characters that causes the model to stop generating the response.
    temperature Number
    Likelihood of the model selecting higher-probability options while generating a response. A lower value makes the model more likely to choose higher-probability options, while a higher value makes the model more likely to choose lower-probability options.
    topK Number
    Number of top most-likely candidates, between 0 and 500, from which the model chooses the next token in the sequence.
    topP Number
    Top percentage of the probability distribution of next tokens, between 0 and 1 (denoting 0% and 100%), from which the model chooses the next token in the sequence.

    AgentAgentTimeouts, AgentAgentTimeoutsArgs

    Create string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    Delete string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    Update string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    Create string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    Delete string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    Update string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    update String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    update string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create str
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete str
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    update str
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    update String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).

    Import

    Using pulumi import, import Agents for Amazon Bedrock Agent using the agent ID. For example:

    $ pulumi import aws:bedrock/agentAgent:AgentAgent example GGRRAED6JP
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo
    AWS v6.60.0 published on Tuesday, Nov 19, 2024 by Pulumi