aws-sdk-bedrockagent 1.33.0 → 1.34.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -898,6 +898,21 @@ module Aws::BedrockAgent
898
898
  include Aws::Structure
899
899
  end
900
900
 
901
+ # Defines tools, at least one of which must be requested by the model.
902
+ # No text is generated but the results of tool use are sent back to the
903
+ # model to help generate a response. For more information, see [Use a
904
+ # tool to complete an Amazon Bedrock model response][1].
905
+ #
906
+ #
907
+ #
908
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html
909
+ #
910
+ # @api private
911
+ #
912
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/AnyToolChoice AWS API Documentation
913
+ #
914
+ class AnyToolChoice < Aws::EmptyStructure; end
915
+
901
916
  # @!attribute [rw] agent_id
902
917
  # The unique identifier of the agent with which you want to associate
903
918
  # the knowledge base.
@@ -951,6 +966,20 @@ module Aws::BedrockAgent
951
966
  include Aws::Structure
952
967
  end
953
968
 
969
+ # Defines tools. The model automatically decides whether to call a tool
970
+ # or to generate text instead. For more information, see [Use a tool to
971
+ # complete an Amazon Bedrock model response][1].
972
+ #
973
+ #
974
+ #
975
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html
976
+ #
977
+ # @api private
978
+ #
979
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/AutoToolChoice AWS API Documentation
980
+ #
981
+ class AutoToolChoice < Aws::EmptyStructure; end
982
+
954
983
  # The vector configuration details for the Bedrock embeddings model.
955
984
  #
956
985
  # @!attribute [rw] dimensions
@@ -994,6 +1023,43 @@ module Aws::BedrockAgent
994
1023
  include Aws::Structure
995
1024
  end
996
1025
 
1026
+ # Contains configurations to use a prompt in a conversational format.
1027
+ # For more information, see [Create a prompt using Prompt
1028
+ # management][1].
1029
+ #
1030
+ #
1031
+ #
1032
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html
1033
+ #
1034
+ # @!attribute [rw] input_variables
1035
+ # An array of the variables in the prompt template.
1036
+ # @return [Array<Types::PromptInputVariable>]
1037
+ #
1038
+ # @!attribute [rw] messages
1039
+ # Contains messages in the chat for the prompt.
1040
+ # @return [Array<Types::Message>]
1041
+ #
1042
+ # @!attribute [rw] system
1043
+ # Contains system prompts to provide context to the model or to
1044
+ # describe how it should behave.
1045
+ # @return [Array<Types::SystemContentBlock>]
1046
+ #
1047
+ # @!attribute [rw] tool_configuration
1048
+ # Configuration information for the tools that the model can use when
1049
+ # generating a response.
1050
+ # @return [Types::ToolConfiguration]
1051
+ #
1052
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ChatPromptTemplateConfiguration AWS API Documentation
1053
+ #
1054
+ class ChatPromptTemplateConfiguration < Struct.new(
1055
+ :input_variables,
1056
+ :messages,
1057
+ :system,
1058
+ :tool_configuration)
1059
+ SENSITIVE = [:input_variables, :system]
1060
+ include Aws::Structure
1061
+ end
1062
+
997
1063
  # Details about how to chunk the documents in the data source. A *chunk*
998
1064
  # refers to an excerpt from a data source that is returned when the
999
1065
  # knowledge base that it belongs to is queried.
@@ -1178,6 +1244,35 @@ module Aws::BedrockAgent
1178
1244
  include Aws::Structure
1179
1245
  end
1180
1246
 
1247
+ # Contains the content for the message you pass to, or receive from a
1248
+ # model. For more information, see [Create a prompt using Prompt
1249
+ # management][1].
1250
+ #
1251
+ #
1252
+ #
1253
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html
1254
+ #
1255
+ # @note ContentBlock is a union - when making an API calls you must set exactly one of the members.
1256
+ #
1257
+ # @note ContentBlock is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of ContentBlock corresponding to the set member.
1258
+ #
1259
+ # @!attribute [rw] text
1260
+ # The text in the message.
1261
+ # @return [String]
1262
+ #
1263
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ContentBlock AWS API Documentation
1264
+ #
1265
+ class ContentBlock < Struct.new(
1266
+ :text,
1267
+ :unknown)
1268
+ SENSITIVE = []
1269
+ include Aws::Structure
1270
+ include Aws::Structure::Union
1271
+
1272
+ class Text < ContentBlock; end
1273
+ class Unknown < ContentBlock; end
1274
+ end
1275
+
1181
1276
  # The configuration of filtering the data source content. For example,
1182
1277
  # configuring regular expression patterns to include or exclude certain
1183
1278
  # content.
@@ -2262,6 +2357,20 @@ module Aws::BedrockAgent
2262
2357
  include Aws::Structure
2263
2358
  end
2264
2359
 
2360
+ # Details about a cyclic connection detected in the flow.
2361
+ #
2362
+ # @!attribute [rw] connection
2363
+ # The name of the connection that causes the cycle in the flow.
2364
+ # @return [String]
2365
+ #
2366
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CyclicConnectionFlowValidationDetails AWS API Documentation
2367
+ #
2368
+ class CyclicConnectionFlowValidationDetails < Struct.new(
2369
+ :connection)
2370
+ SENSITIVE = []
2371
+ include Aws::Structure
2372
+ end
2373
+
2265
2374
  # Contains details about a data source.
2266
2375
  #
2267
2376
  # @!attribute [rw] created_at
@@ -2838,6 +2947,46 @@ module Aws::BedrockAgent
2838
2947
  #
2839
2948
  class DisassociateAgentKnowledgeBaseResponse < Aws::EmptyStructure; end
2840
2949
 
2950
+ # Details about duplicate condition expressions found in a condition
2951
+ # node.
2952
+ #
2953
+ # @!attribute [rw] expression
2954
+ # The duplicated condition expression.
2955
+ # @return [String]
2956
+ #
2957
+ # @!attribute [rw] node
2958
+ # The name of the node containing the duplicate condition expressions.
2959
+ # @return [String]
2960
+ #
2961
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DuplicateConditionExpressionFlowValidationDetails AWS API Documentation
2962
+ #
2963
+ class DuplicateConditionExpressionFlowValidationDetails < Struct.new(
2964
+ :expression,
2965
+ :node)
2966
+ SENSITIVE = [:expression]
2967
+ include Aws::Structure
2968
+ end
2969
+
2970
+ # Details about duplicate connections found between two nodes in the
2971
+ # flow.
2972
+ #
2973
+ # @!attribute [rw] source
2974
+ # The name of the source node where the duplicate connection starts.
2975
+ # @return [String]
2976
+ #
2977
+ # @!attribute [rw] target
2978
+ # The name of the target node where the duplicate connection ends.
2979
+ # @return [String]
2980
+ #
2981
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DuplicateConnectionsFlowValidationDetails AWS API Documentation
2982
+ #
2983
+ class DuplicateConnectionsFlowValidationDetails < Struct.new(
2984
+ :source,
2985
+ :target)
2986
+ SENSITIVE = []
2987
+ include Aws::Structure
2988
+ end
2989
+
2841
2990
  # The configuration details for the embeddings model.
