aws-sdk-bedrockagent 1.17.0 → 1.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -503,9 +503,13 @@ module Aws::BedrockAgent
503
503
  # After this time expires, the subsequent `InvokeAgent` request
504
504
  # begins a new session.
505
505
  #
506
+ # * To enable your agent to retain conversational context across
507
+ # multiple sessions, include a `memoryConfiguration` object. For more
508
+ # information, see [Configure memory][1].
509
+ #
506
510
  # * To override the default prompt behavior for agent orchestration and
507
511
  # to use advanced prompts, include a `promptOverrideConfiguration`
508
- # object. For more information, see [Advanced prompts][1].
512
+ # object. For more information, see [Advanced prompts][2].
509
513
  #
510
514
  # * If you agent fails to be created, the response returns a list of
511
515
  # `failureReasons` alongside a list of `recommendedActions` for you to
@@ -513,7 +517,8 @@ module Aws::BedrockAgent
513
517
  #
514
518
  #
515
519
  #
516
- # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/advanced-prompts.html
520
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/agents-configure-memory.html
521
+ # [2]: https://docs.aws.amazon.com/bedrock/latest/userguide/advanced-prompts.html
517
522
  #
518
523
  # @option params [required, String] :agent_name
519
524
  # A name for the agent that you create.
@@ -562,6 +567,9 @@ module Aws::BedrockAgent
562
567
  # Instructions that tell the agent what it should do and how it should
563
568
  # interact with users.
564
569
  #
570
+ # @option params [Types::MemoryConfiguration] :memory_configuration
571
+ # Contains the details of the memory configured for the agent.
572
+ #
565
573
  # @option params [Types::PromptOverrideConfiguration] :prompt_override_configuration
566
574
  # Contains configurations to override prompts in different parts of an
567
575
  # agent sequence. For more information, see [Advanced prompts][1].
@@ -592,6 +600,10 @@ module Aws::BedrockAgent
592
600
  # },
593
601
  # idle_session_ttl_in_seconds: 1,
594
602
  # instruction: "Instruction",
603
+ # memory_configuration: {
604
+ # enabled_memory_types: ["SESSION_SUMMARY"], # required, accepts SESSION_SUMMARY
605
+ # storage_days: 1,
606
+ # },
595
607
  # prompt_override_configuration: {
596
608
  # override_lambda: "LambdaArn",
597
609
  # prompt_configurations: [ # required
@@ -635,6 +647,9 @@ module Aws::BedrockAgent
635
647
  # resp.agent.guardrail_configuration.guardrail_version #=> String
636
648
  # resp.agent.idle_session_ttl_in_seconds #=> Integer
637
649
  # resp.agent.instruction #=> String
650
+ # resp.agent.memory_configuration.enabled_memory_types #=> Array
651
+ # resp.agent.memory_configuration.enabled_memory_types[0] #=> String, one of "SESSION_SUMMARY"
652
+ # resp.agent.memory_configuration.storage_days #=> Integer
638
653
  # resp.agent.prepared_at #=> Time
639
654
  # resp.agent.prompt_override_configuration.override_lambda #=> String
640
655
  # resp.agent.prompt_override_configuration.prompt_configurations #=> Array
@@ -668,13 +683,18 @@ module Aws::BedrockAgent
668
683
  #
669
684
  # To allow your agent to request the user for additional information
670
685
  # when trying to complete a task, add an action group with the
671
- # `parentActionGroupSignature` field set to `AMAZON.UserInput`. You must
672
- # leave the `description`, `apiSchema`, and `actionGroupExecutor` fields
673
- # blank for this action group. During orchestration, if your agent
674
- # determines that it needs to invoke an API in an action group, but
675
- # doesn't have enough information to complete the API request, it will
676
- # invoke this action group instead and return an [Observation][1]
677
- # reprompting the user for more information.
686
+ # `parentActionGroupSignature` field set to `AMAZON.UserInput`.
687
+ #
688
+ # To allow your agent to generate, run, and troubleshoot code when
689
+ # trying to complete a task, add an action group with the
690
+ # `parentActionGroupSignature` field set to `AMAZON.CodeInterpreter`.
691
+ #
692
+ # You must leave the `description`, `apiSchema`, and
693
+ # `actionGroupExecutor` fields blank for this action group. During
694
+ # orchestration, if your agent determines that it needs to invoke an API
695
+ # in an action group, but doesn't have enough information to complete
696
+ # the API request, it will invoke this action group instead and return
697
+ # an [Observation][1] reprompting the user for more information.
678
698
  #
679
699
  #
680
700
  #
@@ -740,6 +760,11 @@ module Aws::BedrockAgent
740
760
  # You must leave the `description`, `apiSchema`, and
741
761
  # `actionGroupExecutor` fields blank for this action group.
742
762
  #
763
+ # To allow your agent to generate, run, and troubleshoot code when
764
+ # trying to complete a task, set this field to `AMAZON.CodeInterpreter`.
765
+ # You must leave the `description`, `apiSchema`, and
766
+ # `actionGroupExecutor` fields blank for this action group.
767
+ #
743
768
  # During orchestration, if your agent determines that it needs to invoke
744
769
  # an API in an action group, but doesn't have enough information to
745
770
  # complete the API request, it will invoke this action group instead and
@@ -788,7 +813,7 @@ module Aws::BedrockAgent
788
813
  # },
789
814
  # ],
790
815
  # },
791
- # parent_action_group_signature: "AMAZON.UserInput", # accepts AMAZON.UserInput
816
+ # parent_action_group_signature: "AMAZON.UserInput", # accepts AMAZON.UserInput, AMAZON.CodeInterpreter
792
817
  # })
793
818
  #
794
819
  # @example Response structure
@@ -813,7 +838,7 @@ module Aws::BedrockAgent
813
838
  # resp.agent_action_group.function_schema.functions[0].parameters["Name"].description #=> String
814
839
  # resp.agent_action_group.function_schema.functions[0].parameters["Name"].required #=> Boolean
815
840
  # resp.agent_action_group.function_schema.functions[0].parameters["Name"].type #=> String, one of "string", "number", "integer", "boolean", "array"
816
- # resp.agent_action_group.parent_action_signature #=> String, one of "AMAZON.UserInput"
841
+ # resp.agent_action_group.parent_action_signature #=> String, one of "AMAZON.UserInput", "AMAZON.CodeInterpreter"
817
842
  # resp.agent_action_group.updated_at #=> Time
818
843
  #
819
844
  # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreateAgentActionGroup AWS API Documentation
@@ -909,10 +934,10 @@ module Aws::BedrockAgent
909
934
  req.send_request(options)
910
935
  end
911
936
 
912
- # Sets up a data source to be added to a knowledge base.
937
+ # Creates a data source connector for a knowledge base.
913
938
  #
914
939
  # You can't change the `chunkingConfiguration` after you create the
915
- # data source.
940
+ # data source connector.
916
941
  #
917
942
  # @option params [String] :client_token
918
943
  # A unique, case-sensitive identifier to ensure that the API request
@@ -928,10 +953,21 @@ module Aws::BedrockAgent
928
953
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
929
954
  #
930
955
  # @option params [String] :data_deletion_policy
931
- # The data deletion policy assigned to the data source.
956
+ # The data deletion policy for the data source.
957
+ #
958
+ # You can set the data deletion policy to:
959
+ #
960
+ # * DELETE: Deletes all underlying data belonging to the data source
961
+ # from the vector store upon deletion of a knowledge base or data
962
+ # source resource. Note that the vector store itself is not deleted,
963
+ # only the underlying data. This flag is ignored if an Amazon Web
964
+ # Services account is deleted.
965
+ #
966
+ # * RETAIN: Retains all underlying data in your vector store upon
967
+ # deletion of a knowledge base or data source resource.
932
968
  #
933
969
  # @option params [required, Types::DataSourceConfiguration] :data_source_configuration
934
- # Contains metadata about where the data source is stored.
970
+ # The connection configuration for the data source.
935
971
  #
936
972
  # @option params [String] :description
937
973
  # A description of the data source.
@@ -959,12 +995,98 @@ module Aws::BedrockAgent
959
995
  # client_token: "ClientToken",
960
996
  # data_deletion_policy: "RETAIN", # accepts RETAIN, DELETE
961
997
  # data_source_configuration: { # required
998
+ # confluence_configuration: {
999
+ # crawler_configuration: {
1000
+ # filter_configuration: {
1001
+ # pattern_object_filter: {
1002
+ # filters: [ # required
1003
+ # {
1004
+ # exclusion_filters: ["FilterPattern"],
1005
+ # inclusion_filters: ["FilterPattern"],
1006
+ # object_type: "FilteredObjectType", # required
1007
+ # },
1008
+ # ],
1009
+ # },
1010
+ # type: "PATTERN", # required, accepts PATTERN
1011
+ # },
1012
+ # },
1013
+ # source_configuration: { # required
1014
+ # auth_type: "BASIC", # required, accepts BASIC, OAUTH2_CLIENT_CREDENTIALS
1015
+ # credentials_secret_arn: "SecretArn", # required
1016
+ # host_type: "SAAS", # required, accepts SAAS
1017
+ # host_url: "HttpsUrl", # required
1018
+ # },
1019
+ # },
962
1020
  # s3_configuration: {
963
1021
  # bucket_arn: "S3BucketArn", # required
964
1022
  # bucket_owner_account_id: "BucketOwnerAccountId",
965
1023
  # inclusion_prefixes: ["S3Prefix"],
966
1024
  # },
967
- # type: "S3", # required, accepts S3
1025
+ # salesforce_configuration: {
1026
+ # crawler_configuration: {
1027
+ # filter_configuration: {
1028
+ # pattern_object_filter: {
1029
+ # filters: [ # required
1030
+ # {
1031
+ # exclusion_filters: ["FilterPattern"],
1032
+ # inclusion_filters: ["FilterPattern"],
1033
+ # object_type: "FilteredObjectType", # required
1034
+ # },
1035
+ # ],
1036
+ # },
1037
+ # type: "PATTERN", # required, accepts PATTERN
1038
+ # },
1039
+ # },
1040
+ # source_configuration: { # required
1041
+ # auth_type: "OAUTH2_CLIENT_CREDENTIALS", # required, accepts OAUTH2_CLIENT_CREDENTIALS
1042
+ # credentials_secret_arn: "SecretArn", # required
1043
+ # host_url: "HttpsUrl", # required
1044
+ # },
1045
+ # },
1046
+ # share_point_configuration: {
1047
+ # crawler_configuration: {
1048
+ # filter_configuration: {
1049
+ # pattern_object_filter: {
1050
+ # filters: [ # required
1051
+ # {
1052
+ # exclusion_filters: ["FilterPattern"],
1053
+ # inclusion_filters: ["FilterPattern"],
1054
+ # object_type: "FilteredObjectType", # required
1055
+ # },
1056
+ # ],
1057
+ # },
1058
+ # type: "PATTERN", # required, accepts PATTERN
1059
+ # },
1060
+ # },
1061
+ # source_configuration: { # required
1062
+ # auth_type: "OAUTH2_CLIENT_CREDENTIALS", # required, accepts OAUTH2_CLIENT_CREDENTIALS
1063
+ # credentials_secret_arn: "SecretArn", # required
1064
+ # domain: "SharePointDomain", # required
1065
+ # host_type: "ONLINE", # required, accepts ONLINE
1066
+ # site_urls: ["HttpsUrl"], # required
1067
+ # tenant_id: "Microsoft365TenantId",
1068
+ # },
1069
+ # },
1070
+ # type: "S3", # required, accepts S3, WEB, CONFLUENCE, SALESFORCE, SHAREPOINT
1071
+ # web_configuration: {
1072
+ # crawler_configuration: {
1073
+ # crawler_limits: {
1074
+ # rate_limit: 1,
1075
+ # },
1076
+ # exclusion_filters: ["FilterPattern"],
1077
+ # inclusion_filters: ["FilterPattern"],
1078
+ # scope: "HOST_ONLY", # accepts HOST_ONLY, SUBDOMAINS
1079
+ # },
1080
+ # source_configuration: { # required
1081
+ # url_configuration: { # required
1082
+ # seed_urls: [
1083
+ # {
1084
+ # url: "Url",
1085
+ # },
1086
+ # ],
1087
+ # },
1088
+ # },
1089
+ # },
968
1090
  # },
969
1091
  # description: "Description",
970
1092
  # knowledge_base_id: "Id", # required
@@ -974,11 +1096,50 @@ module Aws::BedrockAgent
974
1096
  # },
975
1097
  # vector_ingestion_configuration: {
976
1098
  # chunking_configuration: {
977
- # chunking_strategy: "FIXED_SIZE", # required, accepts FIXED_SIZE, NONE
1099
+ # chunking_strategy: "FIXED_SIZE", # required, accepts FIXED_SIZE, NONE, HIERARCHICAL, SEMANTIC
978
1100
  # fixed_size_chunking_configuration: {
979
1101
  # max_tokens: 1, # required
980
1102
  # overlap_percentage: 1, # required
981
1103
  # },
1104
+ # hierarchical_chunking_configuration: {
1105
+ # level_configurations: [ # required
1106
+ # {
1107
+ # max_tokens: 1, # required
1108
+ # },
1109
+ # ],
1110
+ # overlap_tokens: 1, # required
1111
+ # },
1112
+ # semantic_chunking_configuration: {
1113
+ # breakpoint_percentile_threshold: 1, # required
1114
+ # buffer_size: 1, # required
1115
+ # max_tokens: 1, # required
1116
+ # },
1117
+ # },
1118
+ # custom_transformation_configuration: {
1119
+ # intermediate_storage: { # required
1120
+ # s3_location: { # required
1121
+ # uri: "S3BucketUri", # required
1122
+ # },
1123
+ # },
1124
+ # transformations: [ # required
1125
+ # {
1126
+ # step_to_apply: "POST_CHUNKING", # required, accepts POST_CHUNKING
1127
+ # transformation_function: { # required
1128
+ # transformation_lambda_configuration: { # required
1129
+ # lambda_arn: "LambdaArn", # required
1130
+ # },
1131
+ # },
1132
+ # },
1133
+ # ],
1134
+ # },
1135
+ # parsing_configuration: {
1136
+ # bedrock_foundation_model_configuration: {
1137
+ # model_arn: "BedrockModelArn", # required
1138
+ # parsing_prompt: {
1139
+ # parsing_prompt_text: "ParsingPromptText", # required
1140
+ # },
1141
+ # },
1142
+ # parsing_strategy: "BEDROCK_FOUNDATION_MODEL", # required, accepts BEDROCK_FOUNDATION_MODEL
982
1143
  # },
983
1144
  # },
984
1145
  # })
@@ -987,11 +1148,54 @@ module Aws::BedrockAgent
987
1148
  #
988
1149
  # resp.data_source.created_at #=> Time
989
1150
  # resp.data_source.data_deletion_policy #=> String, one of "RETAIN", "DELETE"
1151
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters #=> Array
1152
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters #=> Array
1153
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters[0] #=> String
1154
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters #=> Array
1155
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters[0] #=> String
1156
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].object_type #=> String
1157
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.type #=> String, one of "PATTERN"
1158
+ # resp.data_source.data_source_configuration.confluence_configuration.source_configuration.auth_type #=> String, one of "BASIC", "OAUTH2_CLIENT_CREDENTIALS"
1159
+ # resp.data_source.data_source_configuration.confluence_configuration.source_configuration.credentials_secret_arn #=> String
1160
+ # resp.data_source.data_source_configuration.confluence_configuration.source_configuration.host_type #=> String, one of "SAAS"
1161
+ # resp.data_source.data_source_configuration.confluence_configuration.source_configuration.host_url #=> String
990
1162
  # resp.data_source.data_source_configuration.s3_configuration.bucket_arn #=> String
991
1163
  # resp.data_source.data_source_configuration.s3_configuration.bucket_owner_account_id #=> String
992
1164
  # resp.data_source.data_source_configuration.s3_configuration.inclusion_prefixes #=> Array
993
1165
  # resp.data_source.data_source_configuration.s3_configuration.inclusion_prefixes[0] #=> String
994
- # resp.data_source.data_source_configuration.type #=> String, one of "S3"
1166
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters #=> Array
1167
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters #=> Array
1168
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters[0] #=> String
1169
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters #=> Array
1170
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters[0] #=> String
1171
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].object_type #=> String
1172
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.type #=> String, one of "PATTERN"
1173
+ # resp.data_source.data_source_configuration.salesforce_configuration.source_configuration.auth_type #=> String, one of "OAUTH2_CLIENT_CREDENTIALS"
1174
+ # resp.data_source.data_source_configuration.salesforce_configuration.source_configuration.credentials_secret_arn #=> String
1175
+ # resp.data_source.data_source_configuration.salesforce_configuration.source_configuration.host_url #=> String
1176
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters #=> Array
1177
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters #=> Array
1178
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters[0] #=> String
1179
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters #=> Array
1180
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters[0] #=> String
1181
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].object_type #=> String
1182
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.type #=> String, one of "PATTERN"
1183
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.auth_type #=> String, one of "OAUTH2_CLIENT_CREDENTIALS"
1184
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.credentials_secret_arn #=> String
1185
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.domain #=> String
1186
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.host_type #=> String, one of "ONLINE"
1187
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.site_urls #=> Array
1188
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.site_urls[0] #=> String
1189
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.tenant_id #=> String
1190
+ # resp.data_source.data_source_configuration.type #=> String, one of "S3", "WEB", "CONFLUENCE", "SALESFORCE", "SHAREPOINT"
1191
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.crawler_limits.rate_limit #=> Integer
1192
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.exclusion_filters #=> Array
1193
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.exclusion_filters[0] #=> String
1194
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.inclusion_filters #=> Array
1195
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.inclusion_filters[0] #=> String
1196
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.scope #=> String, one of "HOST_ONLY", "SUBDOMAINS"
1197
+ # resp.data_source.data_source_configuration.web_configuration.source_configuration.url_configuration.seed_urls #=> Array
1198
+ # resp.data_source.data_source_configuration.web_configuration.source_configuration.url_configuration.seed_urls[0].url #=> String
995
1199
  # resp.data_source.data_source_id #=> String
996
1200
  # resp.data_source.description #=> String
997
1201
  # resp.data_source.failure_reasons #=> Array
@@ -1001,9 +1205,22 @@ module Aws::BedrockAgent
1001
1205
  # resp.data_source.server_side_encryption_configuration.kms_key_arn #=> String