2842
2991
  #
2843
2992
  # @!attribute [rw] bedrock_embedding_model_configuration
@@ -3387,6 +3536,10 @@ module Aws::BedrockAgent
3387
3536
  # [1]: https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlow.html#API_agent_GetFlow_ResponseSyntax
3388
3537
  # [2]: https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlowVersion.html#API_agent_GetFlowVersion_ResponseSyntax
3389
3538
  #
3539
+ # @!attribute [rw] details
3540
+ # Specific details about the validation issue encountered in the flow.
3541
+ # @return [Types::FlowValidationDetails]
3542
+ #
3390
3543
  # @!attribute [rw] message
3391
3544
  # A message describing the validation error.
3392
3545
  # @return [String]
@@ -3395,15 +3548,187 @@ module Aws::BedrockAgent
3395
3548
  # The severity of the issue described in the message.
3396
3549
  # @return [String]
3397
3550
  #
3551
+ # @!attribute [rw] type
3552
+ # The type of validation issue encountered in the flow.
3553
+ # @return [String]
3554
+ #
3398
3555
  # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/FlowValidation AWS API Documentation
3399
3556
  #
3400
3557
  class FlowValidation < Struct.new(
3558
+ :details,
3401
3559
  :message,
3402
- :severity)
3560
+ :severity,
3561
+ :type)
3403
3562
  SENSITIVE = []
3404
3563
  include Aws::Structure
3405
3564
  end
3406
3565
 
3566
+ # A union type containing various possible validation issues in the
3567
+ # flow.
3568
+ #
3569
+ # @note FlowValidationDetails is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of FlowValidationDetails corresponding to the set member.
3570
+ #
3571
+ # @!attribute [rw] cyclic_connection
3572
+ # Details about a cyclic connection in the flow.
3573
+ # @return [Types::CyclicConnectionFlowValidationDetails]
3574
+ #
3575
+ # @!attribute [rw] duplicate_condition_expression
3576
+ # Details about duplicate condition expressions in a node.
3577
+ # @return [Types::DuplicateConditionExpressionFlowValidationDetails]
3578
+ #
3579
+ # @!attribute [rw] duplicate_connections
3580
+ # Details about duplicate connections between nodes.
3581
+ # @return [Types::DuplicateConnectionsFlowValidationDetails]
3582
+ #
3583
+ # @!attribute [rw] incompatible_connection_data_type
3584
+ # Details about incompatible data types in a connection.
3585
+ # @return [Types::IncompatibleConnectionDataTypeFlowValidationDetails]
3586
+ #
3587
+ # @!attribute [rw] malformed_condition_expression
3588
+ # Details about a malformed condition expression in a node.
3589
+ # @return [Types::MalformedConditionExpressionFlowValidationDetails]
3590
+ #
3591
+ # @!attribute [rw] malformed_node_input_expression
3592
+ # Details about a malformed input expression in a node.
3593
+ # @return [Types::MalformedNodeInputExpressionFlowValidationDetails]
3594
+ #
3595
+ # @!attribute [rw] mismatched_node_input_type
3596
+ # Details about mismatched input data types in a node.
3597
+ # @return [Types::MismatchedNodeInputTypeFlowValidationDetails]
3598
+ #
3599
+ # @!attribute [rw] mismatched_node_output_type
3600
+ # Details about mismatched output data types in a node.
3601
+ # @return [Types::MismatchedNodeOutputTypeFlowValidationDetails]
3602
+ #
3603
+ # @!attribute [rw] missing_connection_configuration
3604
+ # Details about missing configuration for a connection.
3605
+ # @return [Types::MissingConnectionConfigurationFlowValidationDetails]
3606
+ #
3607
+ # @!attribute [rw] missing_default_condition
3608
+ # Details about a missing default condition in a conditional node.
3609
+ # @return [Types::MissingDefaultConditionFlowValidationDetails]
3610
+ #
3611
+ # @!attribute [rw] missing_ending_nodes
3612
+ # Details about missing ending nodes in the flow.
3613
+ # @return [Types::MissingEndingNodesFlowValidationDetails]
3614
+ #
3615
+ # @!attribute [rw] missing_node_configuration
3616
+ # Details about missing configuration for a node.
3617
+ # @return [Types::MissingNodeConfigurationFlowValidationDetails]
3618
+ #
3619
+ # @!attribute [rw] missing_node_input
3620
+ # Details about a missing required input in a node.
3621
+ # @return [Types::MissingNodeInputFlowValidationDetails]
3622
+ #
3623
+ # @!attribute [rw] missing_node_output
3624
+ # Details about a missing required output in a node.
3625
+ # @return [Types::MissingNodeOutputFlowValidationDetails]
3626
+ #
3627
+ # @!attribute [rw] missing_starting_nodes
3628
+ # Details about missing starting nodes in the flow.
3629
+ # @return [Types::MissingStartingNodesFlowValidationDetails]
3630
+ #
3631
+ # @!attribute [rw] multiple_node_input_connections
3632
+ # Details about multiple connections to a single node input.
3633
+ # @return [Types::MultipleNodeInputConnectionsFlowValidationDetails]
3634
+ #
3635
+ # @!attribute [rw] unfulfilled_node_input
3636
+ # Details about an unfulfilled node input with no valid connections.
3637
+ # @return [Types::UnfulfilledNodeInputFlowValidationDetails]
3638
+ #
3639
+ # @!attribute [rw] unknown_connection_condition
3640
+ # Details about an unknown condition for a connection.
3641
+ # @return [Types::UnknownConnectionConditionFlowValidationDetails]
3642
+ #
3643
+ # @!attribute [rw] unknown_connection_source
3644
+ # Details about an unknown source node for a connection.
3645
+ # @return [Types::UnknownConnectionSourceFlowValidationDetails]
3646
+ #
3647
+ # @!attribute [rw] unknown_connection_source_output
3648
+ # Details about an unknown source output for a connection.
3649
+ # @return [Types::UnknownConnectionSourceOutputFlowValidationDetails]
3650
+ #
3651
+ # @!attribute [rw] unknown_connection_target
3652
+ # Details about an unknown target node for a connection.
3653
+ # @return [Types::UnknownConnectionTargetFlowValidationDetails]
3654
+ #
3655
+ # @!attribute [rw] unknown_connection_target_input
3656
+ # Details about an unknown target input for a connection.
3657
+ # @return [Types::UnknownConnectionTargetInputFlowValidationDetails]
3658
+ #
3659
+ # @!attribute [rw] unreachable_node
3660
+ # Details about an unreachable node in the flow.
3661
+ # @return [Types::UnreachableNodeFlowValidationDetails]
3662
+ #
3663
+ # @!attribute [rw] unsatisfied_connection_conditions
3664
+ # Details about unsatisfied conditions for a connection.
3665
+ # @return [Types::UnsatisfiedConnectionConditionsFlowValidationDetails]
3666
+ #
3667
+ # @!attribute [rw] unspecified
3668
+ # Details about an unspecified validation.
3669
+ # @return [Types::UnspecifiedFlowValidationDetails]
3670
+ #
3671
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/FlowValidationDetails AWS API Documentation
3672
+ #
3673
+ class FlowValidationDetails < Struct.new(
3674
+ :cyclic_connection,
3675
+ :duplicate_condition_expression,
3676
+ :duplicate_connections,
3677
+ :incompatible_connection_data_type,
3678
+ :malformed_condition_expression,
3679
+ :malformed_node_input_expression,
3680
+ :mismatched_node_input_type,
3681
+ :mismatched_node_output_type,
3682
+ :missing_connection_configuration,
3683
+ :missing_default_condition,
3684
+ :missing_ending_nodes,
3685
+ :missing_node_configuration,
3686
+ :missing_node_input,
3687
+ :missing_node_output,
3688
+ :missing_starting_nodes,
3689
+ :multiple_node_input_connections,
3690
+ :unfulfilled_node_input,
3691
+ :unknown_connection_condition,
3692
+ :unknown_connection_source,
3693
+ :unknown_connection_source_output,
3694
+ :unknown_connection_target,
3695
+ :unknown_connection_target_input,
3696
+ :unreachable_node,
3697
+ :unsatisfied_connection_conditions,
3698
+ :unspecified,
3699
+ :unknown)
3700
+ SENSITIVE = []
3701
+ include Aws::Structure
3702
+ include Aws::Structure::Union
3703
+
3704
+ class CyclicConnection < FlowValidationDetails; end
3705
+ class DuplicateConditionExpression < FlowValidationDetails; end
3706
+ class DuplicateConnections < FlowValidationDetails; end
3707
+ class IncompatibleConnectionDataType < FlowValidationDetails; end
3708
+ class MalformedConditionExpression < FlowValidationDetails; end
3709
+ class MalformedNodeInputExpression < FlowValidationDetails; end
3710
+ class MismatchedNodeInputType < FlowValidationDetails; end
3711
+ class MismatchedNodeOutputType < FlowValidationDetails; end
3712
+ class MissingConnectionConfiguration < FlowValidationDetails; end
3713
+ class MissingDefaultCondition < FlowValidationDetails; end
3714
+ class MissingEndingNodes < FlowValidationDetails; end
3715
+ class MissingNodeConfiguration < FlowValidationDetails; end
3716
+ class MissingNodeInput < FlowValidationDetails; end
3717
+ class MissingNodeOutput < FlowValidationDetails; end
3718
+ class MissingStartingNodes < FlowValidationDetails; end
3719
+ class MultipleNodeInputConnections < FlowValidationDetails; end
3720
+ class UnfulfilledNodeInput < FlowValidationDetails; end
3721
+ class UnknownConnectionCondition < FlowValidationDetails; end
3722
+ class UnknownConnectionSource < FlowValidationDetails; end
3723
+ class UnknownConnectionSourceOutput < FlowValidationDetails; end
3724
+ class UnknownConnectionTarget < FlowValidationDetails; end
3725
+ class UnknownConnectionTargetInput < FlowValidationDetails; end
3726
+ class UnreachableNode < FlowValidationDetails; end
3727
+ class UnsatisfiedConnectionConditions < FlowValidationDetails; end
3728
+ class Unspecified < FlowValidationDetails; end
3729
+ class Unknown < FlowValidationDetails; end
3730
+ end
3731
+
3407
3732
  # Contains information about a version of a flow.