1002
1206
  # resp.data_source.status #=> String, one of "AVAILABLE", "DELETING", "DELETE_UNSUCCESSFUL"
1003
1207
  # resp.data_source.updated_at #=> Time
1004
- # resp.data_source.vector_ingestion_configuration.chunking_configuration.chunking_strategy #=> String, one of "FIXED_SIZE", "NONE"
1208
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.chunking_strategy #=> String, one of "FIXED_SIZE", "NONE", "HIERARCHICAL", "SEMANTIC"
1005
1209
  # resp.data_source.vector_ingestion_configuration.chunking_configuration.fixed_size_chunking_configuration.max_tokens #=> Integer
1006
1210
  # resp.data_source.vector_ingestion_configuration.chunking_configuration.fixed_size_chunking_configuration.overlap_percentage #=> Integer
1211
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.level_configurations #=> Array
1212
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.level_configurations[0].max_tokens #=> Integer
1213
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.overlap_tokens #=> Integer
1214
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.breakpoint_percentile_threshold #=> Integer
1215
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.buffer_size #=> Integer
1216
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.max_tokens #=> Integer
1217
+ # resp.data_source.vector_ingestion_configuration.custom_transformation_configuration.intermediate_storage.s3_location.uri #=> String
1218
+ # resp.data_source.vector_ingestion_configuration.custom_transformation_configuration.transformations #=> Array
1219
+ # resp.data_source.vector_ingestion_configuration.custom_transformation_configuration.transformations[0].step_to_apply #=> String, one of "POST_CHUNKING"
1220
+ # resp.data_source.vector_ingestion_configuration.custom_transformation_configuration.transformations[0].transformation_function.transformation_lambda_configuration.lambda_arn #=> String
1221
+ # resp.data_source.vector_ingestion_configuration.parsing_configuration.bedrock_foundation_model_configuration.model_arn #=> String
1222
+ # resp.data_source.vector_ingestion_configuration.parsing_configuration.bedrock_foundation_model_configuration.parsing_prompt.parsing_prompt_text #=> String
1223
+ # resp.data_source.vector_ingestion_configuration.parsing_configuration.parsing_strategy #=> String, one of "BEDROCK_FOUNDATION_MODEL"
1007
1224
  #
1008
1225
  # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreateDataSource AWS API Documentation
1009
1226
  #
@@ -1014,6 +1231,464 @@ module Aws::BedrockAgent
1014
1231
  req.send_request(options)
1015
1232
  end
1016
1233
 
1234
+ # Creates a prompt flow that you can use to send an input through
1235
+ # various steps to yield an output. Configure nodes, each of which
1236
+ # corresponds to a step of the flow, and create connections between the
1237
+ # nodes to create paths to different outputs. For more information, see
1238
+ # [How it works][1] and [Create a flow in Amazon Bedrock][2] in the
1239
+ # Amazon Bedrock User Guide.
1240
+ #
1241
+ #
1242
+ #
1243
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-how-it-works.html
1244
+ # [2]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-create.html
1245
+ #
1246
+ # @option params [String] :client_token
1247
+ # A unique, case-sensitive identifier to ensure that the API request
1248
+ # completes no more than one time. If this token matches a previous
1249
+ # request, Amazon Bedrock ignores the request, but does not return an
1250
+ # error. For more information, see [Ensuring idempotency][1].
1251
+ #
1252
+ # **A suitable default value is auto-generated.** You should normally
1253
+ # not need to pass this option.**
1254
+ #
1255
+ #
1256
+ #
1257
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
1258
+ #
1259
+ # @option params [String] :customer_encryption_key_arn
1260
+ # The Amazon Resource Name (ARN) of the KMS key to encrypt the flow.
1261
+ #
1262
+ # @option params [Types::FlowDefinition] :definition
1263
+ # A definition of the nodes and connections between nodes in the flow.
1264
+ #
1265
+ # @option params [String] :description
1266
+ # A description for the flow.
1267
+ #
1268
+ # @option params [required, String] :execution_role_arn
1269
+ # The Amazon Resource Name (ARN) of the service role with permissions to
1270
+ # create and manage a flow. For more information, see [Create a service
1271
+ # role for flows in Amazon Bedrock][1] in the Amazon Bedrock User Guide.
1272
+ #
1273
+ #
1274
+ #
1275
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html
1276
+ #
1277
+ # @option params [required, String] :name
1278
+ # A name for the flow.
1279
+ #
1280
+ # @option params [Hash<String,String>] :tags
1281
+ # Any tags that you want to attach to the flow. For more information,
1282
+ # see [Tagging resources in Amazon Bedrock][1].
1283
+ #
1284
+ #
1285
+ #
1286
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/tagging.html
1287
+ #
1288
+ # @return [Types::CreateFlowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1289
+ #
1290
+ # * {Types::CreateFlowResponse#arn #arn} => String
1291
+ # * {Types::CreateFlowResponse#created_at #created_at} => Time
1292
+ # * {Types::CreateFlowResponse#customer_encryption_key_arn #customer_encryption_key_arn} => String
1293
+ # * {Types::CreateFlowResponse#definition #definition} => Types::FlowDefinition
1294
+ # * {Types::CreateFlowResponse#description #description} => String
1295
+ # * {Types::CreateFlowResponse#execution_role_arn #execution_role_arn} => String
1296
+ # * {Types::CreateFlowResponse#id #id} => String
1297
+ # * {Types::CreateFlowResponse#name #name} => String
1298
+ # * {Types::CreateFlowResponse#status #status} => String
1299
+ # * {Types::CreateFlowResponse#updated_at #updated_at} => Time
1300
+ # * {Types::CreateFlowResponse#version #version} => String
1301
+ #
1302
+ # @example Request syntax with placeholder values
1303
+ #
1304
+ # resp = client.create_flow({
1305
+ # client_token: "ClientToken",
1306
+ # customer_encryption_key_arn: "KmsKeyArn",
1307
+ # definition: {
1308
+ # connections: [
1309
+ # {
1310
+ # configuration: {
1311
+ # conditional: {
1312
+ # condition: "FlowConditionName", # required
1313
+ # },
1314
+ # data: {
1315
+ # source_output: "FlowNodeOutputName", # required
1316
+ # target_input: "FlowNodeInputName", # required
1317
+ # },
1318
+ # },
1319
+ # name: "FlowConnectionName", # required
1320
+ # source: "FlowNodeName", # required
1321
+ # target: "FlowNodeName", # required
1322
+ # type: "Data", # required, accepts Data, Conditional
1323
+ # },
1324
+ # ],
1325
+ # nodes: [
1326
+ # {
1327
+ # configuration: {
1328
+ # agent: {
1329
+ # agent_alias_arn: "AgentAliasArn", # required
1330
+ # },
1331
+ # collector: {
1332
+ # },
1333
+ # condition: {
1334
+ # conditions: [ # required
1335
+ # {
1336
+ # expression: "FlowConditionExpression",
1337
+ # name: "FlowConditionName", # required
1338
+ # },
1339
+ # ],
1340
+ # },
1341
+ # input: {
1342
+ # },
1343
+ # iterator: {
1344
+ # },
1345
+ # knowledge_base: {
1346
+ # knowledge_base_id: "KnowledgeBaseId", # required
1347
+ # model_id: "ModelIdentifier",
1348
+ # },
1349
+ # lambda_function: {
1350
+ # lambda_arn: "LambdaArn", # required
1351
+ # },
1352
+ # lex: {
1353
+ # bot_alias_arn: "LexBotAliasArn", # required
1354
+ # locale_id: "LexBotLocaleId", # required
1355
+ # },
1356
+ # output: {
1357
+ # },
1358
+ # prompt: {
1359
+ # source_configuration: { # required
1360
+ # inline: {
1361
+ # inference_configuration: {
1362
+ # text: {
1363
+ # max_tokens: 1,
1364
+ # stop_sequences: ["String"],
1365
+ # temperature: 1.0,
1366
+ # top_k: 1,
1367
+ # top_p: 1.0,
1368
+ # },
1369
+ # },
1370
+ # model_id: "PromptModelIdentifier", # required
1371
+ # template_configuration: { # required
1372
+ # text: {
1373
+ # input_variables: [
1374
+ # {
1375
+ # name: "PromptInputVariableName",
1376
+ # },
1377
+ # ],
1378
+ # text: "TextPrompt", # required
1379
+ # },
1380
+ # },
1381
+ # template_type: "TEXT", # required, accepts TEXT
1382
+ # },
1383
+ # resource: {
1384
+ # prompt_arn: "PromptArn", # required
1385
+ # },
1386
+ # },
1387
+ # },
1388
+ # retrieval: {
1389
+ # service_configuration: { # required
1390
+ # s3: {
1391
+ # bucket_name: "S3BucketName", # required
1392
+ # },
1393
+ # },
1394
+ # },
1395
+ # storage: {
1396
+ # service_configuration: { # required
1397
+ # s3: {
1398
+ # bucket_name: "S3BucketName", # required
1399
+ # },
1400
+ # },
1401
+ # },
1402
+ # },
1403
+ # inputs: [
1404
+ # {
1405
+ # expression: "FlowNodeInputExpression", # required
1406
+ # name: "FlowNodeInputName", # required
1407
+ # type: "String", # required, accepts String, Number, Boolean, Object, Array
1408
+ # },
1409
+ # ],
1410
+ # name: "FlowNodeName", # required
1411
+ # outputs: [
1412
+ # {
1413
+ # name: "FlowNodeOutputName", # required
1414
+ # type: "String", # required, accepts String, Number, Boolean, Object, Array
1415
+ # },
1416
+ # ],
1417
+ # type: "Input", # required, accepts Input, Output, KnowledgeBase, Condition, Lex, Prompt, LambdaFunction, Storage, Agent, Retrieval, Iterator, Collector
1418
+ # },
1419
+ # ],
1420
+ # },
1421
+ # description: "FlowDescription",
1422
+ # execution_role_arn: "FlowExecutionRoleArn", # required
1423
+ # name: "FlowName", # required
1424
+ # tags: {
1425
+ # "TagKey" => "TagValue",
1426
+ # },
1427
+ # })
1428
+ #
1429
+ # @example Response structure
1430
+ #
1431
+ # resp.arn #=> String
1432
+ # resp.created_at #=> Time
1433
+ # resp.customer_encryption_key_arn #=> String
1434
+ # resp.definition.connections #=> Array
1435
+ # resp.definition.connections[0].configuration.conditional.condition #=> String
1436
+ # resp.definition.connections[0].configuration.data.source_output #=> String
1437
+ # resp.definition.connections[0].configuration.data.target_input #=> String
1438
+ # resp.definition.connections[0].name #=> String
1439
+ # resp.definition.connections[0].source #=> String
1440
+ # resp.definition.connections[0].target #=> String
1441
+ # resp.definition.connections[0].type #=> String, one of "Data", "Conditional"
1442
+ # resp.definition.nodes #=> Array
1443
+ # resp.definition.nodes[0].configuration.agent.agent_alias_arn #=> String
1444
+ # resp.definition.nodes[0].configuration.condition.conditions #=> Array
1445
+ # resp.definition.nodes[0].configuration.condition.conditions[0].expression #=> String
1446
+ # resp.definition.nodes[0].configuration.condition.conditions[0].name #=> String
1447
+ # resp.definition.nodes[0].configuration.knowledge_base.knowledge_base_id #=> String
1448
+ # resp.definition.nodes[0].configuration.knowledge_base.model_id #=> String
1449
+ # resp.definition.nodes[0].configuration.lambda_function.lambda_arn #=> String
1450
+ # resp.definition.nodes[0].configuration.lex.bot_alias_arn #=> String
1451
+ # resp.definition.nodes[0].configuration.lex.locale_id #=> String
1452
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.max_tokens #=> Integer
1453
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.stop_sequences #=> Array
1454
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.stop_sequences[0] #=> String
1455
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.temperature #=> Float
1456
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.top_k #=> Integer
1457
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.top_p #=> Float
1458
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.model_id #=> String
1459
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_configuration.text.input_variables #=> Array
1460
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_configuration.text.input_variables[0].name #=> String
1461
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_configuration.text.text #=> String
1462
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_type #=> String, one of "TEXT"
1463
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.resource.prompt_arn #=> String
1464
+ # resp.definition.nodes[0].configuration.retrieval.service_configuration.s3.bucket_name #=> String
1465
+ # resp.definition.nodes[0].configuration.storage.service_configuration.s3.bucket_name #=> String
1466
+ # resp.definition.nodes[0].inputs #=> Array
1467
+ # resp.definition.nodes[0].inputs[0].expression #=> String
1468
+ # resp.definition.nodes[0].inputs[0].name #=> String
1469
+ # resp.definition.nodes[0].inputs[0].type #=> String, one of "String", "Number", "Boolean", "Object", "Array"
1470
+ # resp.definition.nodes[0].name #=> String
1471
+ # resp.definition.nodes[0].outputs #=> Array
1472
+ # resp.definition.nodes[0].outputs[0].name #=> String
1473
+ # resp.definition.nodes[0].outputs[0].type #=> String, one of "String", "Number", "Boolean", "Object", "Array"
1474
+ # resp.definition.nodes[0].type #=> String, one of "Input", "Output", "KnowledgeBase", "Condition", "Lex", "Prompt", "LambdaFunction", "Storage", "Agent", "Retrieval", "Iterator", "Collector"
1475
+ # resp.description #=> String
1476
+ # resp.execution_role_arn #=> String
1477
+ # resp.id #=> String
1478
+ # resp.name #=> String
1479
+ # resp.status #=> String, one of "Failed", "Prepared", "Preparing", "NotPrepared"
1480
+ # resp.updated_at #=> Time
1481
+ # resp.version #=> String
1482
+ #
1483
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreateFlow AWS API Documentation
1484
+ #
1485
+ # @overload create_flow(params = {})
1486
+ # @param [Hash] params ({})
1487
+ def create_flow(params = {}, options = {})
1488
+ req = build_request(:create_flow, params)
1489
+ req.send_request(options)
1490
+ end
1491
+
1492
+ # Creates an alias of a flow for deployment. For more information, see
1493
+ # [Deploy a flow in Amazon Bedrock][1] in the Amazon Bedrock User Guide.
1494
+ #
1495
+ #
1496
+ #
1497
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-deploy.html
1498
+ #
1499
+ # @option params [String] :client_token
1500
+ # A unique, case-sensitive identifier to ensure that the API request
1501
+ # completes no more than one time. If this token matches a previous
1502
+ # request, Amazon Bedrock ignores the request, but does not return an
1503
+ # error. For more information, see [Ensuring idempotency][1].
1504
+ #
1505
+ # **A suitable default value is auto-generated.** You should normally
1506
+ # not need to pass this option.**
1507
+ #
1508
+ #
1509
+ #
1510
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
1511
+ #
1512
+ # @option params [String] :description
1513
+ # A description for the alias.
1514
+ #
1515
+ # @option params [required, String] :flow_identifier
1516
+ # The unique identifier of the flow for which to create an alias.
1517
+ #
1518
+ # @option params [required, String] :name
1519
+ # A name for the alias.
1520
+ #
1521
+ # @option params [required, Array<Types::FlowAliasRoutingConfigurationListItem>] :routing_configuration
1522
+ # Contains information about the version to which to map the alias.
1523
+ #
1524
+ # @option params [Hash<String,String>] :tags
1525
+ # Any tags that you want to attach to the alias of the flow. For more
1526
+ # information, see [Tagging resources in Amazon Bedrock][1].
1527
+ #
1528
+ #
1529
+ #
1530
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/tagging.html
1531
+ #
1532
+ # @return [Types::CreateFlowAliasResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1533
+ #
1534
+ # * {Types::CreateFlowAliasResponse#arn #arn} => String
1535
+ # * {Types::CreateFlowAliasResponse#created_at #created_at} => Time
1536
+ # * {Types::CreateFlowAliasResponse#description #description} => String
1537
+ # * {Types::CreateFlowAliasResponse#flow_id #flow_id} => String
1538
+ # * {Types::CreateFlowAliasResponse#id #id} => String
1539
+ # * {Types::CreateFlowAliasResponse#name #name} => String
1540
+ # * {Types::CreateFlowAliasResponse#routing_configuration #routing_configuration} => Array&lt;Types::FlowAliasRoutingConfigurationListItem&gt;
1541
+ # * {Types::CreateFlowAliasResponse#updated_at #updated_at} => Time
1542
+ #
1543
+ # @example Request syntax with placeholder values
1544
+ #
1545
+ # resp = client.create_flow_alias({
1546
+ # client_token: "ClientToken",
1547
+ # description: "Description",
1548
+ # flow_identifier: "FlowIdentifier", # required
1549
+ # name: "Name", # required
1550
+ # routing_configuration: [ # required
1551
+ # {
1552
+ # flow_version: "Version",
1553
+ # },
1554
+ # ],
1555
+ # tags: {
1556
+ # "TagKey" => "TagValue",
1557
+ # },
1558
+ # })
1559
+ #
1560
+ # @example Response structure
1561
+ #
1562
+ # resp.arn #=> String
1563
+ # resp.created_at #=> Time
1564
+ # resp.description #=> String
1565
+ # resp.flow_id #=> String
1566
+ # resp.id #=> String
1567
+ # resp.name #=> String
1568
+ # resp.routing_configuration #=> Array
1569
+ # resp.routing_configuration[0].flow_version #=> String
1570
+ # resp.updated_at #=> Time
1571
+ #
1572
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreateFlowAlias AWS API Documentation
1573
+ #
1574
+ # @overload create_flow_alias(params = {})
1575
+ # @param [Hash] params ({})
1576
+ def create_flow_alias(params = {}, options = {})
1577
+ req = build_request(:create_flow_alias, params)
1578
+ req.send_request(options)
1579
+ end
1580
+
1581
+ # Creates a version of the flow that you can deploy. For more
1582
+ # information, see [Deploy a flow in Amazon Bedrock][1] in the Amazon
1583
+ # Bedrock User Guide.
1584
+ #
1585
+ #
1586
+ #
1587
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-deploy.html
1588
+ #
1589
+ # @option params [String] :client_token
1590
+ # A unique, case-sensitive identifier to ensure that the API request
1591
+ # completes no more than one time. If this token matches a previous
1592
+ # request, Amazon Bedrock ignores the request, but does not return an
1593
+ # error. For more information, see [Ensuring idempotency][1].
1594
+ #
1595
+ # **A suitable default value is auto-generated.** You should normally
1596
+ # not need to pass this option.**
1597
+ #
1598
+ #
1599
+ #
1600
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
1601
+ #
1602
+ # @option params [String] :description
1603
+ # A description of the version of the flow.
1604
+ #
1605
+ # @option params [required, String] :flow_identifier
1606
+ # The unique identifier of the flow that you want to create a version
1607
+ # of.
1608
+ #
1609
+ # @return [Types::CreateFlowVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1610
+ #
1611
+ # * {Types::CreateFlowVersionResponse#arn #arn} => String
1612
+ # * {Types::CreateFlowVersionResponse#created_at #created_at} => Time
1613
+ # * {Types::CreateFlowVersionResponse#customer_encryption_key_arn #customer_encryption_key_arn} => String
1614
+ # * {Types::CreateFlowVersionResponse#definition #definition} => Types::FlowDefinition
1615
+ # * {Types::CreateFlowVersionResponse#description #description} => String
1616
+ # * {Types::CreateFlowVersionResponse#execution_role_arn #execution_role_arn} => String
1617
+ # * {Types::CreateFlowVersionResponse#id #id} => String
1618
+ # * {Types::CreateFlowVersionResponse#name #name} => String
1619
+ # * {Types::CreateFlowVersionResponse#status #status} => String
1620
+ # * {Types::CreateFlowVersionResponse#version #version} => String
1621
+ #
1622
+ # @example Request syntax with placeholder values
1623
+ #
1624
+ # resp = client.create_flow_version({
1625
+ # client_token: "ClientToken",
1626
+ # description: "FlowDescription",
1627
+ # flow_identifier: "FlowIdentifier", # required
1628
+ # })
1629
+ #
1630
+ # @example Response structure
1631
+ #
1632
+ # resp.arn #=> String
1633
+ # resp.created_at #=> Time
1634
+ # resp.customer_encryption_key_arn #=> String
1635
+ # resp.definition.connections #=> Array
1636
+ # resp.definition.connections[0].configuration.conditional.condition #=> String
1637
+ # resp.definition.connections[0].configuration.data.source_output #=> String
1638
+ # resp.definition.connections[0].configuration.data.target_input #=> String
1639
+ # resp.definition.connections[0].name #=> String
1640
+ # resp.definition.connections[0].source #=> String
1641
+ # resp.definition.connections[0].target #=> String
1642
+ # resp.definition.connections[0].type #=> String, one of "Data", "Conditional"
1643
+ # resp.definition.nodes #=> Array
1644
+ # resp.definition.nodes[0].configuration.agent.agent_alias_arn #=> String
1645
+ # resp.definition.nodes[0].configuration.condition.conditions #=> Array
1646
+ # resp.definition.nodes[0].configuration.condition.conditions[0].expression #=> String
1647
+ # resp.definition.nodes[0].configuration.condition.conditions[0].name #=> String
1648
+ # resp.definition.nodes[0].configuration.knowledge_base.knowledge_base_id #=> String
1649
+ # resp.definition.nodes[0].configuration.knowledge_base.model_id #=> String
1650
+ # resp.definition.nodes[0].configuration.lambda_function.lambda_arn #=> String
1651
+ # resp.definition.nodes[0].configuration.lex.bot_alias_arn #=> String
1652
+ # resp.definition.nodes[0].configuration.lex.locale_id #=> String
1653
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.max_tokens #=> Integer
1654
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.stop_sequences #=> Array
1655
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.stop_sequences[0] #=> String
1656
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.temperature #=> Float
1657
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.top_k #=> Integer
1658
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.top_p #=> Float
1659
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.model_id #=> String
1660
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_configuration.text.input_variables #=> Array
1661
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_configuration.text.input_variables[0].name #=> String
1662
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_configuration.text.text #=> String
1663
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_type #=> String, one of "TEXT"
1664
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.resource.prompt_arn #=> String
1665
+ # resp.definition.nodes[0].configuration.retrieval.service_configuration.s3.bucket_name #=> String
1666
+ # resp.definition.nodes[0].configuration.storage.service_configuration.s3.bucket_name #=> String
1667
+ # resp.definition.nodes[0].inputs #=> Array
1668
+ # resp.definition.nodes[0].inputs[0].expression #=> String
1669
+ # resp.definition.nodes[0].inputs[0].name #=> String
1670
+ # resp.definition.nodes[0].inputs[0].type #=> String, one of "String", "Number", "Boolean", "Object", "Array"
1671
+ # resp.definition.nodes[0].name #=> String
1672
+ # resp.definition.nodes[0].outputs #=> Array
1673
+ # resp.definition.nodes[0].outputs[0].name #=> String
1674
+ # resp.definition.nodes[0].outputs[0].type #=> String, one of "String", "Number", "Boolean", "Object", "Array"
1675
+ # resp.definition.nodes[0].type #=> String, one of "Input", "Output", "KnowledgeBase", "Condition", "Lex", "Prompt", "LambdaFunction", "Storage", "Agent", "Retrieval", "Iterator", "Collector"
1676
+ # resp.description #=> String
1677
+ # resp.execution_role_arn #=> String
1678
+ # resp.id #=> String
1679
+ # resp.name #=> String
1680
+ # resp.status #=> String, one of "Failed", "Prepared", "Preparing", "NotPrepared"
1681
+ # resp.version #=> String
1682
+ #
1683
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreateFlowVersion AWS API Documentation
1684
+ #
1685
+ # @overload create_flow_version(params = {})
1686
+ # @param [Hash] params ({})
1687
+ def create_flow_version(params = {}, options = {})
1688
+ req = build_request(:create_flow_version, params)
1689
+ req.send_request(options)
1690
+ end
1691
+
1017
1692
  # Creates a knowledge base that contains data sources from which
1018
1693
  # information can be queried and used by LLMs. To create a knowledge
1019
1694
  # base, you must first set up your data sources and configure a
@@ -1238,6 +1913,239 @@ module Aws::BedrockAgent
1238
1913
  req.send_request(options)
1239
1914
  end
1240
1915
 
1916
+ # Creates a prompt in your prompt library that you can add to a flow.
1917
+ # For more information, see [Prompt management in Amazon Bedrock][1],
1918
+ # [Create a prompt using Prompt management][2] and [Prompt flows in
1919
+ # Amazon Bedrock][3] in the Amazon Bedrock User Guide.
1920
+ #
1921
+ #
1922
+ #
1923
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html
1924
+ # [2]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html
1925
+ # [3]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows.html
1926
+ #
1927
+ # @option params [String] :client_token
1928
+ # A unique, case-sensitive identifier to ensure that the API request
1929
+ # completes no more than one time. If this token matches a previous
1930
+ # request, Amazon Bedrock ignores the request, but does not return an
1931
+ # error. For more information, see [Ensuring idempotency][1].
1932
+ #
1933
+ # **A suitable default value is auto-generated.** You should normally
1934
+ # not need to pass this option.**
1935
+ #
1936
+ #
1937
+ #
1938
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
1939
+ #
1940
+ # @option params [String] :customer_encryption_key_arn
1941
+ # The Amazon Resource Name (ARN) of the KMS key to encrypt the prompt.
1942
+ #
1943
+ # @option params [String] :default_variant
1944
+ # The name of the default variant for the prompt. This value must match
1945
+ # the `name` field in the relevant [PromptVariant][1] object.
1946
+ #
1947
+ #
1948
+ #
1949
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PromptVariant.html
1950
+ #
1951
+ # @option params [String] :description
1952
+ # A description for the prompt.
1953
+ #
1954
+ # @option params [required, String] :name
1955
+ # A name for the prompt.
1956
+ #
1957
+ # @option params [Hash<String,String>] :tags
1958
+ # Any tags that you want to attach to the prompt. For more information,
1959
+ # see [Tagging resources in Amazon Bedrock][1].
1960
+ #
1961
+ #
1962
+ #
1963
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/tagging.html
1964
+ #
1965
+ # @option params [Array<Types::PromptVariant>] :variants
1966
+ # A list of objects, each containing details about a variant of the
1967
+ # prompt.
1968
+ #
1969
+ # @return [Types::CreatePromptResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1970
+ #
1971
+ # * {Types::CreatePromptResponse#arn #arn} => String
1972
+ # * {Types::CreatePromptResponse#created_at #created_at} => Time
1973
+ # * {Types::CreatePromptResponse#customer_encryption_key_arn #customer_encryption_key_arn} => String
1974
+ # * {Types::CreatePromptResponse#default_variant #default_variant} => String
1975
+ # * {Types::CreatePromptResponse#description #description} => String
1976
+ # * {Types::CreatePromptResponse#id #id} => String
1977
+ # * {Types::CreatePromptResponse#name #name} => String
1978
+ # * {Types::CreatePromptResponse#updated_at #updated_at} => Time
1979
+ # * {Types::CreatePromptResponse#variants #variants} => Array&lt;Types::PromptVariant&gt;
1980
+ # * {Types::CreatePromptResponse#version #version} => String
1981
+ #
1982
+ # @example Request syntax with placeholder values
1983
+ #
1984
+ # resp = client.create_prompt({
1985
+ # client_token: "ClientToken",
1986
+ # customer_encryption_key_arn: "KmsKeyArn",
1987
+ # default_variant: "PromptVariantName",
1988
+ # description: "PromptDescription",
1989
+ # name: "PromptName", # required
1990
+ # tags: {
1991
+ # "TagKey" => "TagValue",
1992
+ # },
1993
+ # variants: [
1994
+ # {
1995
+ # inference_configuration: {
1996
+ # text: {
1997
+ # max_tokens: 1,
1998
+ # stop_sequences: ["String"],
1999
+ # temperature: 1.0,
2000
+ # top_k: 1,
2001
+ # top_p: 1.0,
2002
+ # },
2003
+ # },
2004
+ # model_id: "PromptModelIdentifier",
2005
+ # name: "PromptVariantName", # required
2006
+ # template_configuration: {
2007
+ # text: {
2008
+ # input_variables: [
2009
+ # {
2010
+ # name: "PromptInputVariableName",
2011
+ # },
2012
+ # ],
2013
+ # text: "TextPrompt", # required
2014
+ # },
2015
+ # },
2016
+ # template_type: "TEXT", # required, accepts TEXT
2017
+ # },
2018
+ # ],
2019
+ # })
2020
+ #
2021
+ # @example Response structure
2022
+ #
2023
+ # resp.arn #=> String
2024
+ # resp.created_at #=> Time
2025
+ # resp.customer_encryption_key_arn #=> String
2026
+ # resp.default_variant #=> String
2027
+ # resp.description #=> String
2028
+ # resp.id #=> String
2029
+ # resp.name #=> String
2030
+ # resp.updated_at #=> Time
2031
+ # resp.variants #=> Array
2032
+ # resp.variants[0].inference_configuration.text.max_tokens #=> Integer
2033
+ # resp.variants[0].inference_configuration.text.stop_sequences #=> Array
2034
+ # resp.variants[0].inference_configuration.text.stop_sequences[0] #=> String
2035
+ # resp.variants[0].inference_configuration.text.temperature #=> Float
2036
+ # resp.variants[0].inference_configuration.text.top_k #=> Integer
2037
+ # resp.variants[0].inference_configuration.text.top_p #=> Float
2038
+ # resp.variants[0].model_id #=> String
2039
+ # resp.variants[0].name #=> String
2040
+ # resp.variants[0].template_configuration.text.input_variables #=> Array
2041
+ # resp.variants[0].template_configuration.text.input_variables[0].name #=> String
2042
+ # resp.variants[0].template_configuration.text.text #=> String
2043
+ # resp.variants[0].template_type #=> String, one of "TEXT"
2044
+ # resp.version #=> String
2045
+ #
2046
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreatePrompt AWS API Documentation
2047
+ #
2048
+ # @overload create_prompt(params = {})
2049
+ # @param [Hash] params ({})
2050
+ def create_prompt(params = {}, options = {})
2051
+ req = build_request(:create_prompt, params)
2052
+ req.send_request(options)
2053
+ end
2054
+
2055
+ # Creates a static snapshot of your prompt that can be deployed to
2056
+ # production. For more information, see [Deploy prompts using Prompt
2057
+ # management by creating versions][1] in the Amazon Bedrock User Guide.
2058
+ #
2059
+ #
2060
+ #
2061
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-deploy.html
2062
+ #
2063
+ # @option params [String] :client_token
2064
+ # A unique, case-sensitive identifier to ensure that the API request
2065
+ # completes no more than one time. If this token matches a previous
2066
+ # request, Amazon Bedrock ignores the request, but does not return an
2067
+ # error. For more information, see [Ensuring idempotency][1].
2068
+ #
2069
+ # **A suitable default value is auto-generated.** You should normally
2070
+ # not need to pass this option.**
2071
+ #
2072
+ #
2073
+ #
2074
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
2075
+ #
2076
+ # @option params [String] :description
2077
+ # A description for the version of the prompt.
2078
+ #
2079
+ # @option params [required, String] :prompt_identifier
2080
+ # The unique identifier of the prompt that you want to create a version
2081
+ # of.
2082
+ #
2083
+ # @option params [Hash<String,String>] :tags
2084
+ # Any tags that you want to attach to the version of the prompt. For
2085
+ # more information, see [Tagging resources in Amazon Bedrock][1].
2086
+ #
2087
+ #
2088
+ #
2089
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/tagging.html
2090
+ #
2091
+ # @return [Types::CreatePromptVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2092
+ #
2093
+ # * {Types::CreatePromptVersionResponse#arn #arn} => String
2094
+ # * {Types::CreatePromptVersionResponse#created_at #created_at} => Time
2095
+ # * {Types::CreatePromptVersionResponse#customer_encryption_key_arn #customer_encryption_key_arn} => String
2096
+ # * {Types::CreatePromptVersionResponse#default_variant #default_variant} => String
2097
+ # * {Types::CreatePromptVersionResponse#description #description} => String
2098
+ # * {Types::CreatePromptVersionResponse#id #id} => String
2099
+ # * {Types::CreatePromptVersionResponse#name #name} => String
2100
+ # * {Types::CreatePromptVersionResponse#updated_at #updated_at} => Time
2101
+ # * {Types::CreatePromptVersionResponse#variants #variants} => Array&lt;Types::PromptVariant&gt;
2102
+ # * {Types::CreatePromptVersionResponse#version #version} => String
2103
+ #
2104
+ # @example Request syntax with placeholder values
2105
+ #
2106
+ # resp = client.create_prompt_version({
2107
+ # client_token: "ClientToken",
2108
+ # description: "PromptDescription",
2109
+ # prompt_identifier: "PromptIdentifier", # required
2110
+ # tags: {
2111
+ # "TagKey" => "TagValue",
2112
+ # },
2113
+ # })
2114
+ #
2115
+ # @example Response structure
2116
+ #
2117
+ # resp.arn #=> String
2118
+ # resp.created_at #=> Time
2119
+ # resp.customer_encryption_key_arn #=> String
2120
+ # resp.default_variant #=> String
2121
+ # resp.description #=> String
2122
+ # resp.id #=> String
2123
+ # resp.name #=> String
2124
+ # resp.updated_at #=> Time
2125
+ # resp.variants #=> Array
2126
+ # resp.variants[0].inference_configuration.text.max_tokens #=> Integer
2127
+ # resp.variants[0].inference_configuration.text.stop_sequences #=> Array
2128
+ # resp.variants[0].inference_configuration.text.stop_sequences[0] #=> String
2129
+ # resp.variants[0].inference_configuration.text.temperature #=> Float
2130
+ # resp.variants[0].inference_configuration.text.top_k #=> Integer
2131
+ # resp.variants[0].inference_configuration.text.top_p #=> Float
2132
+ # resp.variants[0].model_id #=> String
2133
+ # resp.variants[0].name #=> String
2134
+ # resp.variants[0].template_configuration.text.input_variables #=> Array
2135
+ # resp.variants[0].template_configuration.text.input_variables[0].name #=> String
2136
+ # resp.variants[0].template_configuration.text.text #=> String
2137
+ # resp.variants[0].template_type #=> String, one of "TEXT"
2138
+ # resp.version #=> String
2139
+ #
2140
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/CreatePromptVersion AWS API Documentation
2141
+ #
2142
+ # @overload create_prompt_version(params = {})
2143
+ # @param [Hash] params ({})
2144
+ def create_prompt_version(params = {}, options = {})
2145
+ req = build_request(:create_prompt_version, params)
2146
+ req.send_request(options)
2147
+ end
2148
+
1241
2149
  # Deletes an agent.
1242
2150
  #
1243
2151
  # @option params [required, String] :agent_id
@@ -1390,38 +2298,147 @@ module Aws::BedrockAgent
1390
2298
 
1391
2299
  # Deletes a data source from a knowledge base.
1392
2300
  #