3408
3733
  #
3409
3734
  # This data type is used in the following API operations:
@@ -4132,7 +4457,7 @@ module Aws::BedrockAgent
4132
4457
  include Aws::Structure
4133
4458
  end
4134
4459
 
4135
- # Details about the guardrail associated with an agent.
4460
+ # Details about a guardrail associated with a resource.
4136
4461
  #
4137
4462
  # @!attribute [rw] guardrail_identifier
4138
4463
  # The unique identifier of the guardrail.
@@ -4193,6 +4518,20 @@ module Aws::BedrockAgent
4193
4518
  include Aws::Structure
4194
4519
  end
4195
4520
 
4521
+ # Details about incompatible data types in a connection between nodes.
4522
+ #
4523
+ # @!attribute [rw] connection
4524
+ # The name of the connection with incompatible data types.
4525
+ # @return [String]
4526
+ #
4527
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/IncompatibleConnectionDataTypeFlowValidationDetails AWS API Documentation
4528
+ #
4529
+ class IncompatibleConnectionDataTypeFlowValidationDetails < Struct.new(
4530
+ :connection)
4531
+ SENSITIVE = []
4532
+ include Aws::Structure
4533
+ end
4534
+
4196
4535
  # Contains inference parameters to use when the agent invokes a
4197
4536
  # foundation model in the part of the agent sequence defined by the
4198
4537
  # `promptType`. For more information, see [Inference parameters for
@@ -4629,6 +4968,11 @@ module Aws::BedrockAgent
4629
4968
  #
4630
4969
  # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html
4631
4970
  #
4971
+ # @!attribute [rw] guardrail_configuration
4972
+ # Contains configurations for a guardrail to apply during query and
4973
+ # response generation for the knowledge base in this configuration.
4974
+ # @return [Types::GuardrailConfiguration]
4975
+ #
4632
4976
  # @!attribute [rw] knowledge_base_id
4633
4977
  # The unique identifier of the knowledge base to query.
4634
4978
  # @return [String]
@@ -4646,6 +4990,7 @@ module Aws::BedrockAgent
4646
4990
  # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/KnowledgeBaseFlowNodeConfiguration AWS API Documentation
4647
4991
  #