1393
- # @option params [required, String] :data_source_id
1394
- # The unique identifier of the data source to delete.
2301
+ # @option params [required, String] :data_source_id
2302
+ # The unique identifier of the data source to delete.
2303
+ #
2304
+ # @option params [required, String] :knowledge_base_id
2305
+ # The unique identifier of the knowledge base from which to delete the
2306
+ # data source.
2307
+ #
2308
+ # @return [Types::DeleteDataSourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2309
+ #
2310
+ # * {Types::DeleteDataSourceResponse#data_source_id #data_source_id} => String
2311
+ # * {Types::DeleteDataSourceResponse#knowledge_base_id #knowledge_base_id} => String
2312
+ # * {Types::DeleteDataSourceResponse#status #status} => String
2313
+ #
2314
+ # @example Request syntax with placeholder values
2315
+ #
2316
+ # resp = client.delete_data_source({
2317
+ # data_source_id: "Id", # required
2318
+ # knowledge_base_id: "Id", # required
2319
+ # })
2320
+ #
2321
+ # @example Response structure
2322
+ #
2323
+ # resp.data_source_id #=> String
2324
+ # resp.knowledge_base_id #=> String
2325
+ # resp.status #=> String, one of "AVAILABLE", "DELETING", "DELETE_UNSUCCESSFUL"
2326
+ #
2327
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteDataSource AWS API Documentation
2328
+ #
2329
+ # @overload delete_data_source(params = {})
2330
+ # @param [Hash] params ({})
2331
+ def delete_data_source(params = {}, options = {})
2332
+ req = build_request(:delete_data_source, params)
2333
+ req.send_request(options)
2334
+ end
2335
+
2336
+ # Deletes a flow.
2337
+ #
2338
+ # @option params [required, String] :flow_identifier
2339
+ # The unique identifier of the flow.
2340
+ #
2341
+ # @option params [Boolean] :skip_resource_in_use_check
2342
+ # By default, this value is `false` and deletion is stopped if the
2343
+ # resource is in use. If you set it to `true`, the resource will be
2344
+ # deleted even if the resource is in use.
2345
+ #
2346
+ # @return [Types::DeleteFlowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2347
+ #
2348
+ # * {Types::DeleteFlowResponse#id #id} => String
2349
+ #
2350
+ # @example Request syntax with placeholder values
2351
+ #
2352
+ # resp = client.delete_flow({
2353
+ # flow_identifier: "FlowIdentifier", # required
2354
+ # skip_resource_in_use_check: false,
2355
+ # })
2356
+ #
2357
+ # @example Response structure
2358
+ #
2359
+ # resp.id #=> String
2360
+ #
2361
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteFlow AWS API Documentation
2362
+ #
2363
+ # @overload delete_flow(params = {})
2364
+ # @param [Hash] params ({})
2365
+ def delete_flow(params = {}, options = {})
2366
+ req = build_request(:delete_flow, params)
2367
+ req.send_request(options)
2368
+ end
2369
+
2370
+ # Deletes an alias of a flow.
2371
+ #
2372
+ # @option params [required, String] :alias_identifier
2373
+ # The unique identifier of the alias to be deleted.
2374
+ #
2375
+ # @option params [required, String] :flow_identifier
2376
+ # The unique identifier of the flow that the alias belongs to.
2377
+ #
2378
+ # @return [Types::DeleteFlowAliasResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2379
+ #
2380
+ # * {Types::DeleteFlowAliasResponse#flow_id #flow_id} => String
2381
+ # * {Types::DeleteFlowAliasResponse#id #id} => String
2382
+ #
2383
+ # @example Request syntax with placeholder values
2384
+ #
2385
+ # resp = client.delete_flow_alias({
2386
+ # alias_identifier: "FlowAliasIdentifier", # required
2387
+ # flow_identifier: "FlowIdentifier", # required
2388
+ # })
2389
+ #
2390
+ # @example Response structure
2391
+ #
2392
+ # resp.flow_id #=> String
2393
+ # resp.id #=> String
2394
+ #
2395
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteFlowAlias AWS API Documentation
2396
+ #
2397
+ # @overload delete_flow_alias(params = {})
2398
+ # @param [Hash] params ({})
2399
+ def delete_flow_alias(params = {}, options = {})
2400
+ req = build_request(:delete_flow_alias, params)
2401
+ req.send_request(options)
2402
+ end
2403
+
2404
+ # Deletes a version of a flow.
2405
+ #
2406
+ # @option params [required, String] :flow_identifier
2407
+ # The unique identifier of the flow whose version that you want to
2408
+ # delete
2409
+ #
2410
+ # @option params [required, String] :flow_version
2411
+ # The version of the flow that you want to delete.
1395
2412
  #
1396
- # @option params [required, String] :knowledge_base_id
1397
- # The unique identifier of the knowledge base from which to delete the
1398
- # data source.
2413
+ # @option params [Boolean] :skip_resource_in_use_check
2414
+ # By default, this value is `false` and deletion is stopped if the
2415
+ # resource is in use. If you set it to `true`, the resource will be
2416
+ # deleted even if the resource is in use.
1399
2417
  #
1400
- # @return [Types::DeleteDataSourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2418
+ # @return [Types::DeleteFlowVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1401
2419
  #
1402
- # * {Types::DeleteDataSourceResponse#data_source_id #data_source_id} => String
1403
- # * {Types::DeleteDataSourceResponse#knowledge_base_id #knowledge_base_id} => String
1404
- # * {Types::DeleteDataSourceResponse#status #status} => String
2420
+ # * {Types::DeleteFlowVersionResponse#id #id} => String
2421
+ # * {Types::DeleteFlowVersionResponse#version #version} => String
1405
2422
  #
1406
2423
  # @example Request syntax with placeholder values
1407
2424
  #
1408
- # resp = client.delete_data_source({
1409
- # data_source_id: "Id", # required
1410
- # knowledge_base_id: "Id", # required
2425
+ # resp = client.delete_flow_version({
2426
+ # flow_identifier: "FlowIdentifier", # required
2427
+ # flow_version: "NumericalVersion", # required
2428
+ # skip_resource_in_use_check: false,
1411
2429
  # })
1412
2430
  #
1413
2431
  # @example Response structure
1414
2432
  #
1415
- # resp.data_source_id #=> String
1416
- # resp.knowledge_base_id #=> String
1417
- # resp.status #=> String, one of "AVAILABLE", "DELETING", "DELETE_UNSUCCESSFUL"
2433
+ # resp.id #=> String
2434
+ # resp.version #=> String
1418
2435
  #
1419
- # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteDataSource AWS API Documentation
2436
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeleteFlowVersion AWS API Documentation
1420
2437
  #
1421
- # @overload delete_data_source(params = {})
2438
+ # @overload delete_flow_version(params = {})
1422
2439
  # @param [Hash] params ({})
1423
- def delete_data_source(params = {}, options = {})
1424
- req = build_request(:delete_data_source, params)
2440
+ def delete_flow_version(params = {}, options = {})
2441
+ req = build_request(:delete_flow_version, params)
1425
2442
  req.send_request(options)
1426
2443
  end
1427
2444
 
@@ -1461,6 +2478,48 @@ module Aws::BedrockAgent
1461
2478
  req.send_request(options)
1462
2479
  end
1463
2480
 
2481
+ # Deletes a prompt or a prompt version from the Prompt management tool.
2482
+ # For more information, see [Delete prompts from the Prompt management
2483
+ # tool][1] and [Delete a version of a prompt from the Prompt management
2484
+ # tool][2] in the Amazon Bedrock User Guide.
2485
+ #
2486
+ #
2487
+ #
2488
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-manage.html#prompt-management-delete.html
2489
+ # [2]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-deploy.html#prompt-management-versions-delete.html
2490
+ #
2491
+ # @option params [required, String] :prompt_identifier
2492
+ # The unique identifier of the prompt.
2493
+ #
2494
+ # @option params [String] :prompt_version
2495
+ # The version of the prompt to delete.
2496
+ #
2497
+ # @return [Types::DeletePromptResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2498
+ #
2499
+ # * {Types::DeletePromptResponse#id #id} => String
2500
+ # * {Types::DeletePromptResponse#version #version} => String
2501
+ #
2502
+ # @example Request syntax with placeholder values
2503
+ #
2504
+ # resp = client.delete_prompt({
2505
+ # prompt_identifier: "PromptIdentifier", # required
2506
+ # prompt_version: "NumericalVersion",
2507
+ # })
2508
+ #
2509
+ # @example Response structure
2510
+ #
2511
+ # resp.id #=> String
2512
+ # resp.version #=> String
2513
+ #
2514
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/DeletePrompt AWS API Documentation
2515
+ #
2516
+ # @overload delete_prompt(params = {})
2517
+ # @param [Hash] params ({})
2518
+ def delete_prompt(params = {}, options = {})
2519
+ req = build_request(:delete_prompt, params)
2520
+ req.send_request(options)
2521
+ end
2522
+
1464
2523
  # Disassociates a knowledge base from an agent.
1465
2524
  #
1466
2525
  # @option params [required, String] :agent_id
@@ -1527,6 +2586,9 @@ module Aws::BedrockAgent
1527
2586
  # resp.agent.guardrail_configuration.guardrail_version #=> String
1528
2587
  # resp.agent.idle_session_ttl_in_seconds #=> Integer
1529
2588
  # resp.agent.instruction #=> String
2589
+ # resp.agent.memory_configuration.enabled_memory_types #=> Array
2590
+ # resp.agent.memory_configuration.enabled_memory_types[0] #=> String, one of "SESSION_SUMMARY"
2591
+ # resp.agent.memory_configuration.storage_days #=> Integer
1530
2592
  # resp.agent.prepared_at #=> Time
1531
2593
  # resp.agent.prompt_override_configuration.override_lambda #=> String
1532
2594
  # resp.agent.prompt_override_configuration.prompt_configurations #=> Array
@@ -1600,7 +2662,7 @@ module Aws::BedrockAgent
1600
2662
  # resp.agent_action_group.function_schema.functions[0].parameters["Name"].description #=> String
1601
2663
  # resp.agent_action_group.function_schema.functions[0].parameters["Name"].required #=> Boolean
1602
2664
  # resp.agent_action_group.function_schema.functions[0].parameters["Name"].type #=> String, one of "string", "number", "integer", "boolean", "array"
1603
- # resp.agent_action_group.parent_action_signature #=> String, one of "AMAZON.UserInput"
2665
+ # resp.agent_action_group.parent_action_signature #=> String, one of "AMAZON.UserInput", "AMAZON.CodeInterpreter"
1604
2666
  # resp.agent_action_group.updated_at #=> Time
1605
2667
  #
1606
2668
  # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetAgentActionGroup AWS API Documentation
@@ -1743,6 +2805,9 @@ module Aws::BedrockAgent
1743
2805
  # resp.agent_version.guardrail_configuration.guardrail_version #=> String
1744
2806
  # resp.agent_version.idle_session_ttl_in_seconds #=> Integer
1745
2807
  # resp.agent_version.instruction #=> String
2808
+ # resp.agent_version.memory_configuration.enabled_memory_types #=> Array
2809
+ # resp.agent_version.memory_configuration.enabled_memory_types[0] #=> String, one of "SESSION_SUMMARY"
2810
+ # resp.agent_version.memory_configuration.storage_days #=> Integer
1746
2811
  # resp.agent_version.prompt_override_configuration.override_lambda #=> String
1747
2812
  # resp.agent_version.prompt_override_configuration.prompt_configurations #=> Array
1748
2813
  # resp.agent_version.prompt_override_configuration.prompt_configurations[0].base_prompt_template #=> String
@@ -1794,11 +2859,54 @@ module Aws::BedrockAgent
1794
2859
  #
1795
2860
  # resp.data_source.created_at #=> Time
1796
2861
  # resp.data_source.data_deletion_policy #=> String, one of "RETAIN", "DELETE"
2862
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters #=> Array
2863
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters #=> Array
2864
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters[0] #=> String
2865
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters #=> Array
2866
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters[0] #=> String
2867
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].object_type #=> String
2868
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.type #=> String, one of "PATTERN"
2869
+ # resp.data_source.data_source_configuration.confluence_configuration.source_configuration.auth_type #=> String, one of "BASIC", "OAUTH2_CLIENT_CREDENTIALS"
2870
+ # resp.data_source.data_source_configuration.confluence_configuration.source_configuration.credentials_secret_arn #=> String
2871
+ # resp.data_source.data_source_configuration.confluence_configuration.source_configuration.host_type #=> String, one of "SAAS"
2872
+ # resp.data_source.data_source_configuration.confluence_configuration.source_configuration.host_url #=> String
1797
2873
  # resp.data_source.data_source_configuration.s3_configuration.bucket_arn #=> String
1798
2874
  # resp.data_source.data_source_configuration.s3_configuration.bucket_owner_account_id #=> String
1799
2875
  # resp.data_source.data_source_configuration.s3_configuration.inclusion_prefixes #=> Array
1800
2876
  # resp.data_source.data_source_configuration.s3_configuration.inclusion_prefixes[0] #=> String
1801
- # resp.data_source.data_source_configuration.type #=> String, one of "S3"
2877
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters #=> Array
2878
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters #=> Array
2879
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters[0] #=> String
2880
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters #=> Array
2881
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters[0] #=> String
2882
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].object_type #=> String
2883
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.type #=> String, one of "PATTERN"
2884
+ # resp.data_source.data_source_configuration.salesforce_configuration.source_configuration.auth_type #=> String, one of "OAUTH2_CLIENT_CREDENTIALS"
2885
+ # resp.data_source.data_source_configuration.salesforce_configuration.source_configuration.credentials_secret_arn #=> String
2886
+ # resp.data_source.data_source_configuration.salesforce_configuration.source_configuration.host_url #=> String
2887
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters #=> Array
2888
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters #=> Array
2889
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters[0] #=> String
2890
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters #=> Array
2891
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters[0] #=> String
2892
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].object_type #=> String
2893
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.type #=> String, one of "PATTERN"
2894
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.auth_type #=> String, one of "OAUTH2_CLIENT_CREDENTIALS"
2895
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.credentials_secret_arn #=> String
2896
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.domain #=> String
2897
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.host_type #=> String, one of "ONLINE"
2898
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.site_urls #=> Array
2899
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.site_urls[0] #=> String
2900
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.tenant_id #=> String
2901
+ # resp.data_source.data_source_configuration.type #=> String, one of "S3", "WEB", "CONFLUENCE", "SALESFORCE", "SHAREPOINT"
2902
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.crawler_limits.rate_limit #=> Integer
2903
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.exclusion_filters #=> Array
2904
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.exclusion_filters[0] #=> String
2905
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.inclusion_filters #=> Array
2906
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.inclusion_filters[0] #=> String
2907
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.scope #=> String, one of "HOST_ONLY", "SUBDOMAINS"
2908
+ # resp.data_source.data_source_configuration.web_configuration.source_configuration.url_configuration.seed_urls #=> Array
2909
+ # resp.data_source.data_source_configuration.web_configuration.source_configuration.url_configuration.seed_urls[0].url #=> String
1802
2910
  # resp.data_source.data_source_id #=> String
1803
2911
  # resp.data_source.description #=> String
1804
2912
  # resp.data_source.failure_reasons #=> Array
@@ -1808,9 +2916,22 @@ module Aws::BedrockAgent
1808
2916
  # resp.data_source.server_side_encryption_configuration.kms_key_arn #=> String
1809
2917
  # resp.data_source.status #=> String, one of "AVAILABLE", "DELETING", "DELETE_UNSUCCESSFUL"
1810
2918
  # resp.data_source.updated_at #=> Time
1811
- # resp.data_source.vector_ingestion_configuration.chunking_configuration.chunking_strategy #=> String, one of "FIXED_SIZE", "NONE"
2919
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.chunking_strategy #=> String, one of "FIXED_SIZE", "NONE", "HIERARCHICAL", "SEMANTIC"
1812
2920
  # resp.data_source.vector_ingestion_configuration.chunking_configuration.fixed_size_chunking_configuration.max_tokens #=> Integer
1813
2921
  # resp.data_source.vector_ingestion_configuration.chunking_configuration.fixed_size_chunking_configuration.overlap_percentage #=> Integer
2922
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.level_configurations #=> Array
2923
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.level_configurations[0].max_tokens #=> Integer
2924
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.overlap_tokens #=> Integer
2925
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.breakpoint_percentile_threshold #=> Integer
2926
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.buffer_size #=> Integer
2927
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.max_tokens #=> Integer
2928
+ # resp.data_source.vector_ingestion_configuration.custom_transformation_configuration.intermediate_storage.s3_location.uri #=> String
2929
+ # resp.data_source.vector_ingestion_configuration.custom_transformation_configuration.transformations #=> Array
2930
+ # resp.data_source.vector_ingestion_configuration.custom_transformation_configuration.transformations[0].step_to_apply #=> String, one of "POST_CHUNKING"
2931
+ # resp.data_source.vector_ingestion_configuration.custom_transformation_configuration.transformations[0].transformation_function.transformation_lambda_configuration.lambda_arn #=> String
2932
+ # resp.data_source.vector_ingestion_configuration.parsing_configuration.bedrock_foundation_model_configuration.model_arn #=> String
2933
+ # resp.data_source.vector_ingestion_configuration.parsing_configuration.bedrock_foundation_model_configuration.parsing_prompt.parsing_prompt_text #=> String
2934
+ # resp.data_source.vector_ingestion_configuration.parsing_configuration.parsing_strategy #=> String, one of "BEDROCK_FOUNDATION_MODEL"
1814
2935
  #
1815
2936
  # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetDataSource AWS API Documentation
1816
2937
  #
@@ -1821,6 +2942,251 @@ module Aws::BedrockAgent
1821
2942
  req.send_request(options)
1822
2943
  end
1823
2944
 