4648
4992
  class KnowledgeBaseFlowNodeConfiguration < Struct.new(
4993
+ :guardrail_configuration,
4649
4994
  :knowledge_base_id,
4650
4995
  :model_id)
4651
4996
  SENSITIVE = []
@@ -5363,6 +5708,55 @@ module Aws::BedrockAgent
5363
5708
  include Aws::Structure
5364
5709
  end
5365
5710
 
5711
+ # Details about a malformed condition expression in a node.
5712
+ #
5713
+ # @!attribute [rw] cause
5714
+ # The error message describing why the condition expression is
5715
+ # malformed.
5716
+ # @return [String]
5717
+ #
5718
+ # @!attribute [rw] condition
5719
+ # The name of the malformed condition.
5720
+ # @return [String]
5721
+ #
5722
+ # @!attribute [rw] node
5723
+ # The name of the node containing the malformed condition expression.
5724
+ # @return [String]
5725
+ #
5726
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/MalformedConditionExpressionFlowValidationDetails AWS API Documentation
5727
+ #
5728
+ class MalformedConditionExpressionFlowValidationDetails < Struct.new(
5729
+ :cause,
5730
+ :condition,
5731
+ :node)
5732
+ SENSITIVE = []
5733
+ include Aws::Structure
5734
+ end
5735
+
5736
+ # Details about a malformed input expression in a node.
5737
+ #
5738
+ # @!attribute [rw] cause
5739
+ # The error message describing why the input expression is malformed.
5740
+ # @return [String]
5741
+ #
5742
+ # @!attribute [rw] input
5743
+ # The name of the input with the malformed expression.
5744
+ # @return [String]
5745
+ #
5746
+ # @!attribute [rw] node
5747
+ # The name of the node containing the malformed input expression.
5748
+ # @return [String]
5749
+ #
5750
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/MalformedNodeInputExpressionFlowValidationDetails AWS API Documentation
5751
+ #
5752
+ class MalformedNodeInputExpressionFlowValidationDetails < Struct.new(
5753
+ :cause,
5754
+ :input,
5755
+ :node)
5756
+ SENSITIVE = []
5757
+ include Aws::Structure
5758
+ end
5759
+
5366
5760
  # Details of the memory configuration.
5367
5761
  #
5368
5762
  # @!attribute [rw] enabled_memory_types
@@ -5383,6 +5777,174 @@ module Aws::BedrockAgent
5383
5777
  include Aws::Structure
5384
5778
  end
5385
5779
 
5780
+ # A message input or response from a model. For more information, see
5781
+ # [Create a prompt using Prompt management][1].
5782
+ #
5783
+ #
5784
+ #
5785
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html
5786
+ #
5787
+ # @!attribute [rw] content
5788
+ # The content in the message.
5789
+ # @return [Array<Types::ContentBlock>]
5790
+ #
5791
+ # @!attribute [rw] role
5792
+ # The role that the message belongs to.
5793
+ # @return [String]
5794
+ #
5795
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/Message AWS API Documentation
5796
+ #
5797
+ class Message < Struct.new(
5798
+ :content,
5799
+ :role)
5800
+ SENSITIVE = [:content]
5801
+ include Aws::Structure
5802
+ end
5803
+
5804
+ # Details about mismatched input data types in a node.
5805
+ #
5806
+ # @!attribute [rw] expected_type
5807
+ # The expected data type for the node input.
5808
+ # @return [String]
5809
+ #
5810
+ # @!attribute [rw] input
5811
+ # The name of the input with the mismatched data type.
5812
+ # @return [String]
5813
+ #
5814
+ # @!attribute [rw] node
5815
+ # The name of the node containing the input with the mismatched data
5816
+ # type.
5817
+ # @return [String]
5818
+ #
5819
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/MismatchedNodeInputTypeFlowValidationDetails AWS API Documentation
5820
+ #
5821
+ class MismatchedNodeInputTypeFlowValidationDetails < Struct.new(
5822
+ :expected_type,
5823
+ :input,
5824
+ :node)
5825
+ SENSITIVE = []
5826
+ include Aws::Structure
5827
+ end
5828
+
5829
+ # Details about mismatched output data types in a node.
5830
+ #
5831
+ # @!attribute [rw] expected_type
5832
+ # The expected data type for the node output.
5833
+ # @return [String]
5834
+ #
5835
+ # @!attribute [rw] node
5836
+ # The name of the node containing the output with the mismatched data
5837
+ # type.
5838
+ # @return [String]
5839
+ #
5840
+ # @!attribute [rw] output
5841
+ # The name of the output with the mismatched data type.
5842
+ # @return [String]
5843
+ #
5844
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/MismatchedNodeOutputTypeFlowValidationDetails AWS API Documentation
5845
+ #
5846
+ class MismatchedNodeOutputTypeFlowValidationDetails < Struct.new(
5847
+ :expected_type,
5848
+ :node,
5849
+ :output)
5850
+ SENSITIVE = []
5851
+ include Aws::Structure
5852
+ end
5853
+
5854
+ # Details about a connection missing required configuration.
5855
+ #
5856
+ # @!attribute [rw] connection
5857
+ # The name of the connection missing configuration.
5858
+ # @return [String]
5859
+ #
5860
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/MissingConnectionConfigurationFlowValidationDetails AWS API Documentation
5861
+ #
5862
+ class MissingConnectionConfigurationFlowValidationDetails < Struct.new(
5863
+ :connection)
5864
+ SENSITIVE = []
5865
+ include Aws::Structure
5866
+ end
5867
+
5868
+ # Details about a missing default condition in a conditional node.
5869
+ #
5870
+ # @!attribute [rw] node
5871
+ # The name of the node missing the default condition.
5872
+ # @return [String]
5873
+ #
5874
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/MissingDefaultConditionFlowValidationDetails AWS API Documentation
5875
+ #
5876
+ class MissingDefaultConditionFlowValidationDetails < Struct.new(
5877
+ :node)
5878
+ SENSITIVE = []
5879
+ include Aws::Structure
5880
+ end
5881
+
5882
+ # Details about missing ending nodes (such as FlowOutputNode) in the
5883
+ # flow.
5884
+ #
5885
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/MissingEndingNodesFlowValidationDetails AWS API Documentation
5886
+ #
5887
+ class MissingEndingNodesFlowValidationDetails < Aws::EmptyStructure; end
5888
+
5889
+ # Details about a node missing required configuration.
5890
+ #
5891
+ # @!attribute [rw] node
5892
+ # The name of the node missing configuration.
5893
+ # @return [String]
5894
+ #
5895
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/MissingNodeConfigurationFlowValidationDetails AWS API Documentation
5896
+ #
5897
+ class MissingNodeConfigurationFlowValidationDetails < Struct.new(
5898
+ :node)
5899
+ SENSITIVE = []
5900
+ include Aws::Structure
5901
+ end
5902
+
5903
+ # Details about a missing required input in a node.
5904
+ #
5905
+ # @!attribute [rw] input
5906
+ # The name of the missing input.
5907
+ # @return [String]
5908
+ #
5909
+ # @!attribute [rw] node
5910
+ # The name of the node missing the required input.
5911
+ # @return [String]
5912
+ #
5913
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/MissingNodeInputFlowValidationDetails AWS API Documentation
5914
+ #
5915
+ class MissingNodeInputFlowValidationDetails < Struct.new(
5916
+ :input,
5917
+ :node)
5918
+ SENSITIVE = []
5919
+ include Aws::Structure
5920
+ end
5921
+
5922
+ # Details about a missing required output in a node.
5923
+ #
5924
+ # @!attribute [rw] node
5925
+ # The name of the node missing the required output.
5926
+ # @return [String]
5927
+ #
5928
+ # @!attribute [rw] output
5929
+ # The name of the missing output.
5930
+ # @return [String]
5931
+ #
5932
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/MissingNodeOutputFlowValidationDetails AWS API Documentation
5933
+ #
5934
+ class MissingNodeOutputFlowValidationDetails < Struct.new(
5935
+ :node,
5936
+ :output)
5937
+ SENSITIVE = []
5938
+ include Aws::Structure
5939
+ end
5940
+
5941
+ # Details about missing starting nodes (such as FlowInputNode) in the
5942
+ # flow.
5943
+ #
5944
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/MissingStartingNodesFlowValidationDetails AWS API Documentation
5945
+ #
5946
+ class MissingStartingNodesFlowValidationDetails < Aws::EmptyStructure; end
5947
+
5386
5948
  # Contains details about the storage configuration of the knowledge base