2945
+ # Retrieves information about a flow. For more information, see [Manage
2946
+ # a flow in Amazon Bedrock][1] in the Amazon Bedrock User Guide.
2947
+ #
2948
+ #
2949
+ #
2950
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-manage.html
2951
+ #
2952
+ # @option params [required, String] :flow_identifier
2953
+ # The unique identifier of the flow.
2954
+ #
2955
+ # @return [Types::GetFlowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2956
+ #
2957
+ # * {Types::GetFlowResponse#arn #arn} => String
2958
+ # * {Types::GetFlowResponse#created_at #created_at} => Time
2959
+ # * {Types::GetFlowResponse#customer_encryption_key_arn #customer_encryption_key_arn} => String
2960
+ # * {Types::GetFlowResponse#definition #definition} => Types::FlowDefinition
2961
+ # * {Types::GetFlowResponse#description #description} => String
2962
+ # * {Types::GetFlowResponse#execution_role_arn #execution_role_arn} => String
2963
+ # * {Types::GetFlowResponse#id #id} => String
2964
+ # * {Types::GetFlowResponse#name #name} => String
2965
+ # * {Types::GetFlowResponse#status #status} => String
2966
+ # * {Types::GetFlowResponse#updated_at #updated_at} => Time
2967
+ # * {Types::GetFlowResponse#validations #validations} => Array&lt;Types::FlowValidation&gt;
2968
+ # * {Types::GetFlowResponse#version #version} => String
2969
+ #
2970
+ # @example Request syntax with placeholder values
2971
+ #
2972
+ # resp = client.get_flow({
2973
+ # flow_identifier: "FlowIdentifier", # required
2974
+ # })
2975
+ #
2976
+ # @example Response structure
2977
+ #
2978
+ # resp.arn #=> String
2979
+ # resp.created_at #=> Time
2980
+ # resp.customer_encryption_key_arn #=> String
2981
+ # resp.definition.connections #=> Array
2982
+ # resp.definition.connections[0].configuration.conditional.condition #=> String
2983
+ # resp.definition.connections[0].configuration.data.source_output #=> String
2984
+ # resp.definition.connections[0].configuration.data.target_input #=> String
2985
+ # resp.definition.connections[0].name #=> String
2986
+ # resp.definition.connections[0].source #=> String
2987
+ # resp.definition.connections[0].target #=> String
2988
+ # resp.definition.connections[0].type #=> String, one of "Data", "Conditional"
2989
+ # resp.definition.nodes #=> Array
2990
+ # resp.definition.nodes[0].configuration.agent.agent_alias_arn #=> String
2991
+ # resp.definition.nodes[0].configuration.condition.conditions #=> Array
2992
+ # resp.definition.nodes[0].configuration.condition.conditions[0].expression #=> String
2993
+ # resp.definition.nodes[0].configuration.condition.conditions[0].name #=> String
2994
+ # resp.definition.nodes[0].configuration.knowledge_base.knowledge_base_id #=> String
2995
+ # resp.definition.nodes[0].configuration.knowledge_base.model_id #=> String
2996
+ # resp.definition.nodes[0].configuration.lambda_function.lambda_arn #=> String
2997
+ # resp.definition.nodes[0].configuration.lex.bot_alias_arn #=> String
2998
+ # resp.definition.nodes[0].configuration.lex.locale_id #=> String
2999
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.max_tokens #=> Integer
3000
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.stop_sequences #=> Array
3001
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.stop_sequences[0] #=> String
3002
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.temperature #=> Float
3003
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.top_k #=> Integer
3004
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.top_p #=> Float
3005
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.model_id #=> String
3006
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_configuration.text.input_variables #=> Array
3007
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_configuration.text.input_variables[0].name #=> String
3008
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_configuration.text.text #=> String
3009
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_type #=> String, one of "TEXT"
3010
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.resource.prompt_arn #=> String
3011
+ # resp.definition.nodes[0].configuration.retrieval.service_configuration.s3.bucket_name #=> String
3012
+ # resp.definition.nodes[0].configuration.storage.service_configuration.s3.bucket_name #=> String
3013
+ # resp.definition.nodes[0].inputs #=> Array
3014
+ # resp.definition.nodes[0].inputs[0].expression #=> String
3015
+ # resp.definition.nodes[0].inputs[0].name #=> String
3016
+ # resp.definition.nodes[0].inputs[0].type #=> String, one of "String", "Number", "Boolean", "Object", "Array"
3017
+ # resp.definition.nodes[0].name #=> String
3018
+ # resp.definition.nodes[0].outputs #=> Array
3019
+ # resp.definition.nodes[0].outputs[0].name #=> String
3020
+ # resp.definition.nodes[0].outputs[0].type #=> String, one of "String", "Number", "Boolean", "Object", "Array"
3021
+ # resp.definition.nodes[0].type #=> String, one of "Input", "Output", "KnowledgeBase", "Condition", "Lex", "Prompt", "LambdaFunction", "Storage", "Agent", "Retrieval", "Iterator", "Collector"
3022
+ # resp.description #=> String
3023
+ # resp.execution_role_arn #=> String
3024
+ # resp.id #=> String
3025
+ # resp.name #=> String
3026
+ # resp.status #=> String, one of "Failed", "Prepared", "Preparing", "NotPrepared"
3027
+ # resp.updated_at #=> Time
3028
+ # resp.validations #=> Array
3029
+ # resp.validations[0].message #=> String
3030
+ # resp.validations[0].severity #=> String, one of "Warning", "Error"
3031
+ # resp.version #=> String
3032
+ #
3033
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetFlow AWS API Documentation
3034
+ #
3035
+ # @overload get_flow(params = {})
3036
+ # @param [Hash] params ({})
3037
+ def get_flow(params = {}, options = {})
3038
+ req = build_request(:get_flow, params)
3039
+ req.send_request(options)
3040
+ end
3041
+
3042
+ # Retrieves information about a flow. For more information, see [Deploy
3043
+ # a flow in Amazon Bedrock][1] in the Amazon Bedrock User Guide.
3044
+ #
3045
+ #
3046
+ #
3047
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-deploy.html
3048
+ #
3049
+ # @option params [required, String] :alias_identifier
3050
+ # The unique identifier of the alias for which to retrieve information.
3051
+ #
3052
+ # @option params [required, String] :flow_identifier
3053
+ # The unique identifier of the flow that the alias belongs to.
3054
+ #
3055
+ # @return [Types::GetFlowAliasResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3056
+ #
3057
+ # * {Types::GetFlowAliasResponse#arn #arn} => String
3058
+ # * {Types::GetFlowAliasResponse#created_at #created_at} => Time
3059
+ # * {Types::GetFlowAliasResponse#description #description} => String
3060
+ # * {Types::GetFlowAliasResponse#flow_id #flow_id} => String
3061
+ # * {Types::GetFlowAliasResponse#id #id} => String
3062
+ # * {Types::GetFlowAliasResponse#name #name} => String
3063
+ # * {Types::GetFlowAliasResponse#routing_configuration #routing_configuration} => Array&lt;Types::FlowAliasRoutingConfigurationListItem&gt;
3064
+ # * {Types::GetFlowAliasResponse#updated_at #updated_at} => Time
3065
+ #
3066
+ # @example Request syntax with placeholder values
3067
+ #
3068
+ # resp = client.get_flow_alias({
3069
+ # alias_identifier: "FlowAliasIdentifier", # required
3070
+ # flow_identifier: "FlowIdentifier", # required
3071
+ # })
3072
+ #
3073
+ # @example Response structure
3074
+ #
3075
+ # resp.arn #=> String
3076
+ # resp.created_at #=> Time
3077
+ # resp.description #=> String
3078
+ # resp.flow_id #=> String
3079
+ # resp.id #=> String
3080
+ # resp.name #=> String
3081
+ # resp.routing_configuration #=> Array
3082
+ # resp.routing_configuration[0].flow_version #=> String
3083
+ # resp.updated_at #=> Time
3084
+ #
3085
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetFlowAlias AWS API Documentation
3086
+ #
3087
+ # @overload get_flow_alias(params = {})
3088
+ # @param [Hash] params ({})
3089
+ def get_flow_alias(params = {}, options = {})
3090
+ req = build_request(:get_flow_alias, params)
3091
+ req.send_request(options)
3092
+ end
3093
+
3094
+ # Retrieves information about a version of a flow. For more information,
3095
+ # see [Deploy a flow in Amazon Bedrock][1] in the Amazon Bedrock User
3096
+ # Guide.
3097
+ #
3098
+ #
3099
+ #
3100
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-deploy.html
3101
+ #
3102
+ # @option params [required, String] :flow_identifier
3103
+ # The unique identifier of the flow for which to get information.
3104
+ #
3105
+ # @option params [required, String] :flow_version
3106
+ # The version of the flow for which to get information.
3107
+ #
3108
+ # @return [Types::GetFlowVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3109
+ #
3110
+ # * {Types::GetFlowVersionResponse#arn #arn} => String
3111
+ # * {Types::GetFlowVersionResponse#created_at #created_at} => Time
3112
+ # * {Types::GetFlowVersionResponse#customer_encryption_key_arn #customer_encryption_key_arn} => String
3113
+ # * {Types::GetFlowVersionResponse#definition #definition} => Types::FlowDefinition
3114
+ # * {Types::GetFlowVersionResponse#description #description} => String
3115
+ # * {Types::GetFlowVersionResponse#execution_role_arn #execution_role_arn} => String
3116
+ # * {Types::GetFlowVersionResponse#id #id} => String
3117
+ # * {Types::GetFlowVersionResponse#name #name} => String
3118
+ # * {Types::GetFlowVersionResponse#status #status} => String
3119
+ # * {Types::GetFlowVersionResponse#version #version} => String
3120
+ #
3121
+ # @example Request syntax with placeholder values
3122
+ #
3123
+ # resp = client.get_flow_version({
3124
+ # flow_identifier: "FlowIdentifier", # required
3125
+ # flow_version: "NumericalVersion", # required
3126
+ # })
3127
+ #
3128
+ # @example Response structure
3129
+ #
3130
+ # resp.arn #=> String
3131
+ # resp.created_at #=> Time
3132
+ # resp.customer_encryption_key_arn #=> String
3133
+ # resp.definition.connections #=> Array
3134
+ # resp.definition.connections[0].configuration.conditional.condition #=> String
3135
+ # resp.definition.connections[0].configuration.data.source_output #=> String
3136
+ # resp.definition.connections[0].configuration.data.target_input #=> String
3137
+ # resp.definition.connections[0].name #=> String
3138
+ # resp.definition.connections[0].source #=> String
3139
+ # resp.definition.connections[0].target #=> String
3140
+ # resp.definition.connections[0].type #=> String, one of "Data", "Conditional"
3141
+ # resp.definition.nodes #=> Array
3142
+ # resp.definition.nodes[0].configuration.agent.agent_alias_arn #=> String
3143
+ # resp.definition.nodes[0].configuration.condition.conditions #=> Array
3144
+ # resp.definition.nodes[0].configuration.condition.conditions[0].expression #=> String
3145
+ # resp.definition.nodes[0].configuration.condition.conditions[0].name #=> String
3146
+ # resp.definition.nodes[0].configuration.knowledge_base.knowledge_base_id #=> String
3147
+ # resp.definition.nodes[0].configuration.knowledge_base.model_id #=> String
3148
+ # resp.definition.nodes[0].configuration.lambda_function.lambda_arn #=> String
3149
+ # resp.definition.nodes[0].configuration.lex.bot_alias_arn #=> String
3150
+ # resp.definition.nodes[0].configuration.lex.locale_id #=> String
3151
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.max_tokens #=> Integer
3152
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.stop_sequences #=> Array
3153
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.stop_sequences[0] #=> String
3154
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.temperature #=> Float
3155
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.top_k #=> Integer
3156
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.top_p #=> Float
3157
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.model_id #=> String
3158
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_configuration.text.input_variables #=> Array
3159
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_configuration.text.input_variables[0].name #=> String
3160
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_configuration.text.text #=> String
3161
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_type #=> String, one of "TEXT"
3162
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.resource.prompt_arn #=> String
3163
+ # resp.definition.nodes[0].configuration.retrieval.service_configuration.s3.bucket_name #=> String
3164
+ # resp.definition.nodes[0].configuration.storage.service_configuration.s3.bucket_name #=> String
3165
+ # resp.definition.nodes[0].inputs #=> Array
3166
+ # resp.definition.nodes[0].inputs[0].expression #=> String
3167
+ # resp.definition.nodes[0].inputs[0].name #=> String
3168
+ # resp.definition.nodes[0].inputs[0].type #=> String, one of "String", "Number", "Boolean", "Object", "Array"
3169
+ # resp.definition.nodes[0].name #=> String
3170
+ # resp.definition.nodes[0].outputs #=> Array
3171
+ # resp.definition.nodes[0].outputs[0].name #=> String
3172
+ # resp.definition.nodes[0].outputs[0].type #=> String, one of "String", "Number", "Boolean", "Object", "Array"
3173
+ # resp.definition.nodes[0].type #=> String, one of "Input", "Output", "KnowledgeBase", "Condition", "Lex", "Prompt", "LambdaFunction", "Storage", "Agent", "Retrieval", "Iterator", "Collector"
3174
+ # resp.description #=> String
3175
+ # resp.execution_role_arn #=> String
3176
+ # resp.id #=> String
3177
+ # resp.name #=> String
3178
+ # resp.status #=> String, one of "Failed", "Prepared", "Preparing", "NotPrepared"
3179
+ # resp.version #=> String
3180
+ #
3181
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetFlowVersion AWS API Documentation
3182
+ #
3183
+ # @overload get_flow_version(params = {})
3184
+ # @param [Hash] params ({})
3185
+ def get_flow_version(params = {}, options = {})
3186
+ req = build_request(:get_flow_version, params)
3187
+ req.send_request(options)
3188
+ end
3189
+
1824
3190
  # Gets information about a ingestion job, in which a data source is
1825
3191
  # added to a knowledge base.
1826
3192
  #
@@ -1949,6 +3315,77 @@ module Aws::BedrockAgent
1949
3315
  req.send_request(options)
1950
3316
  end
1951
3317
 
3318
+ # Retrieves information about a prompt or a version of it. For more
3319
+ # information, see [View information about prompts using Prompt
3320
+ # management][1] and [View information about a version of your
3321
+ # prompt][2] in the Amazon Bedrock User Guide.
3322
+ #
3323
+ #
3324
+ #
3325
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-manage.html#prompt-management-view.html
3326
+ # [2]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-deploy.html#prompt-management-versions-view.html
3327
+ #
3328
+ # @option params [required, String] :prompt_identifier
3329
+ # The unique identifier of the prompt.
3330
+ #
3331
+ # @option params [String] :prompt_version
3332
+ # The version of the prompt about which you want to retrieve
3333
+ # information.
3334
+ #
3335
+ # @return [Types::GetPromptResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3336
+ #
3337
+ # * {Types::GetPromptResponse#arn #arn} => String
3338
+ # * {Types::GetPromptResponse#created_at #created_at} => Time
3339
+ # * {Types::GetPromptResponse#customer_encryption_key_arn #customer_encryption_key_arn} => String
3340
+ # * {Types::GetPromptResponse#default_variant #default_variant} => String
3341
+ # * {Types::GetPromptResponse#description #description} => String
3342
+ # * {Types::GetPromptResponse#id #id} => String
3343
+ # * {Types::GetPromptResponse#name #name} => String
3344
+ # * {Types::GetPromptResponse#updated_at #updated_at} => Time
3345
+ # * {Types::GetPromptResponse#variants #variants} => Array&lt;Types::PromptVariant&gt;
3346
+ # * {Types::GetPromptResponse#version #version} => String
3347
+ #
3348
+ # @example Request syntax with placeholder values
3349
+ #
3350
+ # resp = client.get_prompt({
3351
+ # prompt_identifier: "PromptIdentifier", # required
3352
+ # prompt_version: "Version",
3353
+ # })
3354
+ #
3355
+ # @example Response structure
3356
+ #
3357
+ # resp.arn #=> String
3358
+ # resp.created_at #=> Time
3359
+ # resp.customer_encryption_key_arn #=> String
3360
+ # resp.default_variant #=> String
3361
+ # resp.description #=> String
3362
+ # resp.id #=> String
3363
+ # resp.name #=> String
3364
+ # resp.updated_at #=> Time
3365
+ # resp.variants #=> Array
3366
+ # resp.variants[0].inference_configuration.text.max_tokens #=> Integer
3367
+ # resp.variants[0].inference_configuration.text.stop_sequences #=> Array
3368
+ # resp.variants[0].inference_configuration.text.stop_sequences[0] #=> String
3369
+ # resp.variants[0].inference_configuration.text.temperature #=> Float
3370
+ # resp.variants[0].inference_configuration.text.top_k #=> Integer
3371
+ # resp.variants[0].inference_configuration.text.top_p #=> Float
3372
+ # resp.variants[0].model_id #=> String
3373
+ # resp.variants[0].name #=> String
3374
+ # resp.variants[0].template_configuration.text.input_variables #=> Array
3375
+ # resp.variants[0].template_configuration.text.input_variables[0].name #=> String
3376
+ # resp.variants[0].template_configuration.text.text #=> String
3377
+ # resp.variants[0].template_type #=> String, one of "TEXT"
3378
+ # resp.version #=> String
3379
+ #
3380
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/GetPrompt AWS API Documentation
3381
+ #
3382
+ # @overload get_prompt(params = {})
3383
+ # @param [Hash] params ({})
3384
+ def get_prompt(params = {}, options = {})
3385
+ req = build_request(:get_prompt, params)
3386
+ req.send_request(options)
3387
+ end
3388
+
1952
3389
  # Lists the action groups for an agent and information about each one.
1953
3390
  #
1954
3391
  # @option params [required, String] :agent_id
@@ -2170,8 +3607,177 @@ module Aws::BedrockAgent
2170
3607
  req.send_request(options)
2171
3608
  end
2172
3609
 