5387
5949
  # in MongoDB Atlas.
5388
5950
  #
@@ -5463,6 +6025,25 @@ module Aws::BedrockAgent
5463
6025
  include Aws::Structure
5464
6026
  end
5465
6027
 
6028
+ # Details about multiple connections to a single node input.
6029
+ #
6030
+ # @!attribute [rw] input
6031
+ # The name of the input with multiple connections to it.
6032
+ # @return [String]
6033
+ #
6034
+ # @!attribute [rw] node
6035
+ # The name of the node containing the input with multiple connections.
6036
+ # @return [String]
6037
+ #
6038
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/MultipleNodeInputConnectionsFlowValidationDetails AWS API Documentation
6039
+ #
6040
+ class MultipleNodeInputConnectionsFlowValidationDetails < Struct.new(
6041
+ :input,
6042
+ :node)
6043
+ SENSITIVE = []
6044
+ include Aws::Structure
6045
+ end
6046
+
5466
6047
  # Contains details about the storage configuration of the knowledge base
5467
6048
  # in Amazon OpenSearch Service. For more information, see [Create a
5468
6049
  # vector index in Amazon OpenSearch Service][1].
@@ -5821,6 +6402,28 @@ module Aws::BedrockAgent
5821
6402
  include Aws::Structure
5822
6403
  end
5823
6404
 
6405
+ # Contains specifications for an Amazon Bedrock agent with which to use
6406
+ # the prompt. For more information, see [Create a prompt using Prompt
6407
+ # management][1] and [Automate tasks in your application using
6408
+ # conversational agents][2].
6409
+ #
6410
+ #
6411
+ #
6412
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html
6413
+ # [2]: https://docs.aws.amazon.com/bedrock/latest/userguide/agents.html
6414
+ #
6415
+ # @!attribute [rw] agent_identifier
6416
+ # The ARN of the agent with which to use the prompt.
6417
+ # @return [String]
6418
+ #
6419
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/PromptAgentResource AWS API Documentation
6420
+ #
6421
+ class PromptAgentResource < Struct.new(
6422
+ :agent_identifier)
6423
+ SENSITIVE = []
6424
+ include Aws::Structure
6425
+ end
6426
+
5824
6427
  # Contains configurations to override a prompt template in one part of
5825
6428
  # an agent sequence. For more information, see [Advanced prompts][1].
5826
6429
  #
@@ -5916,6 +6519,11 @@ module Aws::BedrockAgent
5916
6519
  #
5917
6520
  # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html
5918
6521
  #
6522
+ # @!attribute [rw] guardrail_configuration
6523
+ # Contains configurations for a guardrail to apply to the prompt in
6524
+ # this node and the response generated from it.
6525
+ # @return [Types::GuardrailConfiguration]
6526
+ #
5919
6527
  # @!attribute [rw] source_configuration
5920
6528
  # Specifies whether the prompt is from Prompt management or defined
5921
6529
  # inline.
@@ -5924,6 +6532,7 @@ module Aws::BedrockAgent
5924
6532
  # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/PromptFlowNodeConfiguration AWS API Documentation
5925
6533
  #
5926
6534
  class PromptFlowNodeConfiguration < Struct.new(
6535
+ :guardrail_configuration,
5927
6536
  :source_configuration)
5928
6537
  SENSITIVE = []
5929
6538
  include Aws::Structure
@@ -5932,14 +6541,8 @@ module Aws::BedrockAgent
5932
6541
  # Contains configurations for a prompt defined inline in the node.
5933
6542
  #
5934
6543
  # @!attribute [rw] additional_model_request_fields
5935
- # Contains model-specific inference configurations that aren't in the
5936
- # `inferenceConfiguration` field. To see model-specific inference
5937
- # parameters, see [Inference request parameters and response fields
5938
- # for foundation models][1].
5939
- #
5940
- #
5941
- #
5942
- # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html
6544
+ # Additional fields to be included in the model request for the Prompt
6545
+ # node.
5943
6546
  # @return [Hash,Array,String,Numeric,Boolean]
5944
6547
  #
5945
6548
  # @!attribute [rw] inference_configuration
@@ -6021,6 +6624,35 @@ module Aws::BedrockAgent
6021
6624
  class Unknown < PromptFlowNodeSourceConfiguration; end
6022
6625
  end
6023
6626
 
6627
+ # Contains specifications for a generative AI resource with which to use
6628
+ # the prompt. For more information, see [Create a prompt using Prompt
6629
+ # management][1].
6630
+ #
6631
+ #
6632
+ #
6633
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html
6634
+ #
6635
+ # @note PromptGenAiResource is a union - when making an API calls you must set exactly one of the members.
6636
+ #
6637
+ # @note PromptGenAiResource is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of PromptGenAiResource corresponding to the set member.
6638
+ #
6639
+ # @!attribute [rw] agent
6640
+ # Specifies an Amazon Bedrock agent with which to use the prompt.
6641
+ # @return [Types::PromptAgentResource]
6642
+ #
6643
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/PromptGenAiResource AWS API Documentation
6644
+ #
6645
+ class PromptGenAiResource < Struct.new(
6646
+ :agent,
6647
+ :unknown)
6648
+ SENSITIVE = [:agent]
6649
+ include Aws::Structure
6650
+ include Aws::Structure::Union
6651
+
6652
+ class Agent < PromptGenAiResource; end
6653
+ class Unknown < PromptGenAiResource; end
6654
+ end
6655
+
6024
6656
  # Contains inference configurations for the prompt.
6025
6657
  #
6026
6658
  # @note PromptInferenceConfiguration is a union - when making an API calls you must set exactly one of the members.
@@ -6214,8 +6846,9 @@ module Aws::BedrockAgent
6214
6846
  include Aws::Structure
6215
6847
  end
6216
6848
 
6217
- # Contains the message for a prompt. For more information, see [Prompt
6218
- # management in Amazon Bedrock][1].
6849
+ # Contains the message for a prompt. For more information, see
6850
+ # [Construct and store reusable prompts with Prompt management in Amazon
6851
+ # Bedrock][1].
6219
6852
  #
6220
6853
  #
6221
6854
  #
@@ -6225,6 +6858,11 @@ module Aws::BedrockAgent
6225
6858
  #
6226
6859
  # @note PromptTemplateConfiguration is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of PromptTemplateConfiguration corresponding to the set member.
6227
6860
  #
6861
+ # @!attribute [rw] chat
6862
+ # Contains configurations to use the prompt in a conversational
6863
+ # format.
6864
+ # @return [Types::ChatPromptTemplateConfiguration]
6865
+ #
6228
6866
  # @!attribute [rw] text
6229
6867
  # Contains configurations for the text in a message for a prompt.
6230
6868
  # @return [Types::TextPromptTemplateConfiguration]
@@ -6232,12 +6870,14 @@ module Aws::BedrockAgent
6232
6870
  # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/PromptTemplateConfiguration AWS API Documentation
6233
6871
  #
6234
6872
  class PromptTemplateConfiguration < Struct.new(
6873
+ :chat,
6235
6874
  :text,
6236
6875
  :unknown)
6237
- SENSITIVE = [:text]
6876
+ SENSITIVE = [:chat, :text]
6238
6877
  include Aws::Structure
6239
6878
  include Aws::Structure::Union
6240
6879
 
6880
+ class Chat < PromptTemplateConfiguration; end
6241
6881
  class Text < PromptTemplateConfiguration; end
6242
6882
  class Unknown < PromptTemplateConfiguration; end
6243
6883
  end
@@ -6255,18 +6895,17 @@ module Aws::BedrockAgent
6255
6895
  # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html
6256
6896
  # @return [Hash,Array,String,Numeric,Boolean]
6257
6897
  #
6898
+ # @!attribute [rw] gen_ai_resource
6899
+ # Specifies a generative AI resource with which to use the prompt.
6900
+ # @return [Types::PromptGenAiResource]
6901
+ #
6258
6902
  # @!attribute [rw] inference_configuration
6259
6903
  # Contains inference configurations for the prompt variant.
6260
6904
  # @return [Types::PromptInferenceConfiguration]
6261
6905
  #
6262
6906
  # @!attribute [rw] metadata
6263
6907
  # An array of objects, each containing a key-value pair that defines a
6264
- # metadata tag and value to attach to a prompt variant. For more
6265
- # information, see [Create a prompt using Prompt management][1].
6266
- #
6267
- #
6268
- #
6269
- # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html
6908
+ # metadata tag and value to attach to a prompt variant.
6270
6909
  # @return [Array<Types::PromptMetadataEntry>]
6271
6910
  #
6272
6911
  # @!attribute [rw] model_id
@@ -6294,13 +6933,14 @@ module Aws::BedrockAgent
6294
6933
  #
6295
6934
  class PromptVariant < Struct.new(
6296
6935
  :additional_model_request_fields,
6936
+ :gen_ai_resource,
6297
6937
  :inference_configuration,
6298
6938
  :metadata,
6299
6939
  :model_id,
6300
6940
  :name,
6301
6941
  :template_configuration,
6302
6942
  :template_type)
6303
- SENSITIVE = [:metadata]
6943
+ SENSITIVE = [:gen_ai_resource, :metadata]
6304
6944
  include Aws::Structure
6305
6945
  end
6306
6946
 
@@ -6827,6 +7467,27 @@ module Aws::BedrockAgent
6827
7467
  include Aws::Structure
6828
7468
  end
6829
7469
 
7470
+ # Defines a specific tool that the model must request. No text is
7471
+ # generated but the results of tool use are sent back to the model to
7472
+ # help generate a response. For more information, see [Use a tool to
7473
+ # complete an Amazon Bedrock model response][1].
7474
+ #
7475
+ #
7476
+ #
7477
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html
7478
+ #
7479
+ # @!attribute [rw] name
7480
+ # The name of the tool.
7481
+ # @return [String]
7482
+ #
7483
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/SpecificToolChoice AWS API Documentation
7484
+ #
7485
+ class SpecificToolChoice < Struct.new(
7486
+ :name)
7487
+ SENSITIVE = []
7488
+ include Aws::Structure
7489
+ end
7490
+
6830
7491
  # @!attribute [rw] client_token
6831
7492
  # A unique, case-sensitive identifier to ensure that the API request
6832
7493
  # completes no more than one time. If this token matches a previous
@@ -7020,6 +7681,35 @@ module Aws::BedrockAgent
7020
7681
  class Unknown < StorageFlowNodeServiceConfiguration; end
7021
7682
  end
7022
7683
 
7684
+ # Contains a system prompt to provide context to the model or to
7685
+ # describe how it should behave. For more information, see [Create a
7686
+ # prompt using Prompt management][1].
7687
+ #
7688
+ #
7689
+ #
7690
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html
7691
+ #
7692
+ # @note SystemContentBlock is a union - when making an API calls you must set exactly one of the members.
7693
+ #
7694
+ # @note SystemContentBlock is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of SystemContentBlock corresponding to the set member.
7695
+ #
7696
+ # @!attribute [rw] text
7697
+ # The text in the system prompt.
7698
+ # @return [String]
7699
+ #
7700
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/SystemContentBlock AWS API Documentation
7701
+ #
7702
+ class SystemContentBlock < Struct.new(
7703
+ :text,
7704
+ :unknown)
7705
+ SENSITIVE = []
7706
+ include Aws::Structure
7707
+ include Aws::Structure::Union
7708
+
7709
+ class Text < SystemContentBlock; end
7710
+ class Unknown < SystemContentBlock; end
7711
+ end
7712
+
7023
7713
  # @!attribute [rw] resource_arn