2173
- # Lists the agents belonging to an account and information about each
2174
- # agent.
3610
+ # Lists the agents belonging to an account and information about each
3611
+ # agent.
3612
+ #
3613
+ # @option params [Integer] :max_results
3614
+ # The maximum number of results to return in the response. If the total
3615
+ # number of results is greater than this value, use the token returned
3616
+ # in the response in the `nextToken` field when making another request
3617
+ # to return the next batch of results.
3618
+ #
3619
+ # @option params [String] :next_token
3620
+ # If the total number of results is greater than the `maxResults` value
3621
+ # provided in the request, enter the token returned in the `nextToken`
3622
+ # field in the response in this field to return the next batch of
3623
+ # results.
3624
+ #
3625
+ # @return [Types::ListAgentsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3626
+ #
3627
+ # * {Types::ListAgentsResponse#agent_summaries #agent_summaries} => Array&lt;Types::AgentSummary&gt;
3628
+ # * {Types::ListAgentsResponse#next_token #next_token} => String
3629
+ #
3630
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3631
+ #
3632
+ # @example Request syntax with placeholder values
3633
+ #
3634
+ # resp = client.list_agents({
3635
+ # max_results: 1,
3636
+ # next_token: "NextToken",
3637
+ # })
3638
+ #
3639
+ # @example Response structure
3640
+ #
3641
+ # resp.agent_summaries #=> Array
3642
+ # resp.agent_summaries[0].agent_id #=> String
3643
+ # resp.agent_summaries[0].agent_name #=> String
3644
+ # resp.agent_summaries[0].agent_status #=> String, one of "CREATING", "PREPARING", "PREPARED", "NOT_PREPARED", "DELETING", "FAILED", "VERSIONING", "UPDATING"
3645
+ # resp.agent_summaries[0].description #=> String
3646
+ # resp.agent_summaries[0].guardrail_configuration.guardrail_identifier #=> String
3647
+ # resp.agent_summaries[0].guardrail_configuration.guardrail_version #=> String
3648
+ # resp.agent_summaries[0].latest_agent_version #=> String
3649
+ # resp.agent_summaries[0].updated_at #=> Time
3650
+ # resp.next_token #=> String
3651
+ #
3652
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListAgents AWS API Documentation
3653
+ #
3654
+ # @overload list_agents(params = {})
3655
+ # @param [Hash] params ({})
3656
+ def list_agents(params = {}, options = {})
3657
+ req = build_request(:list_agents, params)
3658
+ req.send_request(options)
3659
+ end
3660
+
3661
+ # Lists the data sources in a knowledge base and information about each
3662
+ # one.
3663
+ #
3664
+ # @option params [required, String] :knowledge_base_id
3665
+ # The unique identifier of the knowledge base for which to return a list
3666
+ # of information.
3667
+ #
3668
+ # @option params [Integer] :max_results
3669
+ # The maximum number of results to return in the response. If the total
3670
+ # number of results is greater than this value, use the token returned
3671
+ # in the response in the `nextToken` field when making another request
3672
+ # to return the next batch of results.
3673
+ #
3674
+ # @option params [String] :next_token
3675
+ # If the total number of results is greater than the `maxResults` value
3676
+ # provided in the request, enter the token returned in the `nextToken`
3677
+ # field in the response in this field to return the next batch of
3678
+ # results.
3679
+ #
3680
+ # @return [Types::ListDataSourcesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3681
+ #
3682
+ # * {Types::ListDataSourcesResponse#data_source_summaries #data_source_summaries} => Array&lt;Types::DataSourceSummary&gt;
3683
+ # * {Types::ListDataSourcesResponse#next_token #next_token} => String
3684
+ #
3685
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3686
+ #
3687
+ # @example Request syntax with placeholder values
3688
+ #
3689
+ # resp = client.list_data_sources({
3690
+ # knowledge_base_id: "Id", # required
3691
+ # max_results: 1,
3692
+ # next_token: "NextToken",
3693
+ # })
3694
+ #
3695
+ # @example Response structure
3696
+ #
3697
+ # resp.data_source_summaries #=> Array
3698
+ # resp.data_source_summaries[0].data_source_id #=> String
3699
+ # resp.data_source_summaries[0].description #=> String
3700
+ # resp.data_source_summaries[0].knowledge_base_id #=> String
3701
+ # resp.data_source_summaries[0].name #=> String
3702
+ # resp.data_source_summaries[0].status #=> String, one of "AVAILABLE", "DELETING", "DELETE_UNSUCCESSFUL"
3703
+ # resp.data_source_summaries[0].updated_at #=> Time
3704
+ # resp.next_token #=> String
3705
+ #
3706
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListDataSources AWS API Documentation
3707
+ #
3708
+ # @overload list_data_sources(params = {})
3709
+ # @param [Hash] params ({})
3710
+ def list_data_sources(params = {}, options = {})
3711
+ req = build_request(:list_data_sources, params)
3712
+ req.send_request(options)
3713
+ end
3714
+
3715
+ # Returns a list of aliases for a flow.
3716
+ #
3717
+ # @option params [required, String] :flow_identifier
3718
+ # The unique identifier of the flow for which aliases are being
3719
+ # returned.
3720
+ #
3721
+ # @option params [Integer] :max_results
3722
+ # The maximum number of results to return in the response. If the total
3723
+ # number of results is greater than this value, use the token returned
3724
+ # in the response in the `nextToken` field when making another request
3725
+ # to return the next batch of results.
3726
+ #
3727
+ # @option params [String] :next_token
3728
+ # If the total number of results is greater than the `maxResults` value
3729
+ # provided in the request, enter the token returned in the `nextToken`
3730
+ # field in the response in this field to return the next batch of
3731
+ # results.
3732
+ #
3733
+ # @return [Types::ListFlowAliasesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3734
+ #
3735
+ # * {Types::ListFlowAliasesResponse#flow_alias_summaries #flow_alias_summaries} => Array&lt;Types::FlowAliasSummary&gt;
3736
+ # * {Types::ListFlowAliasesResponse#next_token #next_token} => String
3737
+ #
3738
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3739
+ #
3740
+ # @example Request syntax with placeholder values
3741
+ #
3742
+ # resp = client.list_flow_aliases({
3743
+ # flow_identifier: "FlowIdentifier", # required
3744
+ # max_results: 1,
3745
+ # next_token: "NextToken",
3746
+ # })
3747
+ #
3748
+ # @example Response structure
3749
+ #
3750
+ # resp.flow_alias_summaries #=> Array
3751
+ # resp.flow_alias_summaries[0].arn #=> String
3752
+ # resp.flow_alias_summaries[0].created_at #=> Time
3753
+ # resp.flow_alias_summaries[0].description #=> String
3754
+ # resp.flow_alias_summaries[0].flow_id #=> String
3755
+ # resp.flow_alias_summaries[0].id #=> String
3756
+ # resp.flow_alias_summaries[0].name #=> String
3757
+ # resp.flow_alias_summaries[0].routing_configuration #=> Array
3758
+ # resp.flow_alias_summaries[0].routing_configuration[0].flow_version #=> String
3759
+ # resp.flow_alias_summaries[0].updated_at #=> Time
3760
+ # resp.next_token #=> String
3761
+ #
3762
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListFlowAliases AWS API Documentation
3763
+ #
3764
+ # @overload list_flow_aliases(params = {})
3765
+ # @param [Hash] params ({})
3766
+ def list_flow_aliases(params = {}, options = {})
3767
+ req = build_request(:list_flow_aliases, params)
3768
+ req.send_request(options)
3769
+ end
3770
+
3771
+ # Returns a list of information about each flow. For more information,
3772
+ # see [Deploy a flow in Amazon Bedrock][1] in the Amazon Bedrock User
3773
+ # Guide.
3774
+ #
3775
+ #
3776
+ #
3777
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-deploy.html
3778
+ #
3779
+ # @option params [required, String] :flow_identifier
3780
+ # The unique identifier of the flow.
2175
3781
  #
2176
3782
  # @option params [Integer] :max_results
2177
3783
  # The maximum number of results to return in the response. If the total
@@ -2185,48 +3791,47 @@ module Aws::BedrockAgent
2185
3791
  # field in the response in this field to return the next batch of
2186
3792
  # results.
2187
3793
  #
2188
- # @return [Types::ListAgentsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3794
+ # @return [Types::ListFlowVersionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2189
3795
  #
2190
- # * {Types::ListAgentsResponse#agent_summaries #agent_summaries} => Array&lt;Types::AgentSummary&gt;
2191
- # * {Types::ListAgentsResponse#next_token #next_token} => String
3796
+ # * {Types::ListFlowVersionsResponse#flow_version_summaries #flow_version_summaries} => Array&lt;Types::FlowVersionSummary&gt;
3797
+ # * {Types::ListFlowVersionsResponse#next_token #next_token} => String
2192
3798
  #
2193
3799
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2194
3800
  #
2195
3801
  # @example Request syntax with placeholder values
2196
3802
  #
2197
- # resp = client.list_agents({
3803
+ # resp = client.list_flow_versions({
3804
+ # flow_identifier: "FlowIdentifier", # required
2198
3805
  # max_results: 1,
2199
3806
  # next_token: "NextToken",
2200
3807
  # })
2201
3808
  #
2202
3809
  # @example Response structure
2203
3810
  #
2204
- # resp.agent_summaries #=> Array
2205
- # resp.agent_summaries[0].agent_id #=> String
2206
- # resp.agent_summaries[0].agent_name #=> String
2207
- # resp.agent_summaries[0].agent_status #=> String, one of "CREATING", "PREPARING", "PREPARED", "NOT_PREPARED", "DELETING", "FAILED", "VERSIONING", "UPDATING"
2208
- # resp.agent_summaries[0].description #=> String
2209
- # resp.agent_summaries[0].guardrail_configuration.guardrail_identifier #=> String
2210
- # resp.agent_summaries[0].guardrail_configuration.guardrail_version #=> String
2211
- # resp.agent_summaries[0].latest_agent_version #=> String
2212
- # resp.agent_summaries[0].updated_at #=> Time
3811
+ # resp.flow_version_summaries #=> Array
3812
+ # resp.flow_version_summaries[0].arn #=> String
3813
+ # resp.flow_version_summaries[0].created_at #=> Time
3814
+ # resp.flow_version_summaries[0].id #=> String
3815
+ # resp.flow_version_summaries[0].status #=> String, one of "Failed", "Prepared", "Preparing", "NotPrepared"
3816
+ # resp.flow_version_summaries[0].version #=> String
2213
3817
  # resp.next_token #=> String
2214
3818
  #
2215
- # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListAgents AWS API Documentation
3819
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListFlowVersions AWS API Documentation
2216
3820
  #
2217
- # @overload list_agents(params = {})
3821
+ # @overload list_flow_versions(params = {})
2218
3822
  # @param [Hash] params ({})
2219
- def list_agents(params = {}, options = {})
2220
- req = build_request(:list_agents, params)
3823
+ def list_flow_versions(params = {}, options = {})
3824
+ req = build_request(:list_flow_versions, params)
2221
3825
  req.send_request(options)
2222
3826
  end
2223
3827
 
2224
- # Lists the data sources in a knowledge base and information about each
2225
- # one.
3828
+ # Returns a list of flows and information about each flow. For more
3829
+ # information, see [Manage a flow in Amazon Bedrock][1] in the Amazon
3830
+ # Bedrock User Guide.
2226
3831
  #
2227
- # @option params [required, String] :knowledge_base_id
2228
- # The unique identifier of the knowledge base for which to return a list
2229
- # of information.
3832
+ #
3833
+ #
3834
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-manage.html
2230
3835
  #
2231
3836
  # @option params [Integer] :max_results
2232
3837
  # The maximum number of results to return in the response. If the total
@@ -2240,38 +3845,39 @@ module Aws::BedrockAgent
2240
3845
  # field in the response in this field to return the next batch of
2241
3846
  # results.
2242
3847
  #
2243
- # @return [Types::ListDataSourcesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3848
+ # @return [Types::ListFlowsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2244
3849
  #
2245
- # * {Types::ListDataSourcesResponse#data_source_summaries #data_source_summaries} => Array&lt;Types::DataSourceSummary&gt;
2246
- # * {Types::ListDataSourcesResponse#next_token #next_token} => String
3850
+ # * {Types::ListFlowsResponse#flow_summaries #flow_summaries} => Array&lt;Types::FlowSummary&gt;
3851
+ # * {Types::ListFlowsResponse#next_token #next_token} => String
2247
3852
  #
2248
3853
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2249
3854
  #
2250
3855
  # @example Request syntax with placeholder values
2251
3856
  #
2252
- # resp = client.list_data_sources({
2253
- # knowledge_base_id: "Id", # required
3857
+ # resp = client.list_flows({
2254
3858
  # max_results: 1,
2255
3859
  # next_token: "NextToken",
2256
3860
  # })
2257
3861
  #
2258
3862
  # @example Response structure
2259
3863
  #
2260
- # resp.data_source_summaries #=> Array
2261
- # resp.data_source_summaries[0].data_source_id #=> String
2262
- # resp.data_source_summaries[0].description #=> String
2263
- # resp.data_source_summaries[0].knowledge_base_id #=> String
2264
- # resp.data_source_summaries[0].name #=> String
2265
- # resp.data_source_summaries[0].status #=> String, one of "AVAILABLE", "DELETING", "DELETE_UNSUCCESSFUL"
2266
- # resp.data_source_summaries[0].updated_at #=> Time
3864
+ # resp.flow_summaries #=> Array
3865
+ # resp.flow_summaries[0].arn #=> String
3866
+ # resp.flow_summaries[0].created_at #=> Time
3867
+ # resp.flow_summaries[0].description #=> String
3868
+ # resp.flow_summaries[0].id #=> String
3869
+ # resp.flow_summaries[0].name #=> String
3870
+ # resp.flow_summaries[0].status #=> String, one of "Failed", "Prepared", "Preparing", "NotPrepared"
3871
+ # resp.flow_summaries[0].updated_at #=> Time
3872
+ # resp.flow_summaries[0].version #=> String
2267
3873
  # resp.next_token #=> String
2268
3874
  #
2269
- # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListDataSources AWS API Documentation
3875
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListFlows AWS API Documentation
2270
3876
  #
2271
- # @overload list_data_sources(params = {})
3877
+ # @overload list_flows(params = {})
2272
3878
  # @param [Hash] params ({})
2273
- def list_data_sources(params = {}, options = {})
2274
- req = build_request(:list_data_sources, params)
3879
+ def list_flows(params = {}, options = {})
3880
+ req = build_request(:list_flows, params)
2275
3881
  req.send_request(options)
2276
3882
  end
2277
3883
 
@@ -2407,6 +4013,66 @@ module Aws::BedrockAgent
2407
4013
  req.send_request(options)
2408
4014
  end
2409
4015
 
4016
+ # Returns a list of prompts from the Prompt management tool and
4017
+ # information about each prompt. For more information, see [View
4018
+ # information about prompts using Prompt management][1] in the Amazon
4019
+ # Bedrock User Guide.
4020
+ #
4021
+ #
4022
+ #
4023
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-manage.html#prompt-management-view.html
4024
+ #
4025
+ # @option params [Integer] :max_results
4026
+ # The maximum number of results to return in the response. If the total
4027
+ # number of results is greater than this value, use the token returned
4028
+ # in the response in the `nextToken` field when making another request
4029
+ # to return the next batch of results.
4030
+ #
4031
+ # @option params [String] :next_token
4032
+ # If the total number of results is greater than the `maxResults` value
4033
+ # provided in the request, enter the token returned in the `nextToken`
4034
+ # field in the response in this field to return the next batch of
4035
+ # results.
4036
+ #
4037
+ # @option params [String] :prompt_identifier
4038
+ # The unique identifier of the prompt.
4039
+ #
4040
+ # @return [Types::ListPromptsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4041
+ #
4042
+ # * {Types::ListPromptsResponse#next_token #next_token} => String
4043
+ # * {Types::ListPromptsResponse#prompt_summaries #prompt_summaries} => Array&lt;Types::PromptSummary&gt;
4044
+ #
4045
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4046
+ #
4047
+ # @example Request syntax with placeholder values
4048
+ #
4049
+ # resp = client.list_prompts({
4050
+ # max_results: 1,
4051
+ # next_token: "NextToken",
4052
+ # prompt_identifier: "PromptIdentifier",
4053
+ # })
4054
+ #
4055
+ # @example Response structure
4056
+ #
4057
+ # resp.next_token #=> String
4058
+ # resp.prompt_summaries #=> Array
4059
+ # resp.prompt_summaries[0].arn #=> String
4060
+ # resp.prompt_summaries[0].created_at #=> Time
4061
+ # resp.prompt_summaries[0].description #=> String
4062
+ # resp.prompt_summaries[0].id #=> String
4063
+ # resp.prompt_summaries[0].name #=> String
4064
+ # resp.prompt_summaries[0].updated_at #=> Time
4065
+ # resp.prompt_summaries[0].version #=> String
4066
+ #
4067
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/ListPrompts AWS API Documentation
4068
+ #
4069
+ # @overload list_prompts(params = {})
4070
+ # @param [Hash] params ({})
4071
+ def list_prompts(params = {}, options = {})
4072
+ req = build_request(:list_prompts, params)
4073
+ req.send_request(options)
4074
+ end
4075
+
2410
4076
  # List all the tags for the resource you specify.
2411
4077
  #
2412
4078
  # @option params [required, String] :resource_arn
@@ -2472,6 +4138,42 @@ module Aws::BedrockAgent
2472
4138
  req.send_request(options)
2473
4139
  end
2474
4140
 
4141
+ # Prepares the `DRAFT` version of a flow so that it can be invoked. For
4142
+ # more information, see [Test a flow in Amazon Bedrock][1] in the Amazon
4143
+ # Bedrock User Guide.
4144
+ #
4145
+ #
4146
+ #
4147
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-test.html
4148
+ #
4149
+ # @option params [required, String] :flow_identifier
4150
+ # The unique identifier of the flow.
4151
+ #
4152
+ # @return [Types::PrepareFlowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4153
+ #
4154
+ # * {Types::PrepareFlowResponse#id #id} => String
4155
+ # * {Types::PrepareFlowResponse#status #status} => String
4156
+ #
4157
+ # @example Request syntax with placeholder values
4158
+ #
4159
+ # resp = client.prepare_flow({
4160
+ # flow_identifier: "FlowIdentifier", # required
4161
+ # })
4162
+ #
4163
+ # @example Response structure
4164
+ #
4165
+ # resp.id #=> String
4166
+ # resp.status #=> String, one of "Failed", "Prepared", "Preparing", "NotPrepared"
4167
+ #
4168
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/PrepareFlow AWS API Documentation
4169
+ #
4170
+ # @overload prepare_flow(params = {})
4171
+ # @param [Hash] params ({})
4172
+ def prepare_flow(params = {}, options = {})
4173
+ req = build_request(:prepare_flow, params)
4174
+ req.send_request(options)
4175
+ end
4176
+
2475
4177
  # Begins an ingestion job, in which a data source is added to a
2476
4178
  # knowledge base.
2477
4179
  #
@@ -2639,6 +4341,9 @@ module Aws::BedrockAgent
2639
4341
  # Specifies new instructions that tell the agent what it should do and
2640
4342
  # how it should interact with users.
2641
4343
  #
4344
+ # @option params [Types::MemoryConfiguration] :memory_configuration
4345
+ # Specifies the new memory configuration for the agent.
4346
+ #
2642
4347
  # @option params [Types::PromptOverrideConfiguration] :prompt_override_configuration
2643
4348
  # Contains configurations to override prompts in different parts of an
2644
4349
  # agent sequence. For more information, see [Advanced prompts][1].
@@ -2666,6 +4371,10 @@ module Aws::BedrockAgent
2666
4371
  # },
2667
4372
  # idle_session_ttl_in_seconds: 1,
2668
4373
  # instruction: "Instruction",
4374
+ # memory_configuration: {
4375
+ # enabled_memory_types: ["SESSION_SUMMARY"], # required, accepts SESSION_SUMMARY
4376
+ # storage_days: 1,
4377
+ # },
2669
4378
  # prompt_override_configuration: {
2670
4379
  # override_lambda: "LambdaArn",
2671
4380
  # prompt_configurations: [ # required
@@ -2706,6 +4415,9 @@ module Aws::BedrockAgent
2706
4415
  # resp.agent.guardrail_configuration.guardrail_version #=> String
2707
4416
  # resp.agent.idle_session_ttl_in_seconds #=> Integer
2708
4417
  # resp.agent.instruction #=> String
4418
+ # resp.agent.memory_configuration.enabled_memory_types #=> Array
4419
+ # resp.agent.memory_configuration.enabled_memory_types[0] #=> String, one of "SESSION_SUMMARY"
4420
+ # resp.agent.memory_configuration.storage_days #=> Integer
2709
4421
  # resp.agent.prepared_at #=> Time
2710
4422
  # resp.agent.prompt_override_configuration.override_lambda #=> String
2711
4423
  # resp.agent.prompt_override_configuration.prompt_configurations #=> Array
@@ -2832,7 +4544,7 @@ module Aws::BedrockAgent
2832
4544
  # },
2833
4545
  # ],
2834
4546
  # },
2835
- # parent_action_group_signature: "AMAZON.UserInput", # accepts AMAZON.UserInput
4547
+ # parent_action_group_signature: "AMAZON.UserInput", # accepts AMAZON.UserInput, AMAZON.CodeInterpreter
2836
4548
  # })
2837
4549
  #
2838
4550
  # @example Response structure
@@ -2857,7 +4569,7 @@ module Aws::BedrockAgent
2857
4569
  # resp.agent_action_group.function_schema.functions[0].parameters["Name"].description #=> String
2858
4570
  # resp.agent_action_group.function_schema.functions[0].parameters["Name"].required #=> Boolean
2859
4571
  # resp.agent_action_group.function_schema.functions[0].parameters["Name"].type #=> String, one of "string", "number", "integer", "boolean", "array"
2860
- # resp.agent_action_group.parent_action_signature #=> String, one of "AMAZON.UserInput"
4572
+ # resp.agent_action_group.parent_action_signature #=> String, one of "AMAZON.UserInput", "AMAZON.CodeInterpreter"
2861
4573
  # resp.agent_action_group.updated_at #=> Time
2862
4574
  #
2863
4575
  # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateAgentActionGroup AWS API Documentation
@@ -2997,16 +4709,17 @@ module Aws::BedrockAgent
2997
4709
  req.send_request(options)
2998
4710
  end
2999
4711
 
3000
- # Updates configurations for a data source.
4712
+ # Updates the configurations for a data source connector.
3001
4713
  #
3002
4714
  # You can't change the `chunkingConfiguration` after you create the
3003
- # data source. Specify the existing `chunkingConfiguration`.
4715
+ # data source connector. Specify the existing `chunkingConfiguration`.
3004
4716
  #
3005
4717
  # @option params [String] :data_deletion_policy
3006
- # The data deletion policy of the updated data source.
4718
+ # The data deletion policy for the data source that you want to update.
3007
4719
  #
3008
4720
  # @option params [required, Types::DataSourceConfiguration] :data_source_configuration
3009
- # Contains details about the storage configuration of the data source.
4721
+ # The connection configuration for the data source that you want to
4722
+ # update.
3010
4723
  #
3011
4724
  # @option params [required, String] :data_source_id
3012
4725
  # The unique identifier of the data source.
@@ -3015,8 +4728,7 @@ module Aws::BedrockAgent
3015
4728
  # Specifies a new description for the data source.
3016
4729
  #
3017
4730
  # @option params [required, String] :knowledge_base_id
3018
- # The unique identifier of the knowledge base to which the data source
3019
- # belongs.
4731
+ # The unique identifier of the knowledge base for the data source.
3020
4732
  #
3021
4733
  # @option params [required, String] :name
3022
4734
  # Specifies a new name for the data source.
@@ -3036,12 +4748,98 @@ module Aws::BedrockAgent
3036
4748
  # resp = client.update_data_source({
3037
4749
  # data_deletion_policy: "RETAIN", # accepts RETAIN, DELETE
3038
4750
  # data_source_configuration: { # required
4751
+ # confluence_configuration: {
4752
+ # crawler_configuration: {
4753
+ # filter_configuration: {
4754
+ # pattern_object_filter: {
4755
+ # filters: [ # required
4756
+ # {
4757
+ # exclusion_filters: ["FilterPattern"],
4758
+ # inclusion_filters: ["FilterPattern"],
4759
+ # object_type: "FilteredObjectType", # required
4760
+ # },
4761
+ # ],
4762
+ # },
4763
+ # type: "PATTERN", # required, accepts PATTERN
4764
+ # },
4765
+ # },
4766
+ # source_configuration: { # required
4767
+ # auth_type: "BASIC", # required, accepts BASIC, OAUTH2_CLIENT_CREDENTIALS
4768
+ # credentials_secret_arn: "SecretArn", # required
4769
+ # host_type: "SAAS", # required, accepts SAAS
4770
+ # host_url: "HttpsUrl", # required
4771
+ # },
4772
+ # },
3039
4773
  # s3_configuration: {
3040
4774
  # bucket_arn: "S3BucketArn", # required
3041
4775
  # bucket_owner_account_id: "BucketOwnerAccountId",
3042
4776
  # inclusion_prefixes: ["S3Prefix"],
3043
4777
  # },
3044
- # type: "S3", # required, accepts S3
4778
+ # salesforce_configuration: {
4779
+ # crawler_configuration: {
4780
+ # filter_configuration: {
4781
+ # pattern_object_filter: {
4782
+ # filters: [ # required
4783
+ # {
4784
+ # exclusion_filters: ["FilterPattern"],
4785
+ # inclusion_filters: ["FilterPattern"],
4786
+ # object_type: "FilteredObjectType", # required
4787
+ # },
4788
+ # ],
4789
+ # },
4790
+ # type: "PATTERN", # required, accepts PATTERN
4791
+ # },
4792
+ # },
4793
+ # source_configuration: { # required
4794
+ # auth_type: "OAUTH2_CLIENT_CREDENTIALS", # required, accepts OAUTH2_CLIENT_CREDENTIALS
4795
+ # credentials_secret_arn: "SecretArn", # required
4796
+ # host_url: "HttpsUrl", # required
4797
+ # },
4798
+ # },
4799
+ # share_point_configuration: {
4800
+ # crawler_configuration: {
4801
+ # filter_configuration: {
4802
+ # pattern_object_filter: {
4803
+ # filters: [ # required
4804
+ # {
4805
+ # exclusion_filters: ["FilterPattern"],
4806
+ # inclusion_filters: ["FilterPattern"],
4807
+ # object_type: "FilteredObjectType", # required
4808
+ # },
4809
+ # ],
4810
+ # },
4811
+ # type: "PATTERN", # required, accepts PATTERN
4812
+ # },
4813
+ # },
4814
+ # source_configuration: { # required
4815
+ # auth_type: "OAUTH2_CLIENT_CREDENTIALS", # required, accepts OAUTH2_CLIENT_CREDENTIALS
4816
+ # credentials_secret_arn: "SecretArn", # required
4817
+ # domain: "SharePointDomain", # required
4818
+ # host_type: "ONLINE", # required, accepts ONLINE
4819
+ # site_urls: ["HttpsUrl"], # required
4820
+ # tenant_id: "Microsoft365TenantId",
4821
+ # },
4822
+ # },
4823
+ # type: "S3", # required, accepts S3, WEB, CONFLUENCE, SALESFORCE, SHAREPOINT
4824
+ # web_configuration: {
4825
+ # crawler_configuration: {
4826
+ # crawler_limits: {
4827
+ # rate_limit: 1,
4828
+ # },
4829
+ # exclusion_filters: ["FilterPattern"],
4830
+ # inclusion_filters: ["FilterPattern"],
4831
+ # scope: "HOST_ONLY", # accepts HOST_ONLY, SUBDOMAINS
4832
+ # },
4833
+ # source_configuration: { # required
4834
+ # url_configuration: { # required
4835
+ # seed_urls: [
4836
+ # {
4837
+ # url: "Url",
4838
+ # },
4839
+ # ],
4840
+ # },
4841
+ # },
4842
+ # },
3045
4843
  # },
3046
4844
  # data_source_id: "Id", # required
3047
4845
  # description: "Description",
@@ -3052,11 +4850,50 @@ module Aws::BedrockAgent
3052
4850
  # },
3053
4851
  # vector_ingestion_configuration: {
3054
4852
  # chunking_configuration: {
3055
- # chunking_strategy: "FIXED_SIZE", # required, accepts FIXED_SIZE, NONE
4853
+ # chunking_strategy: "FIXED_SIZE", # required, accepts FIXED_SIZE, NONE, HIERARCHICAL, SEMANTIC
3056
4854
  # fixed_size_chunking_configuration: {
3057
4855
  # max_tokens: 1, # required
3058
4856
  # overlap_percentage: 1, # required
3059
4857
  # },
4858
+ # hierarchical_chunking_configuration: {
4859
+ # level_configurations: [ # required
4860
+ # {
4861
+ # max_tokens: 1, # required
4862
+ # },
4863
+ # ],
4864
+ # overlap_tokens: 1, # required
4865
+ # },
4866
+ # semantic_chunking_configuration: {
4867
+ # breakpoint_percentile_threshold: 1, # required
4868
+ # buffer_size: 1, # required
4869
+ # max_tokens: 1, # required
4870
+ # },
4871
+ # },
4872
+ # custom_transformation_configuration: {
4873
+ # intermediate_storage: { # required
4874
+ # s3_location: { # required
4875
+ # uri: "S3BucketUri", # required
4876
+ # },
4877
+ # },
4878
+ # transformations: [ # required
4879
+ # {
4880
+ # step_to_apply: "POST_CHUNKING", # required, accepts POST_CHUNKING
4881
+ # transformation_function: { # required
4882
+ # transformation_lambda_configuration: { # required
4883
+ # lambda_arn: "LambdaArn", # required
4884
+ # },
4885
+ # },
4886
+ # },
4887
+ # ],
4888
+ # },
4889
+ # parsing_configuration: {
4890
+ # bedrock_foundation_model_configuration: {
4891
+ # model_arn: "BedrockModelArn", # required
4892
+ # parsing_prompt: {
4893
+ # parsing_prompt_text: "ParsingPromptText", # required
4894
+ # },
4895
+ # },
4896
+ # parsing_strategy: "BEDROCK_FOUNDATION_MODEL", # required, accepts BEDROCK_FOUNDATION_MODEL
3060
4897
  # },
3061
4898
  # },
3062
4899
  # })
@@ -3065,11 +4902,54 @@ module Aws::BedrockAgent
3065
4902
  #
3066
4903
  # resp.data_source.created_at #=> Time
3067
4904
  # resp.data_source.data_deletion_policy #=> String, one of "RETAIN", "DELETE"
4905
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters #=> Array
4906
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters #=> Array
4907
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters[0] #=> String
4908
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters #=> Array
4909
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters[0] #=> String
4910
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].object_type #=> String
4911
+ # resp.data_source.data_source_configuration.confluence_configuration.crawler_configuration.filter_configuration.type #=> String, one of "PATTERN"
4912
+ # resp.data_source.data_source_configuration.confluence_configuration.source_configuration.auth_type #=> String, one of "BASIC", "OAUTH2_CLIENT_CREDENTIALS"
4913
+ # resp.data_source.data_source_configuration.confluence_configuration.source_configuration.credentials_secret_arn #=> String
4914
+ # resp.data_source.data_source_configuration.confluence_configuration.source_configuration.host_type #=> String, one of "SAAS"
4915
+ # resp.data_source.data_source_configuration.confluence_configuration.source_configuration.host_url #=> String
3068
4916
  # resp.data_source.data_source_configuration.s3_configuration.bucket_arn #=> String
3069
4917
  # resp.data_source.data_source_configuration.s3_configuration.bucket_owner_account_id #=> String
3070
4918
  # resp.data_source.data_source_configuration.s3_configuration.inclusion_prefixes #=> Array
3071
4919
  # resp.data_source.data_source_configuration.s3_configuration.inclusion_prefixes[0] #=> String
3072
- # resp.data_source.data_source_configuration.type #=> String, one of "S3"
4920
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters #=> Array
4921
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters #=> Array
4922
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters[0] #=> String
4923
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters #=> Array
4924
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters[0] #=> String
4925
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].object_type #=> String
4926
+ # resp.data_source.data_source_configuration.salesforce_configuration.crawler_configuration.filter_configuration.type #=> String, one of "PATTERN"
4927
+ # resp.data_source.data_source_configuration.salesforce_configuration.source_configuration.auth_type #=> String, one of "OAUTH2_CLIENT_CREDENTIALS"
4928
+ # resp.data_source.data_source_configuration.salesforce_configuration.source_configuration.credentials_secret_arn #=> String
4929
+ # resp.data_source.data_source_configuration.salesforce_configuration.source_configuration.host_url #=> String
4930
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters #=> Array
4931
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters #=> Array
4932
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].exclusion_filters[0] #=> String
4933
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters #=> Array
4934
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].inclusion_filters[0] #=> String
4935
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.pattern_object_filter.filters[0].object_type #=> String
4936
+ # resp.data_source.data_source_configuration.share_point_configuration.crawler_configuration.filter_configuration.type #=> String, one of "PATTERN"
4937
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.auth_type #=> String, one of "OAUTH2_CLIENT_CREDENTIALS"
4938
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.credentials_secret_arn #=> String
4939
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.domain #=> String
4940
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.host_type #=> String, one of "ONLINE"
4941
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.site_urls #=> Array
4942
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.site_urls[0] #=> String
4943
+ # resp.data_source.data_source_configuration.share_point_configuration.source_configuration.tenant_id #=> String
4944
+ # resp.data_source.data_source_configuration.type #=> String, one of "S3", "WEB", "CONFLUENCE", "SALESFORCE", "SHAREPOINT"
4945
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.crawler_limits.rate_limit #=> Integer
4946
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.exclusion_filters #=> Array
4947
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.exclusion_filters[0] #=> String
4948
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.inclusion_filters #=> Array
4949
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.inclusion_filters[0] #=> String
4950
+ # resp.data_source.data_source_configuration.web_configuration.crawler_configuration.scope #=> String, one of "HOST_ONLY", "SUBDOMAINS"
4951
+ # resp.data_source.data_source_configuration.web_configuration.source_configuration.url_configuration.seed_urls #=> Array
4952
+ # resp.data_source.data_source_configuration.web_configuration.source_configuration.url_configuration.seed_urls[0].url #=> String
3073
4953
  # resp.data_source.data_source_id #=> String
3074
4954
  # resp.data_source.description #=> String
3075
4955
  # resp.data_source.failure_reasons #=> Array
@@ -3079,9 +4959,22 @@ module Aws::BedrockAgent
3079
4959
  # resp.data_source.server_side_encryption_configuration.kms_key_arn #=> String
3080
4960
  # resp.data_source.status #=> String, one of "AVAILABLE", "DELETING", "DELETE_UNSUCCESSFUL"
3081
4961
  # resp.data_source.updated_at #=> Time
3082
- # resp.data_source.vector_ingestion_configuration.chunking_configuration.chunking_strategy #=> String, one of "FIXED_SIZE", "NONE"
4962
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.chunking_strategy #=> String, one of "FIXED_SIZE", "NONE", "HIERARCHICAL", "SEMANTIC"
3083
4963
  # resp.data_source.vector_ingestion_configuration.chunking_configuration.fixed_size_chunking_configuration.max_tokens #=> Integer
3084
4964
  # resp.data_source.vector_ingestion_configuration.chunking_configuration.fixed_size_chunking_configuration.overlap_percentage #=> Integer
4965
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.level_configurations #=> Array
4966
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.level_configurations[0].max_tokens #=> Integer
4967
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.overlap_tokens #=> Integer
4968
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.breakpoint_percentile_threshold #=> Integer
4969
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.buffer_size #=> Integer
4970
+ # resp.data_source.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.max_tokens #=> Integer
4971
+ # resp.data_source.vector_ingestion_configuration.custom_transformation_configuration.intermediate_storage.s3_location.uri #=> String
4972
+ # resp.data_source.vector_ingestion_configuration.custom_transformation_configuration.transformations #=> Array
4973
+ # resp.data_source.vector_ingestion_configuration.custom_transformation_configuration.transformations[0].step_to_apply #=> String, one of "POST_CHUNKING"
4974
+ # resp.data_source.vector_ingestion_configuration.custom_transformation_configuration.transformations[0].transformation_function.transformation_lambda_configuration.lambda_arn #=> String
4975
+ # resp.data_source.vector_ingestion_configuration.parsing_configuration.bedrock_foundation_model_configuration.model_arn #=> String
4976
+ # resp.data_source.vector_ingestion_configuration.parsing_configuration.bedrock_foundation_model_configuration.parsing_prompt.parsing_prompt_text #=> String
4977
+ # resp.data_source.vector_ingestion_configuration.parsing_configuration.parsing_strategy #=> String, one of "BEDROCK_FOUNDATION_MODEL"
3085
4978
  #
3086
4979
  # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateDataSource AWS API Documentation
3087
4980
  #
@@ -3092,6 +4985,311 @@ module Aws::BedrockAgent
3092
4985
  req.send_request(options)
3093
4986
  end
3094
4987
 