7024
7714
  # The Amazon Resource Name (ARN) of the resource to tag.
7025
7715
  # @return [String]
@@ -7075,6 +7765,163 @@ module Aws::BedrockAgent
7075
7765
  include Aws::Structure
7076
7766
  end
7077
7767
 
7768
+ # Contains configurations for a tool that a model can use when
7769
+ # generating a response. For more information, see [Use a tool to
7770
+ # complete an Amazon Bedrock model response][1].
7771
+ #
7772
+ #
7773
+ #
7774
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html
7775
+ #
7776
+ # @note Tool is a union - when making an API calls you must set exactly one of the members.
7777
+ #
7778
+ # @note Tool is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of Tool corresponding to the set member.
7779
+ #
7780
+ # @!attribute [rw] tool_spec
7781
+ # The specification for the tool.
7782
+ # @return [Types::ToolSpecification]
7783
+ #
7784
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/Tool AWS API Documentation
7785
+ #
7786
+ class Tool < Struct.new(
7787
+ :tool_spec,
7788
+ :unknown)
7789
+ SENSITIVE = []
7790
+ include Aws::Structure
7791
+ include Aws::Structure::Union
7792
+
7793
+ class ToolSpec < Tool; end
7794
+ class Unknown < Tool; end
7795
+ end
7796
+
7797
+ # Defines which tools the model should request when invoked. For more
7798
+ # information, see [Use a tool to complete an Amazon Bedrock model
7799
+ # response][1].
7800
+ #
7801
+ #
7802
+ #
7803
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html
7804
+ #
7805
+ # @note ToolChoice is a union - when making an API calls you must set exactly one of the members.
7806
+ #
7807
+ # @note ToolChoice is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of ToolChoice corresponding to the set member.
7808
+ #
7809
+ # @!attribute [rw] any
7810
+ # Defines tools, at least one of which must be requested by the model.
7811
+ # No text is generated but the results of tool use are sent back to
7812
+ # the model to help generate a response.
7813
+ # @return [Types::AnyToolChoice]
7814
+ #
7815
+ # @!attribute [rw] auto
7816
+ # Defines tools. The model automatically decides whether to call a
7817
+ # tool or to generate text instead.
7818
+ # @return [Types::AutoToolChoice]
7819
+ #
7820
+ # @!attribute [rw] tool
7821
+ # Defines a specific tool that the model must request. No text is
7822
+ # generated but the results of tool use are sent back to the model to
7823
+ # help generate a response.
7824
+ # @return [Types::SpecificToolChoice]
7825
+ #
7826
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ToolChoice AWS API Documentation
7827
+ #
7828
+ class ToolChoice < Struct.new(
7829
+ :any,
7830
+ :auto,
7831
+ :tool,
7832
+ :unknown)
7833
+ SENSITIVE = []
7834
+ include Aws::Structure
7835
+ include Aws::Structure::Union
7836
+
7837
+ class Any < ToolChoice; end
7838
+ class Auto < ToolChoice; end
7839
+ class Tool < ToolChoice; end
7840
+ class Unknown < ToolChoice; end
7841
+ end
7842
+
7843
+ # Configuration information for the tools that the model can use when
7844
+ # generating a response. For more information, see [Use a tool to
7845
+ # complete an Amazon Bedrock model response][1].
7846
+ #
7847
+ #
7848
+ #
7849
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html
7850
+ #
7851
+ # @!attribute [rw] tool_choice
7852
+ # Defines which tools the model should request when invoked.
7853
+ # @return [Types::ToolChoice]
7854
+ #
7855
+ # @!attribute [rw] tools
7856
+ # An array of tools to pass to a model.
7857
+ # @return [Array<Types::Tool>]
7858
+ #
7859
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ToolConfiguration AWS API Documentation
7860
+ #
7861
+ class ToolConfiguration < Struct.new(
7862
+ :tool_choice,
7863
+ :tools)
7864
+ SENSITIVE = [:tool_choice, :tools]
7865
+ include Aws::Structure
7866
+ end
7867
+
7868
+ # The input schema for the tool. For more information, see [Use a tool
7869
+ # to complete an Amazon Bedrock model response][1].
7870
+ #
7871
+ #
7872
+ #
7873
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html
7874
+ #
7875
+ # @note ToolInputSchema is a union - when making an API calls you must set exactly one of the members.
7876
+ #
7877
+ # @note ToolInputSchema is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of ToolInputSchema corresponding to the set member.
7878
+ #
7879
+ # @!attribute [rw] json
7880
+ # A JSON object defining the input schema for the tool.
7881
+ # @return [Hash,Array,String,Numeric,Boolean]
7882
+ #
7883
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ToolInputSchema AWS API Documentation
7884
+ #
7885
+ class ToolInputSchema < Struct.new(
7886
+ :json,
7887
+ :unknown)
7888
+ SENSITIVE = []
7889
+ include Aws::Structure
7890
+ include Aws::Structure::Union
7891
+
7892
+ class Json < ToolInputSchema; end
7893
+ class Unknown < ToolInputSchema; end
7894
+ end
7895
+
7896
+ # Contains a specification for a tool. For more information, see [Use a
7897
+ # tool to complete an Amazon Bedrock model response][1].
7898
+ #
7899
+ #
7900
+ #
7901
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html
7902
+ #
7903
+ # @!attribute [rw] description
7904
+ # The description of the tool.
7905
+ # @return [String]
7906
+ #
7907
+ # @!attribute [rw] input_schema
7908
+ # The input schema for the tool.
7909
+ # @return [Types::ToolInputSchema]
7910
+ #
7911
+ # @!attribute [rw] name
7912
+ # The name of the tool.
7913
+ # @return [String]
7914
+ #
7915
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ToolSpecification AWS API Documentation
7916
+ #
7917
+ class ToolSpecification < Struct.new(
7918
+ :description,
7919
+ :input_schema,
7920
+ :name)
7921
+ SENSITIVE = []
7922
+ include Aws::Structure
7923
+ end
7924
+
7078
7925
  # A custom processing step for documents moving through a data source
7079
7926
  # ingestion pipeline. To process documents after they have been