4988
+ # Modifies a flow. Include both fields that you want to keep and fields
4989
+ # that you want to change. For more information, see [How it works][1]
4990
+ # and [Create a flow in Amazon Bedrock][2] in the Amazon Bedrock User
4991
+ # Guide.
4992
+ #
4993
+ #
4994
+ #
4995
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-how-it-works.html
4996
+ # [2]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-create.html
4997
+ #
4998
+ # @option params [String] :customer_encryption_key_arn
4999
+ # The Amazon Resource Name (ARN) of the KMS key to encrypt the flow.
5000
+ #
5001
+ # @option params [Types::FlowDefinition] :definition
5002
+ # A definition of the nodes and the connections between the nodes in the
5003
+ # flow.
5004
+ #
5005
+ # @option params [String] :description
5006
+ # A description for the flow.
5007
+ #
5008
+ # @option params [required, String] :execution_role_arn
5009
+ # The Amazon Resource Name (ARN) of the service role with permissions to
5010
+ # create and manage a flow. For more information, see [Create a service
5011
+ # role for flows in Amazon Bedrock][1] in the Amazon Bedrock User Guide.
5012
+ #
5013
+ #
5014
+ #
5015
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html
5016
+ #
5017
+ # @option params [required, String] :flow_identifier
5018
+ # The unique identifier of the flow.
5019
+ #
5020
+ # @option params [required, String] :name
5021
+ # A name for the flow.
5022
+ #
5023
+ # @return [Types::UpdateFlowResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5024
+ #
5025
+ # * {Types::UpdateFlowResponse#arn #arn} => String
5026
+ # * {Types::UpdateFlowResponse#created_at #created_at} => Time
5027
+ # * {Types::UpdateFlowResponse#customer_encryption_key_arn #customer_encryption_key_arn} => String
5028
+ # * {Types::UpdateFlowResponse#definition #definition} => Types::FlowDefinition
5029
+ # * {Types::UpdateFlowResponse#description #description} => String
5030
+ # * {Types::UpdateFlowResponse#execution_role_arn #execution_role_arn} => String
5031
+ # * {Types::UpdateFlowResponse#id #id} => String
5032
+ # * {Types::UpdateFlowResponse#name #name} => String
5033
+ # * {Types::UpdateFlowResponse#status #status} => String
5034
+ # * {Types::UpdateFlowResponse#updated_at #updated_at} => Time
5035
+ # * {Types::UpdateFlowResponse#version #version} => String
5036
+ #
5037
+ # @example Request syntax with placeholder values
5038
+ #
5039
+ # resp = client.update_flow({
5040
+ # customer_encryption_key_arn: "KmsKeyArn",
5041
+ # definition: {
5042
+ # connections: [
5043
+ # {
5044
+ # configuration: {
5045
+ # conditional: {
5046
+ # condition: "FlowConditionName", # required
5047
+ # },
5048
+ # data: {
5049
+ # source_output: "FlowNodeOutputName", # required
5050
+ # target_input: "FlowNodeInputName", # required
5051
+ # },
5052
+ # },
5053
+ # name: "FlowConnectionName", # required
5054
+ # source: "FlowNodeName", # required
5055
+ # target: "FlowNodeName", # required
5056
+ # type: "Data", # required, accepts Data, Conditional
5057
+ # },
5058
+ # ],
5059
+ # nodes: [
5060
+ # {
5061
+ # configuration: {
5062
+ # agent: {
5063
+ # agent_alias_arn: "AgentAliasArn", # required
5064
+ # },
5065
+ # collector: {
5066
+ # },
5067
+ # condition: {
5068
+ # conditions: [ # required
5069
+ # {
5070
+ # expression: "FlowConditionExpression",
5071
+ # name: "FlowConditionName", # required
5072
+ # },
5073
+ # ],
5074
+ # },
5075
+ # input: {
5076
+ # },
5077
+ # iterator: {
5078
+ # },
5079
+ # knowledge_base: {
5080
+ # knowledge_base_id: "KnowledgeBaseId", # required
5081
+ # model_id: "ModelIdentifier",
5082
+ # },
5083
+ # lambda_function: {
5084
+ # lambda_arn: "LambdaArn", # required
5085
+ # },
5086
+ # lex: {
5087
+ # bot_alias_arn: "LexBotAliasArn", # required
5088
+ # locale_id: "LexBotLocaleId", # required
5089
+ # },
5090
+ # output: {
5091
+ # },
5092
+ # prompt: {
5093
+ # source_configuration: { # required
5094
+ # inline: {
5095
+ # inference_configuration: {
5096
+ # text: {
5097
+ # max_tokens: 1,
5098
+ # stop_sequences: ["String"],
5099
+ # temperature: 1.0,
5100
+ # top_k: 1,
5101
+ # top_p: 1.0,
5102
+ # },
5103
+ # },
5104
+ # model_id: "PromptModelIdentifier", # required
5105
+ # template_configuration: { # required
5106
+ # text: {
5107
+ # input_variables: [
5108
+ # {
5109
+ # name: "PromptInputVariableName",
5110
+ # },
5111
+ # ],
5112
+ # text: "TextPrompt", # required
5113
+ # },
5114
+ # },
5115
+ # template_type: "TEXT", # required, accepts TEXT
5116
+ # },
5117
+ # resource: {
5118
+ # prompt_arn: "PromptArn", # required
5119
+ # },
5120
+ # },
5121
+ # },
5122
+ # retrieval: {
5123
+ # service_configuration: { # required
5124
+ # s3: {
5125
+ # bucket_name: "S3BucketName", # required
5126
+ # },
5127
+ # },
5128
+ # },
5129
+ # storage: {
5130
+ # service_configuration: { # required
5131
+ # s3: {
5132
+ # bucket_name: "S3BucketName", # required
5133
+ # },
5134
+ # },
5135
+ # },
5136
+ # },
5137
+ # inputs: [
5138
+ # {
5139
+ # expression: "FlowNodeInputExpression", # required
5140
+ # name: "FlowNodeInputName", # required
5141
+ # type: "String", # required, accepts String, Number, Boolean, Object, Array
5142
+ # },
5143
+ # ],
5144
+ # name: "FlowNodeName", # required
5145
+ # outputs: [
5146
+ # {
5147
+ # name: "FlowNodeOutputName", # required
5148
+ # type: "String", # required, accepts String, Number, Boolean, Object, Array
5149
+ # },
5150
+ # ],
5151
+ # type: "Input", # required, accepts Input, Output, KnowledgeBase, Condition, Lex, Prompt, LambdaFunction, Storage, Agent, Retrieval, Iterator, Collector
5152
+ # },
5153
+ # ],
5154
+ # },
5155
+ # description: "FlowDescription",
5156
+ # execution_role_arn: "FlowExecutionRoleArn", # required
5157
+ # flow_identifier: "FlowIdentifier", # required
5158
+ # name: "FlowName", # required
5159
+ # })
5160
+ #
5161
+ # @example Response structure
5162
+ #
5163
+ # resp.arn #=> String
5164
+ # resp.created_at #=> Time
5165
+ # resp.customer_encryption_key_arn #=> String
5166
+ # resp.definition.connections #=> Array
5167
+ # resp.definition.connections[0].configuration.conditional.condition #=> String
5168
+ # resp.definition.connections[0].configuration.data.source_output #=> String
5169
+ # resp.definition.connections[0].configuration.data.target_input #=> String
5170
+ # resp.definition.connections[0].name #=> String
5171
+ # resp.definition.connections[0].source #=> String
5172
+ # resp.definition.connections[0].target #=> String
5173
+ # resp.definition.connections[0].type #=> String, one of "Data", "Conditional"
5174
+ # resp.definition.nodes #=> Array
5175
+ # resp.definition.nodes[0].configuration.agent.agent_alias_arn #=> String
5176
+ # resp.definition.nodes[0].configuration.condition.conditions #=> Array
5177
+ # resp.definition.nodes[0].configuration.condition.conditions[0].expression #=> String
5178
+ # resp.definition.nodes[0].configuration.condition.conditions[0].name #=> String
5179
+ # resp.definition.nodes[0].configuration.knowledge_base.knowledge_base_id #=> String
5180
+ # resp.definition.nodes[0].configuration.knowledge_base.model_id #=> String
5181
+ # resp.definition.nodes[0].configuration.lambda_function.lambda_arn #=> String
5182
+ # resp.definition.nodes[0].configuration.lex.bot_alias_arn #=> String
5183
+ # resp.definition.nodes[0].configuration.lex.locale_id #=> String
5184
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.max_tokens #=> Integer
5185
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.stop_sequences #=> Array
5186
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.stop_sequences[0] #=> String
5187
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.temperature #=> Float
5188
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.top_k #=> Integer
5189
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.inference_configuration.text.top_p #=> Float
5190
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.model_id #=> String
5191
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_configuration.text.input_variables #=> Array
5192
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_configuration.text.input_variables[0].name #=> String
5193
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_configuration.text.text #=> String
5194
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.inline.template_type #=> String, one of "TEXT"
5195
+ # resp.definition.nodes[0].configuration.prompt.source_configuration.resource.prompt_arn #=> String
5196
+ # resp.definition.nodes[0].configuration.retrieval.service_configuration.s3.bucket_name #=> String
5197
+ # resp.definition.nodes[0].configuration.storage.service_configuration.s3.bucket_name #=> String
5198
+ # resp.definition.nodes[0].inputs #=> Array
5199
+ # resp.definition.nodes[0].inputs[0].expression #=> String
5200
+ # resp.definition.nodes[0].inputs[0].name #=> String
5201
+ # resp.definition.nodes[0].inputs[0].type #=> String, one of "String", "Number", "Boolean", "Object", "Array"
5202
+ # resp.definition.nodes[0].name #=> String
5203
+ # resp.definition.nodes[0].outputs #=> Array
5204
+ # resp.definition.nodes[0].outputs[0].name #=> String
5205
+ # resp.definition.nodes[0].outputs[0].type #=> String, one of "String", "Number", "Boolean", "Object", "Array"
5206
+ # resp.definition.nodes[0].type #=> String, one of "Input", "Output", "KnowledgeBase", "Condition", "Lex", "Prompt", "LambdaFunction", "Storage", "Agent", "Retrieval", "Iterator", "Collector"
5207
+ # resp.description #=> String
5208
+ # resp.execution_role_arn #=> String
5209
+ # resp.id #=> String
5210
+ # resp.name #=> String
5211
+ # resp.status #=> String, one of "Failed", "Prepared", "Preparing", "NotPrepared"
5212
+ # resp.updated_at #=> Time
5213
+ # resp.version #=> String
5214
+ #
5215
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateFlow AWS API Documentation
5216
+ #
5217
+ # @overload update_flow(params = {})
5218
+ # @param [Hash] params ({})
5219
+ def update_flow(params = {}, options = {})
5220
+ req = build_request(:update_flow, params)
5221
+ req.send_request(options)
5222
+ end
5223
+
5224
+ # Modifies the alias of a flow. Include both fields that you want to
5225
+ # keep and ones that you want to change. For more information, see
5226
+ # [Deploy a flow in Amazon Bedrock][1] in the Amazon Bedrock User Guide.
5227
+ #
5228
+ #
5229
+ #
5230
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/flows-deploy.html
5231
+ #
5232
+ # @option params [required, String] :alias_identifier
5233
+ # The unique identifier of the alias.
5234
+ #
5235
+ # @option params [String] :description
5236
+ # A description for the flow alias.
5237
+ #
5238
+ # @option params [required, String] :flow_identifier
5239
+ # The unique identifier of the flow.
5240
+ #
5241
+ # @option params [required, String] :name
5242
+ # The name of the flow alias.
5243
+ #
5244
+ # @option params [required, Array<Types::FlowAliasRoutingConfigurationListItem>] :routing_configuration
5245
+ # Contains information about the version to which to map the alias.
5246
+ #
5247
+ # @return [Types::UpdateFlowAliasResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5248
+ #
5249
+ # * {Types::UpdateFlowAliasResponse#arn #arn} => String
5250
+ # * {Types::UpdateFlowAliasResponse#created_at #created_at} => Time
5251
+ # * {Types::UpdateFlowAliasResponse#description #description} => String
5252
+ # * {Types::UpdateFlowAliasResponse#flow_id #flow_id} => String
5253
+ # * {Types::UpdateFlowAliasResponse#id #id} => String
5254
+ # * {Types::UpdateFlowAliasResponse#name #name} => String
5255
+ # * {Types::UpdateFlowAliasResponse#routing_configuration #routing_configuration} => Array&lt;Types::FlowAliasRoutingConfigurationListItem&gt;
5256
+ # * {Types::UpdateFlowAliasResponse#updated_at #updated_at} => Time
5257
+ #
5258
+ # @example Request syntax with placeholder values
5259
+ #
5260
+ # resp = client.update_flow_alias({
5261
+ # alias_identifier: "FlowAliasIdentifier", # required
5262
+ # description: "Description",
5263
+ # flow_identifier: "FlowIdentifier", # required
5264
+ # name: "Name", # required
5265
+ # routing_configuration: [ # required
5266
+ # {
5267
+ # flow_version: "Version",
5268
+ # },
5269
+ # ],
5270
+ # })
5271
+ #
5272
+ # @example Response structure
5273
+ #
5274
+ # resp.arn #=> String
5275
+ # resp.created_at #=> Time
5276
+ # resp.description #=> String
5277
+ # resp.flow_id #=> String
5278
+ # resp.id #=> String
5279
+ # resp.name #=> String
5280
+ # resp.routing_configuration #=> Array
5281
+ # resp.routing_configuration[0].flow_version #=> String
5282
+ # resp.updated_at #=> Time
5283
+ #
5284
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdateFlowAlias AWS API Documentation
5285
+ #
5286
+ # @overload update_flow_alias(params = {})
5287
+ # @param [Hash] params ({})
5288
+ def update_flow_alias(params = {}, options = {})
5289
+ req = build_request(:update_flow_alias, params)
5290
+ req.send_request(options)
5291
+ end
5292
+
3095
5293
  # Updates the configuration of a knowledge base with the fields that you
3096
5294
  # specify. Because all fields will be overwritten, you must include the
3097
5295
  # same values for fields that you want to keep the same.
@@ -3275,6 +5473,123 @@ module Aws::BedrockAgent
3275
5473
  req.send_request(options)
3276
5474
  end
3277
5475
 
5476
+ # Modifies a prompt in your prompt library. Include both fields that you
5477
+ # want to keep and fields that you want to replace. For more
5478
+ # information, see [Prompt management in Amazon Bedrock][1] and [Edit
5479
+ # prompts in your prompt library][2] in the Amazon Bedrock User Guide.
5480
+ #
5481
+ #
5482
+ #
5483
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html
5484
+ # [2]: https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-manage.html#prompt-management-edit
5485
+ #
5486
+ # @option params [String] :customer_encryption_key_arn
5487
+ # The Amazon Resource Name (ARN) of the KMS key to encrypt the prompt.
5488
+ #
5489
+ # @option params [String] :default_variant
5490
+ # The name of the default variant for the prompt. This value must match
5491
+ # the `name` field in the relevant [PromptVariant][1] object.
5492
+ #
5493
+ #
5494
+ #
5495
+ # [1]: https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PromptVariant.html
5496
+ #
5497
+ # @option params [String] :description
5498
+ # A description for the prompt.
5499
+ #
5500
+ # @option params [required, String] :name
5501
+ # A name for the prompt.
5502
+ #
5503
+ # @option params [required, String] :prompt_identifier
5504
+ # The unique identifier of the prompt.
5505
+ #
5506
+ # @option params [Array<Types::PromptVariant>] :variants
5507
+ # A list of objects, each containing details about a variant of the
5508
+ # prompt.
5509
+ #
5510
+ # @return [Types::UpdatePromptResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5511
+ #
5512
+ # * {Types::UpdatePromptResponse#arn #arn} => String
5513
+ # * {Types::UpdatePromptResponse#created_at #created_at} => Time
5514
+ # * {Types::UpdatePromptResponse#customer_encryption_key_arn #customer_encryption_key_arn} => String
5515
+ # * {Types::UpdatePromptResponse#default_variant #default_variant} => String
5516
+ # * {Types::UpdatePromptResponse#description #description} => String
5517
+ # * {Types::UpdatePromptResponse#id #id} => String
5518
+ # * {Types::UpdatePromptResponse#name #name} => String
5519
+ # * {Types::UpdatePromptResponse#updated_at #updated_at} => Time
5520
+ # * {Types::UpdatePromptResponse#variants #variants} => Array&lt;Types::PromptVariant&gt;
5521
+ # * {Types::UpdatePromptResponse#version #version} => String
5522
+ #
5523
+ # @example Request syntax with placeholder values
5524
+ #
5525
+ # resp = client.update_prompt({
5526
+ # customer_encryption_key_arn: "KmsKeyArn",
5527
+ # default_variant: "PromptVariantName",
5528
+ # description: "PromptDescription",
5529
+ # name: "PromptName", # required
5530
+ # prompt_identifier: "PromptIdentifier", # required
5531
+ # variants: [
5532
+ # {
5533
+ # inference_configuration: {
5534
+ # text: {
5535
+ # max_tokens: 1,
5536
+ # stop_sequences: ["String"],
5537
+ # temperature: 1.0,
5538
+ # top_k: 1,
5539
+ # top_p: 1.0,
5540
+ # },
5541
+ # },
5542
+ # model_id: "PromptModelIdentifier",
5543
+ # name: "PromptVariantName", # required
5544
+ # template_configuration: {
5545
+ # text: {
5546
+ # input_variables: [
5547
+ # {
5548
+ # name: "PromptInputVariableName",
5549
+ # },
5550
+ # ],
5551
+ # text: "TextPrompt", # required
5552
+ # },
5553
+ # },
5554
+ # template_type: "TEXT", # required, accepts TEXT
5555
+ # },
5556
+ # ],
5557
+ # })
5558
+ #
5559
+ # @example Response structure
5560
+ #
5561
+ # resp.arn #=> String
5562
+ # resp.created_at #=> Time
5563
+ # resp.customer_encryption_key_arn #=> String
5564
+ # resp.default_variant #=> String
5565
+ # resp.description #=> String
5566
+ # resp.id #=> String
5567
+ # resp.name #=> String
5568
+ # resp.updated_at #=> Time
5569
+ # resp.variants #=> Array
5570
+ # resp.variants[0].inference_configuration.text.max_tokens #=> Integer
5571
+ # resp.variants[0].inference_configuration.text.stop_sequences #=> Array
5572
+ # resp.variants[0].inference_configuration.text.stop_sequences[0] #=> String
5573
+ # resp.variants[0].inference_configuration.text.temperature #=> Float
5574
+ # resp.variants[0].inference_configuration.text.top_k #=> Integer
5575
+ # resp.variants[0].inference_configuration.text.top_p #=> Float
5576
+ # resp.variants[0].model_id #=> String
5577
+ # resp.variants[0].name #=> String
5578
+ # resp.variants[0].template_configuration.text.input_variables #=> Array
5579
+ # resp.variants[0].template_configuration.text.input_variables[0].name #=> String
5580
+ # resp.variants[0].template_configuration.text.text #=> String
5581
+ # resp.variants[0].template_type #=> String, one of "TEXT"
5582
+ # resp.version #=> String
5583
+ #
5584
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agent-2023-06-05/UpdatePrompt AWS API Documentation
5585
+ #
5586
+ # @overload update_prompt(params = {})
5587
+ # @param [Hash] params ({})
5588
+ def update_prompt(params = {}, options = {})
5589
+ req = build_request(:update_prompt, params)
5590
+ req.send_request(options)
5591
+ end
5592
+
3278
5593
  # @!endgroup
3279
5594
 
3280
5595
  # @param params ({})
@@ -3288,7 +5603,7 @@ module Aws::BedrockAgent
3288
5603
  params: params,
3289
5604
  config: config)
3290
5605
  context[:gem_name] = 'aws-sdk-bedrockagent'
3291
- context[:gem_version] = '1.17.0'
5606
+ context[:gem_version] = '1.19.0'
3292
5607
  Seahorse::Client::Request.new(handlers, context)
3293
5608
  end
3294
5609