7080
7927
  # converted into chunks, set the step to apply to `POST_CHUNKING`.
@@ -7124,6 +7971,134 @@ module Aws::BedrockAgent
7124
7971
  include Aws::Structure
7125
7972
  end
7126
7973
 
7974
+ # Details about an unfulfilled node input with no valid connections.
7975
+ #
7976
+ # @!attribute [rw] input
7977
+ # The name of the unfulfilled input. An input is unfulfilled if there
7978
+ # are no data connections to it.
7979
+ # @return [String]
7980
+ #
7981
+ # @!attribute [rw] node
7982
+ # The name of the node containing the unfulfilled input.
7983
+ # @return [String]
7984
+ #
7985
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UnfulfilledNodeInputFlowValidationDetails AWS API Documentation
7986
+ #
7987
+ class UnfulfilledNodeInputFlowValidationDetails < Struct.new(
7988
+ :input,
7989
+ :node)
7990
+ SENSITIVE = []
7991
+ include Aws::Structure
7992
+ end
7993
+
7994
+ # Details about an unknown condition for a connection.
7995
+ #
7996
+ # @!attribute [rw] connection
7997
+ # The name of the connection with the unknown condition.
7998
+ # @return [String]
7999
+ #
8000
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UnknownConnectionConditionFlowValidationDetails AWS API Documentation
8001
+ #
8002
+ class UnknownConnectionConditionFlowValidationDetails < Struct.new(
8003
+ :connection)
8004
+ SENSITIVE = []
8005
+ include Aws::Structure
8006
+ end
8007
+
8008
+ # Details about an unknown source node for a connection.
8009
+ #
8010
+ # @!attribute [rw] connection
8011
+ # The name of the connection with the unknown source.
8012
+ # @return [String]
8013
+ #
8014
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UnknownConnectionSourceFlowValidationDetails AWS API Documentation
8015
+ #
8016
+ class UnknownConnectionSourceFlowValidationDetails < Struct.new(
8017
+ :connection)
8018
+ SENSITIVE = []
8019
+ include Aws::Structure
8020
+ end
8021
+
8022
+ # Details about an unknown source output for a connection.
8023
+ #
8024
+ # @!attribute [rw] connection
8025
+ # The name of the connection with the unknown source output.
8026
+ # @return [String]
8027
+ #
8028
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UnknownConnectionSourceOutputFlowValidationDetails AWS API Documentation
8029
+ #
8030
+ class UnknownConnectionSourceOutputFlowValidationDetails < Struct.new(
8031
+ :connection)
8032
+ SENSITIVE = []
8033
+ include Aws::Structure
8034
+ end
8035
+
8036
+ # Details about an unknown target node for a connection.
8037
+ #
8038
+ # @!attribute [rw] connection
8039
+ # The name of the connection with the unknown target.
8040
+ # @return [String]
8041
+ #
8042
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UnknownConnectionTargetFlowValidationDetails AWS API Documentation
8043
+ #
8044
+ class UnknownConnectionTargetFlowValidationDetails < Struct.new(
8045
+ :connection)
8046
+ SENSITIVE = []
8047
+ include Aws::Structure
8048
+ end
8049
+
8050
+ # Details about an unknown target input for a connection.
8051
+ #
8052
+ # @!attribute [rw] connection
8053
+ # The name of the connection with the unknown target input.
8054
+ # @return [String]
8055
+ #
8056
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UnknownConnectionTargetInputFlowValidationDetails AWS API Documentation
8057
+ #
8058
+ class UnknownConnectionTargetInputFlowValidationDetails < Struct.new(
8059
+ :connection)
8060
+ SENSITIVE = []
8061
+ include Aws::Structure
8062
+ end
8063
+
8064
+ # Details about an unreachable node in the flow. A node is unreachable
8065
+ # when there are no paths to it from any starting node.
8066
+ #
8067
+ # @!attribute [rw] node
8068
+ # The name of the unreachable node.
8069
+ # @return [String]
8070
+ #
8071
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UnreachableNodeFlowValidationDetails AWS API Documentation
8072
+ #
8073
+ class UnreachableNodeFlowValidationDetails < Struct.new(
8074
+ :node)
8075
+ SENSITIVE = []
8076
+ include Aws::Structure
8077
+ end
8078
+
8079
+ # Details about unsatisfied conditions for a connection. A condition is
8080
+ # unsatisfied if it can never be true, for example two branches of
8081
+ # condition node cannot be simultaneously true.
8082
+ #
8083
+ # @!attribute [rw] connection
8084
+ # The name of the connection with unsatisfied conditions.
8085
+ # @return [String]
8086
+ #
8087
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UnsatisfiedConnectionConditionsFlowValidationDetails AWS API Documentation
8088
+ #
8089
+ class UnsatisfiedConnectionConditionsFlowValidationDetails < Struct.new(
8090
+ :connection)
8091
+ SENSITIVE = []
8092
+ include Aws::Structure
8093
+ end
8094
+
8095
+ # Details about an unspecified validation that doesn't fit other
8096
+ # categories.
8097
+ #
8098
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UnspecifiedFlowValidationDetails AWS API Documentation
8099
+ #
8100
+ class UnspecifiedFlowValidationDetails < Aws::EmptyStructure; end
8101
+
7127
8102
  # @!attribute [rw] resource_arn
7128
8103
  # The Amazon Resource Name (ARN) of the resource from which to remove
7129
8104
  # tags.
@@ -7901,6 +8876,31 @@ module Aws::BedrockAgent
7901
8876
  include Aws::Structure
7902
8877
  end
7903
8878
 
8879
+ # @!attribute [rw] definition
8880
+ # The definition of a flow to validate.
8881
+ # @return [Types::FlowDefinition]
8882
+ #
8883
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ValidateFlowDefinitionRequest AWS API Documentation
8884
+ #
8885
+ class ValidateFlowDefinitionRequest < Struct.new(
8886
+ :definition)
8887
+ SENSITIVE = [:definition]
8888
+ include Aws::Structure
8889
+ end
8890
+
8891
+ # @!attribute [rw] validations
8892
+ # Contains an array of objects, each of which contains an error
8893
+ # identified by validation.
8894
+ # @return [Array<Types::FlowValidation>]
8895
+ #
8896
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ValidateFlowDefinitionResponse AWS API Documentation
8897
+ #
8898
+ class ValidateFlowDefinitionResponse < Struct.new(
8899
+ :validations)
8900
+ SENSITIVE = []
8901
+ include Aws::Structure
8902
+ end
8903
+
7904
8904
  # Input validation failed. Check your request parameters and retry the
7905
8905
  # request.
7906
8906
  #