aws-sdk-qconnect 1.24.0 → 1.25.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.
@@ -540,6 +540,7 @@ module Aws::QConnect
540
540
  # client_token: "ClientToken",
541
541
  # configuration: { # required
542
542
  # answer_recommendation_ai_agent_configuration: {
543
+ # answer_generation_ai_guardrail_id: "UuidWithQualifier",
543
544
  # answer_generation_ai_prompt_id: "UuidWithQualifier",
544
545
  # association_configurations: [
545
546
  # {
@@ -583,6 +584,7 @@ module Aws::QConnect
583
584
  # query_reformulation_ai_prompt_id: "UuidWithQualifier",
584
585
  # },
585
586
  # manual_search_ai_agent_configuration: {
587
+ # answer_generation_ai_guardrail_id: "UuidWithQualifier",
586
588
  # answer_generation_ai_prompt_id: "UuidWithQualifier",
587
589
  # association_configurations: [
588
590
  # {
@@ -623,13 +625,56 @@ module Aws::QConnect
623
625
  # },
624
626
  # ],
625
627
  # },
628
+ # self_service_ai_agent_configuration: {
629
+ # association_configurations: [
630
+ # {
631
+ # association_configuration_data: {
632
+ # knowledge_base_association_configuration_data: {
633
+ # content_tag_filter: {
634
+ # and_conditions: [
635
+ # {
636
+ # key: "TagKey", # required
637
+ # value: "TagValue",
638
+ # },
639
+ # ],
640
+ # or_conditions: [
641
+ # {
642
+ # and_conditions: [
643
+ # {
644
+ # key: "TagKey", # required
645
+ # value: "TagValue",
646
+ # },
647
+ # ],
648
+ # tag_condition: {
649
+ # key: "TagKey", # required
650
+ # value: "TagValue",
651
+ # },
652
+ # },
653
+ # ],
654
+ # tag_condition: {
655
+ # key: "TagKey", # required
656
+ # value: "TagValue",
657
+ # },
658
+ # },
659
+ # max_results: 1,
660
+ # override_knowledge_base_search_type: "HYBRID", # accepts HYBRID, SEMANTIC
661
+ # },
662
+ # },
663
+ # association_id: "Uuid",
664
+ # association_type: "KNOWLEDGE_BASE", # accepts KNOWLEDGE_BASE
665
+ # },
666
+ # ],
667
+ # self_service_ai_guardrail_id: "UuidWithQualifier",
668
+ # self_service_answer_generation_ai_prompt_id: "UuidWithQualifier",
669
+ # self_service_pre_processing_ai_prompt_id: "UuidWithQualifier",
670
+ # },
626
671
  # },
627
672
  # description: "Description",
628
673
  # name: "Name", # required
629
674
  # tags: {
630
675
  # "TagKey" => "TagValue",
631
676
  # },
632
- # type: "MANUAL_SEARCH", # required, accepts MANUAL_SEARCH, ANSWER_RECOMMENDATION
677
+ # type: "MANUAL_SEARCH", # required, accepts MANUAL_SEARCH, ANSWER_RECOMMENDATION, SELF_SERVICE
633
678
  # visibility_status: "SAVED", # required, accepts SAVED, PUBLISHED
634
679
  # })
635
680
  #
@@ -639,6 +684,7 @@ module Aws::QConnect
639
684
  # resp.ai_agent.ai_agent_id #=> String
640
685
  # resp.ai_agent.assistant_arn #=> String
641
686
  # resp.ai_agent.assistant_id #=> String
687
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
642
688
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
643
689
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
644
690
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
@@ -658,6 +704,7 @@ module Aws::QConnect
658
704
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
659
705
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
660
706
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
707
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
661
708
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
662
709
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
663
710
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
@@ -675,6 +722,25 @@ module Aws::QConnect
675
722
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
676
723
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
677
724
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
725
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations #=> Array
726
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
727
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions[0].key #=> String
728
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions[0].value #=> String
729
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions #=> Array
730
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions #=> Array
731
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions[0].key #=> String
732
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions[0].value #=> String
733
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.key #=> String
734
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.value #=> String
735
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.key #=> String
736
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.value #=> String
737
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
738
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
739
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_id #=> String
740
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
741
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_ai_guardrail_id #=> String
742
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_answer_generation_ai_prompt_id #=> String
743
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_pre_processing_ai_prompt_id #=> String
678
744
  # resp.ai_agent.description #=> String
679
745
  # resp.ai_agent.modified_time #=> Time
680
746
  # resp.ai_agent.name #=> String
@@ -682,7 +748,7 @@ module Aws::QConnect
682
748
  # resp.ai_agent.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
683
749
  # resp.ai_agent.tags #=> Hash
684
750
  # resp.ai_agent.tags["TagKey"] #=> String
685
- # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
751
+ # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION", "SELF_SERVICE"
686
752
  # resp.ai_agent.visibility_status #=> String, one of "SAVED", "PUBLISHED"
687
753
  #
688
754
  # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAIAgent AWS API Documentation
@@ -744,6 +810,7 @@ module Aws::QConnect
744
810
  # resp.ai_agent.ai_agent_id #=> String
745
811
  # resp.ai_agent.assistant_arn #=> String
746
812
  # resp.ai_agent.assistant_id #=> String
813
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
747
814
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
748
815
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
749
816
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
@@ -763,6 +830,7 @@ module Aws::QConnect
763
830
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
764
831
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
765
832
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
833
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
766
834
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
767
835
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
768
836
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
@@ -780,6 +848,25 @@ module Aws::QConnect
780
848
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
781
849
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
782
850
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
851
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations #=> Array
852
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
853
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions[0].key #=> String
854
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions[0].value #=> String
855
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions #=> Array
856
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions #=> Array
857
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions[0].key #=> String
858
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions[0].value #=> String
859
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.key #=> String
860
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.value #=> String
861
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.key #=> String
862
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.value #=> String
863
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
864
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
865
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_id #=> String
866
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
867
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_ai_guardrail_id #=> String
868
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_answer_generation_ai_prompt_id #=> String
869
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_pre_processing_ai_prompt_id #=> String
783
870
  # resp.ai_agent.description #=> String
784
871
  # resp.ai_agent.modified_time #=> Time
785
872
  # resp.ai_agent.name #=> String
@@ -787,7 +874,7 @@ module Aws::QConnect
787
874
  # resp.ai_agent.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
788
875
  # resp.ai_agent.tags #=> Hash
789
876
  # resp.ai_agent.tags["TagKey"] #=> String
790
- # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
877
+ # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION", "SELF_SERVICE"
791
878
  # resp.ai_agent.visibility_status #=> String, one of "SAVED", "PUBLISHED"
792
879
  # resp.version_number #=> Integer
793
880
  #
@@ -800,6 +887,273 @@ module Aws::QConnect
800
887
  req.send_request(options)
801
888
  end
802
889
 
890
+ # Creates an Amazon Q in Connect AI Guardrail.
891
+ #
892
+ # @option params [required, String] :assistant_id
893
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
894
+ # ID or the ARN. URLs cannot contain the ARN.
895
+ #
896
+ # @option params [required, String] :blocked_input_messaging
897
+ # The message to return when the AI Guardrail blocks a prompt.
898
+ #
899
+ # @option params [required, String] :blocked_outputs_messaging
900
+ # The message to return when the AI Guardrail blocks a model response.
901
+ #
902
+ # @option params [String] :client_token
903
+ # A unique, case-sensitive identifier that you provide to ensure the
904
+ # idempotency of the request. If not provided, the Amazon Web Services
905
+ # SDK populates this field. For more information about idempotency, see
906
+ # [Making retries safe with idempotent APIs][1]..
907
+ #
908
+ # **A suitable default value is auto-generated.** You should normally
909
+ # not need to pass this option.**
910
+ #
911
+ #
912
+ #
913
+ # [1]: http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
914
+ #
915
+ # @option params [Types::AIGuardrailContentPolicyConfig] :content_policy_config
916
+ # The content filter policies to configure for the AI Guardrail.
917
+ #
918
+ # @option params [Types::AIGuardrailContextualGroundingPolicyConfig] :contextual_grounding_policy_config
919
+ # The contextual grounding policy configuration used to create an AI
920
+ # Guardrail.
921
+ #
922
+ # @option params [String] :description
923
+ # A description of the AI Guardrail.
924
+ #
925
+ # @option params [required, String] :name
926
+ # The name of the AI Guardrail.
927
+ #
928
+ # @option params [Types::AIGuardrailSensitiveInformationPolicyConfig] :sensitive_information_policy_config
929
+ # The sensitive information policy to configure for the AI Guardrail.
930
+ #
931
+ # @option params [Hash<String,String>] :tags
932
+ # The tags used to organize, track, or control access for this resource.
933
+ #
934
+ # @option params [Types::AIGuardrailTopicPolicyConfig] :topic_policy_config
935
+ # The topic policies to configure for the AI Guardrail.
936
+ #
937
+ # @option params [required, String] :visibility_status
938
+ # The visibility status of the AI Guardrail.
939
+ #
940
+ # @option params [Types::AIGuardrailWordPolicyConfig] :word_policy_config
941
+ # The word policy you configure for the AI Guardrail.
942
+ #
943
+ # @return [Types::CreateAIGuardrailResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
944
+ #
945
+ # * {Types::CreateAIGuardrailResponse#ai_guardrail #ai_guardrail} => Types::AIGuardrailData
946
+ #
947
+ # @example Request syntax with placeholder values
948
+ #
949
+ # resp = client.create_ai_guardrail({
950
+ # assistant_id: "UuidOrArn", # required
951
+ # blocked_input_messaging: "AIGuardrailBlockedMessaging", # required
952
+ # blocked_outputs_messaging: "AIGuardrailBlockedMessaging", # required
953
+ # client_token: "ClientToken",
954
+ # content_policy_config: {
955
+ # filters_config: [ # required
956
+ # {
957
+ # input_strength: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH
958
+ # output_strength: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH
959
+ # type: "SEXUAL", # required, accepts SEXUAL, VIOLENCE, HATE, INSULTS, MISCONDUCT, PROMPT_ATTACK
960
+ # },
961
+ # ],
962
+ # },
963
+ # contextual_grounding_policy_config: {
964
+ # filters_config: [ # required
965
+ # {
966
+ # threshold: 1.0, # required
967
+ # type: "GROUNDING", # required, accepts GROUNDING, RELEVANCE
968
+ # },
969
+ # ],
970
+ # },
971
+ # description: "AIGuardrailDescription",
972
+ # name: "Name", # required
973
+ # sensitive_information_policy_config: {
974
+ # pii_entities_config: [
975
+ # {
976
+ # action: "BLOCK", # required, accepts BLOCK, ANONYMIZE
977
+ # type: "ADDRESS", # required, accepts ADDRESS, AGE, AWS_ACCESS_KEY, AWS_SECRET_KEY, CA_HEALTH_NUMBER, CA_SOCIAL_INSURANCE_NUMBER, CREDIT_DEBIT_CARD_CVV, CREDIT_DEBIT_CARD_EXPIRY, CREDIT_DEBIT_CARD_NUMBER, DRIVER_ID, EMAIL, INTERNATIONAL_BANK_ACCOUNT_NUMBER, IP_ADDRESS, LICENSE_PLATE, MAC_ADDRESS, NAME, PASSWORD, PHONE, PIN, SWIFT_CODE, UK_NATIONAL_HEALTH_SERVICE_NUMBER, UK_NATIONAL_INSURANCE_NUMBER, UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER, URL, USERNAME, US_BANK_ACCOUNT_NUMBER, US_BANK_ROUTING_NUMBER, US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER, US_PASSPORT_NUMBER, US_SOCIAL_SECURITY_NUMBER, VEHICLE_IDENTIFICATION_NUMBER
978
+ # },
979
+ # ],
980
+ # regexes_config: [
981
+ # {
982
+ # action: "BLOCK", # required, accepts BLOCK, ANONYMIZE
983
+ # description: "GuardrailRegexDescription",
984
+ # name: "GuardrailRegexName", # required
985
+ # pattern: "GuardrailRegexPattern", # required
986
+ # },
987
+ # ],
988
+ # },
989
+ # tags: {
990
+ # "TagKey" => "TagValue",
991
+ # },
992
+ # topic_policy_config: {
993
+ # topics_config: [ # required
994
+ # {
995
+ # definition: "GuardrailTopicDefinition", # required
996
+ # examples: ["GuardrailTopicExample"],
997
+ # name: "GuardrailTopicName", # required
998
+ # type: "DENY", # required, accepts DENY
999
+ # },
1000
+ # ],
1001
+ # },
1002
+ # visibility_status: "SAVED", # required, accepts SAVED, PUBLISHED
1003
+ # word_policy_config: {
1004
+ # managed_word_lists_config: [
1005
+ # {
1006
+ # type: "PROFANITY", # required, accepts PROFANITY
1007
+ # },
1008
+ # ],
1009
+ # words_config: [
1010
+ # {
1011
+ # text: "GuardrailWordText", # required
1012
+ # },
1013
+ # ],
1014
+ # },
1015
+ # })
1016
+ #
1017
+ # @example Response structure
1018
+ #
1019
+ # resp.ai_guardrail.ai_guardrail_arn #=> String
1020
+ # resp.ai_guardrail.ai_guardrail_id #=> String
1021
+ # resp.ai_guardrail.assistant_arn #=> String
1022
+ # resp.ai_guardrail.assistant_id #=> String
1023
+ # resp.ai_guardrail.blocked_input_messaging #=> String
1024
+ # resp.ai_guardrail.blocked_outputs_messaging #=> String
1025
+ # resp.ai_guardrail.content_policy_config.filters_config #=> Array
1026
+ # resp.ai_guardrail.content_policy_config.filters_config[0].input_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
1027
+ # resp.ai_guardrail.content_policy_config.filters_config[0].output_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
1028
+ # resp.ai_guardrail.content_policy_config.filters_config[0].type #=> String, one of "SEXUAL", "VIOLENCE", "HATE", "INSULTS", "MISCONDUCT", "PROMPT_ATTACK"
1029
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config #=> Array
1030
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].threshold #=> Float
1031
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].type #=> String, one of "GROUNDING", "RELEVANCE"
1032
+ # resp.ai_guardrail.description #=> String
1033
+ # resp.ai_guardrail.modified_time #=> Time
1034
+ # resp.ai_guardrail.name #=> String
1035
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config #=> Array
1036
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
1037
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config[0].type #=> String, one of "ADDRESS", "AGE", "AWS_ACCESS_KEY", "AWS_SECRET_KEY", "CA_HEALTH_NUMBER", "CA_SOCIAL_INSURANCE_NUMBER", "CREDIT_DEBIT_CARD_CVV", "CREDIT_DEBIT_CARD_EXPIRY", "CREDIT_DEBIT_CARD_NUMBER", "DRIVER_ID", "EMAIL", "INTERNATIONAL_BANK_ACCOUNT_NUMBER", "IP_ADDRESS", "LICENSE_PLATE", "MAC_ADDRESS", "NAME", "PASSWORD", "PHONE", "PIN", "SWIFT_CODE", "UK_NATIONAL_HEALTH_SERVICE_NUMBER", "UK_NATIONAL_INSURANCE_NUMBER", "UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER", "URL", "USERNAME", "US_BANK_ACCOUNT_NUMBER", "US_BANK_ROUTING_NUMBER", "US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER", "US_PASSPORT_NUMBER", "US_SOCIAL_SECURITY_NUMBER", "VEHICLE_IDENTIFICATION_NUMBER"
1038
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config #=> Array
1039
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
1040
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].description #=> String
1041
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].name #=> String
1042
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].pattern #=> String
1043
+ # resp.ai_guardrail.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
1044
+ # resp.ai_guardrail.tags #=> Hash
1045
+ # resp.ai_guardrail.tags["TagKey"] #=> String
1046
+ # resp.ai_guardrail.topic_policy_config.topics_config #=> Array
1047
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].definition #=> String
1048
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples #=> Array
1049
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples[0] #=> String
1050
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].name #=> String
1051
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].type #=> String, one of "DENY"
1052
+ # resp.ai_guardrail.visibility_status #=> String, one of "SAVED", "PUBLISHED"
1053
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config #=> Array
1054
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config[0].type #=> String, one of "PROFANITY"
1055
+ # resp.ai_guardrail.word_policy_config.words_config #=> Array
1056
+ # resp.ai_guardrail.word_policy_config.words_config[0].text #=> String
1057
+ #
1058
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAIGuardrail AWS API Documentation
1059
+ #
1060
+ # @overload create_ai_guardrail(params = {})
1061
+ # @param [Hash] params ({})
1062
+ def create_ai_guardrail(params = {}, options = {})
1063
+ req = build_request(:create_ai_guardrail, params)
1064
+ req.send_request(options)
1065
+ end
1066
+
1067
+ # Creates an Amazon Q in Connect AI Guardrail version.
1068
+ #
1069
+ # @option params [required, String] :ai_guardrail_id
1070
+ # The identifier of the Amazon Q in Connect AI Guardrail.
1071
+ #
1072
+ # @option params [required, String] :assistant_id
1073
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
1074
+ # ID or the ARN. URLs cannot contain the ARN.
1075
+ #
1076
+ # @option params [String] :client_token
1077
+ # A unique, case-sensitive identifier that you provide to ensure the
1078
+ # idempotency of the request. If not provided, the Amazon Web Services
1079
+ # SDK populates this field. For more information about idempotency, see
1080
+ # [Making retries safe with idempotent APIs][1]..
1081
+ #
1082
+ # **A suitable default value is auto-generated.** You should normally
1083
+ # not need to pass this option.**
1084
+ #
1085
+ #
1086
+ #
1087
+ # [1]: http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
1088
+ #
1089
+ # @option params [Time,DateTime,Date,Integer,String] :modified_time
1090
+ # The time the AI Guardrail was last modified.
1091
+ #
1092
+ # @return [Types::CreateAIGuardrailVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1093
+ #
1094
+ # * {Types::CreateAIGuardrailVersionResponse#ai_guardrail #ai_guardrail} => Types::AIGuardrailData
1095
+ # * {Types::CreateAIGuardrailVersionResponse#version_number #version_number} => Integer
1096
+ #
1097
+ # @example Request syntax with placeholder values
1098
+ #
1099
+ # resp = client.create_ai_guardrail_version({
1100
+ # ai_guardrail_id: "UuidOrArnOrEitherWithQualifier", # required
1101
+ # assistant_id: "UuidOrArn", # required
1102
+ # client_token: "ClientToken",
1103
+ # modified_time: Time.now,
1104
+ # })
1105
+ #
1106
+ # @example Response structure
1107
+ #
1108
+ # resp.ai_guardrail.ai_guardrail_arn #=> String
1109
+ # resp.ai_guardrail.ai_guardrail_id #=> String
1110
+ # resp.ai_guardrail.assistant_arn #=> String
1111
+ # resp.ai_guardrail.assistant_id #=> String
1112
+ # resp.ai_guardrail.blocked_input_messaging #=> String
1113
+ # resp.ai_guardrail.blocked_outputs_messaging #=> String
1114
+ # resp.ai_guardrail.content_policy_config.filters_config #=> Array
1115
+ # resp.ai_guardrail.content_policy_config.filters_config[0].input_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
1116
+ # resp.ai_guardrail.content_policy_config.filters_config[0].output_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
1117
+ # resp.ai_guardrail.content_policy_config.filters_config[0].type #=> String, one of "SEXUAL", "VIOLENCE", "HATE", "INSULTS", "MISCONDUCT", "PROMPT_ATTACK"
1118
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config #=> Array
1119
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].threshold #=> Float
1120
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].type #=> String, one of "GROUNDING", "RELEVANCE"
1121
+ # resp.ai_guardrail.description #=> String
1122
+ # resp.ai_guardrail.modified_time #=> Time
1123
+ # resp.ai_guardrail.name #=> String
1124
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config #=> Array
1125
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
1126
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config[0].type #=> String, one of "ADDRESS", "AGE", "AWS_ACCESS_KEY", "AWS_SECRET_KEY", "CA_HEALTH_NUMBER", "CA_SOCIAL_INSURANCE_NUMBER", "CREDIT_DEBIT_CARD_CVV", "CREDIT_DEBIT_CARD_EXPIRY", "CREDIT_DEBIT_CARD_NUMBER", "DRIVER_ID", "EMAIL", "INTERNATIONAL_BANK_ACCOUNT_NUMBER", "IP_ADDRESS", "LICENSE_PLATE", "MAC_ADDRESS", "NAME", "PASSWORD", "PHONE", "PIN", "SWIFT_CODE", "UK_NATIONAL_HEALTH_SERVICE_NUMBER", "UK_NATIONAL_INSURANCE_NUMBER", "UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER", "URL", "USERNAME", "US_BANK_ACCOUNT_NUMBER", "US_BANK_ROUTING_NUMBER", "US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER", "US_PASSPORT_NUMBER", "US_SOCIAL_SECURITY_NUMBER", "VEHICLE_IDENTIFICATION_NUMBER"
1127
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config #=> Array
1128
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
1129
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].description #=> String
1130
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].name #=> String
1131
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].pattern #=> String
1132
+ # resp.ai_guardrail.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
1133
+ # resp.ai_guardrail.tags #=> Hash
1134
+ # resp.ai_guardrail.tags["TagKey"] #=> String
1135
+ # resp.ai_guardrail.topic_policy_config.topics_config #=> Array
1136
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].definition #=> String
1137
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples #=> Array
1138
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples[0] #=> String
1139
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].name #=> String
1140
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].type #=> String, one of "DENY"
1141
+ # resp.ai_guardrail.visibility_status #=> String, one of "SAVED", "PUBLISHED"
1142
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config #=> Array
1143
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config[0].type #=> String, one of "PROFANITY"
1144
+ # resp.ai_guardrail.word_policy_config.words_config #=> Array
1145
+ # resp.ai_guardrail.word_policy_config.words_config[0].text #=> String
1146
+ # resp.version_number #=> Integer
1147
+ #
1148
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAIGuardrailVersion AWS API Documentation
1149
+ #
1150
+ # @overload create_ai_guardrail_version(params = {})
1151
+ # @param [Hash] params ({})
1152
+ def create_ai_guardrail_version(params = {}, options = {})
1153
+ req = build_request(:create_ai_guardrail_version, params)
1154
+ req.send_request(options)
1155
+ end
1156
+
803
1157
  # Creates an Amazon Q in Connect AI Prompt.
804
1158
  #
805
1159
  # @option params [required, String] :api_format
@@ -869,7 +1223,7 @@ module Aws::QConnect
869
1223
  # },
870
1224
  # },
871
1225
  # template_type: "TEXT", # required, accepts TEXT
872
- # type: "ANSWER_GENERATION", # required, accepts ANSWER_GENERATION, INTENT_LABELING_GENERATION, QUERY_REFORMULATION
1226
+ # type: "ANSWER_GENERATION", # required, accepts ANSWER_GENERATION, INTENT_LABELING_GENERATION, QUERY_REFORMULATION, SELF_SERVICE_PRE_PROCESSING, SELF_SERVICE_ANSWER_GENERATION
873
1227
  # visibility_status: "SAVED", # required, accepts SAVED, PUBLISHED
874
1228
  # })
875
1229
  #
@@ -890,7 +1244,7 @@ module Aws::QConnect
890
1244
  # resp.ai_prompt.tags["TagKey"] #=> String
891
1245
  # resp.ai_prompt.template_configuration.text_full_ai_prompt_edit_template_configuration.text #=> String
892
1246
  # resp.ai_prompt.template_type #=> String, one of "TEXT"
893
- # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
1247
+ # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION", "SELF_SERVICE_PRE_PROCESSING", "SELF_SERVICE_ANSWER_GENERATION"
894
1248
  # resp.ai_prompt.visibility_status #=> String, one of "SAVED", "PUBLISHED"
895
1249
  #
896
1250
  # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAIPrompt AWS API Documentation
@@ -958,7 +1312,7 @@ module Aws::QConnect
958
1312
  # resp.ai_prompt.tags["TagKey"] #=> String
959
1313
  # resp.ai_prompt.template_configuration.text_full_ai_prompt_edit_template_configuration.text #=> String
960
1314
  # resp.ai_prompt.template_type #=> String, one of "TEXT"
961
- # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
1315
+ # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION", "SELF_SERVICE_PRE_PROCESSING", "SELF_SERVICE_ANSWER_GENERATION"
962
1316
  # resp.ai_prompt.visibility_status #=> String, one of "SAVED", "PUBLISHED"
963
1317
  # resp.version_number #=> Integer
964
1318
  #
@@ -2400,6 +2754,65 @@ module Aws::QConnect
2400
2754
  req.send_request(options)
2401
2755
  end
2402
2756
 
2757
+ # Deletes an Amazon Q in Connect AI Guardrail.
2758
+ #
2759
+ # @option params [required, String] :ai_guardrail_id
2760
+ # The identifier of the Amazon Q in Connect AI Guardrail. Can be either
2761
+ # the ID or the ARN. URLs cannot contain the ARN.
2762
+ #
2763
+ # @option params [required, String] :assistant_id
2764
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
2765
+ # ID or the ARN. URLs cannot contain the ARN.
2766
+ #
2767
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2768
+ #
2769
+ # @example Request syntax with placeholder values
2770
+ #
2771
+ # resp = client.delete_ai_guardrail({
2772
+ # ai_guardrail_id: "UuidOrArnOrEitherWithQualifier", # required
2773
+ # assistant_id: "UuidOrArn", # required
2774
+ # })
2775
+ #
2776
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteAIGuardrail AWS API Documentation
2777
+ #
2778
+ # @overload delete_ai_guardrail(params = {})
2779
+ # @param [Hash] params ({})
2780
+ def delete_ai_guardrail(params = {}, options = {})
2781
+ req = build_request(:delete_ai_guardrail, params)
2782
+ req.send_request(options)
2783
+ end
2784
+
2785
+ # Delete and Amazon Q in Connect AI Guardrail version.
2786
+ #
2787
+ # @option params [required, String] :ai_guardrail_id
2788
+ # The identifier of the Amazon Q in Connect AI Guardrail.
2789
+ #
2790
+ # @option params [required, String] :assistant_id
2791
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
2792
+ # ID or the ARN. URLs cannot contain the ARN.
2793
+ #
2794
+ # @option params [required, Integer] :version_number
2795
+ # The version number of the AI Guardrail version to be deleted.
2796
+ #
2797
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2798
+ #
2799
+ # @example Request syntax with placeholder values
2800
+ #
2801
+ # resp = client.delete_ai_guardrail_version({
2802
+ # ai_guardrail_id: "UuidOrArnOrEitherWithQualifier", # required
2803
+ # assistant_id: "UuidOrArn", # required
2804
+ # version_number: 1, # required
2805
+ # })
2806
+ #
2807
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteAIGuardrailVersion AWS API Documentation
2808
+ #
2809
+ # @overload delete_ai_guardrail_version(params = {})
2810
+ # @param [Hash] params ({})
2811
+ def delete_ai_guardrail_version(params = {}, options = {})
2812
+ req = build_request(:delete_ai_guardrail_version, params)
2813
+ req.send_request(options)
2814
+ end
2815
+
2403
2816
  # Deletes an Amazon Q in Connect AI Prompt.
2404
2817
  #
2405
2818
  # @option params [required, String] :ai_prompt_id
@@ -2765,6 +3178,7 @@ module Aws::QConnect
2765
3178
  # resp.ai_agent.ai_agent_id #=> String
2766
3179
  # resp.ai_agent.assistant_arn #=> String
2767
3180
  # resp.ai_agent.assistant_id #=> String
3181
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
2768
3182
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
2769
3183
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
2770
3184
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
@@ -2784,6 +3198,7 @@ module Aws::QConnect
2784
3198
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
2785
3199
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
2786
3200
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
3201
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
2787
3202
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
2788
3203
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
2789
3204
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
@@ -2801,6 +3216,25 @@ module Aws::QConnect
2801
3216
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
2802
3217
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
2803
3218
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
3219
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations #=> Array
3220
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
3221
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions[0].key #=> String
3222
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions[0].value #=> String
3223
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions #=> Array
3224
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions #=> Array
3225
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions[0].key #=> String
3226
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions[0].value #=> String
3227
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.key #=> String
3228
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.value #=> String
3229
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.key #=> String
3230
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.value #=> String
3231
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
3232
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
3233
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_id #=> String
3234
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
3235
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_ai_guardrail_id #=> String
3236
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_answer_generation_ai_prompt_id #=> String
3237
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_pre_processing_ai_prompt_id #=> String
2804
3238
  # resp.ai_agent.description #=> String
2805
3239
  # resp.ai_agent.modified_time #=> Time
2806
3240
  # resp.ai_agent.name #=> String
@@ -2808,7 +3242,7 @@ module Aws::QConnect
2808
3242
  # resp.ai_agent.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
2809
3243
  # resp.ai_agent.tags #=> Hash
2810
3244
  # resp.ai_agent.tags["TagKey"] #=> String
2811
- # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
3245
+ # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION", "SELF_SERVICE"
2812
3246
  # resp.ai_agent.visibility_status #=> String, one of "SAVED", "PUBLISHED"
2813
3247
  # resp.version_number #=> Integer
2814
3248
  #
@@ -2821,6 +3255,78 @@ module Aws::QConnect
2821
3255
  req.send_request(options)
2822
3256
  end
2823
3257
 
3258
+ # Gets the Amazon Q in Connect AI Guardrail.
3259
+ #
3260
+ # @option params [required, String] :ai_guardrail_id
3261
+ # The identifier of the Amazon Q in Connect AI Guardrail.
3262
+ #
3263
+ # @option params [required, String] :assistant_id
3264
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
3265
+ # ID or the ARN. URLs cannot contain the ARN.
3266
+ #
3267
+ # @return [Types::GetAIGuardrailResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3268
+ #
3269
+ # * {Types::GetAIGuardrailResponse#ai_guardrail #ai_guardrail} => Types::AIGuardrailData
3270
+ # * {Types::GetAIGuardrailResponse#version_number #version_number} => Integer
3271
+ #
3272
+ # @example Request syntax with placeholder values
3273
+ #
3274
+ # resp = client.get_ai_guardrail({
3275
+ # ai_guardrail_id: "UuidOrArnOrEitherWithQualifier", # required
3276
+ # assistant_id: "UuidOrArn", # required
3277
+ # })
3278
+ #
3279
+ # @example Response structure
3280
+ #
3281
+ # resp.ai_guardrail.ai_guardrail_arn #=> String
3282
+ # resp.ai_guardrail.ai_guardrail_id #=> String
3283
+ # resp.ai_guardrail.assistant_arn #=> String
3284
+ # resp.ai_guardrail.assistant_id #=> String
3285
+ # resp.ai_guardrail.blocked_input_messaging #=> String
3286
+ # resp.ai_guardrail.blocked_outputs_messaging #=> String
3287
+ # resp.ai_guardrail.content_policy_config.filters_config #=> Array
3288
+ # resp.ai_guardrail.content_policy_config.filters_config[0].input_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
3289
+ # resp.ai_guardrail.content_policy_config.filters_config[0].output_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
3290
+ # resp.ai_guardrail.content_policy_config.filters_config[0].type #=> String, one of "SEXUAL", "VIOLENCE", "HATE", "INSULTS", "MISCONDUCT", "PROMPT_ATTACK"
3291
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config #=> Array
3292
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].threshold #=> Float
3293
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].type #=> String, one of "GROUNDING", "RELEVANCE"
3294
+ # resp.ai_guardrail.description #=> String
3295
+ # resp.ai_guardrail.modified_time #=> Time
3296
+ # resp.ai_guardrail.name #=> String
3297
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config #=> Array
3298
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
3299
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config[0].type #=> String, one of "ADDRESS", "AGE", "AWS_ACCESS_KEY", "AWS_SECRET_KEY", "CA_HEALTH_NUMBER", "CA_SOCIAL_INSURANCE_NUMBER", "CREDIT_DEBIT_CARD_CVV", "CREDIT_DEBIT_CARD_EXPIRY", "CREDIT_DEBIT_CARD_NUMBER", "DRIVER_ID", "EMAIL", "INTERNATIONAL_BANK_ACCOUNT_NUMBER", "IP_ADDRESS", "LICENSE_PLATE", "MAC_ADDRESS", "NAME", "PASSWORD", "PHONE", "PIN", "SWIFT_CODE", "UK_NATIONAL_HEALTH_SERVICE_NUMBER", "UK_NATIONAL_INSURANCE_NUMBER", "UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER", "URL", "USERNAME", "US_BANK_ACCOUNT_NUMBER", "US_BANK_ROUTING_NUMBER", "US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER", "US_PASSPORT_NUMBER", "US_SOCIAL_SECURITY_NUMBER", "VEHICLE_IDENTIFICATION_NUMBER"
3300
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config #=> Array
3301
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
3302
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].description #=> String
3303
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].name #=> String
3304
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].pattern #=> String
3305
+ # resp.ai_guardrail.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
3306
+ # resp.ai_guardrail.tags #=> Hash
3307
+ # resp.ai_guardrail.tags["TagKey"] #=> String
3308
+ # resp.ai_guardrail.topic_policy_config.topics_config #=> Array
3309
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].definition #=> String
3310
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples #=> Array
3311
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples[0] #=> String
3312
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].name #=> String
3313
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].type #=> String, one of "DENY"
3314
+ # resp.ai_guardrail.visibility_status #=> String, one of "SAVED", "PUBLISHED"
3315
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config #=> Array
3316
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config[0].type #=> String, one of "PROFANITY"
3317
+ # resp.ai_guardrail.word_policy_config.words_config #=> Array
3318
+ # resp.ai_guardrail.word_policy_config.words_config[0].text #=> String
3319
+ # resp.version_number #=> Integer
3320
+ #
3321
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetAIGuardrail AWS API Documentation
3322
+ #
3323
+ # @overload get_ai_guardrail(params = {})
3324
+ # @param [Hash] params ({})
3325
+ def get_ai_guardrail(params = {}, options = {})
3326
+ req = build_request(:get_ai_guardrail, params)
3327
+ req.send_request(options)
3328
+ end
3329
+
2824
3330
  # Gets and Amazon Q in Connect AI Prompt.
2825
3331
  #
2826
3332
  # @option params [required, String] :ai_prompt_id
@@ -2859,7 +3365,7 @@ module Aws::QConnect
2859
3365
  # resp.ai_prompt.tags["TagKey"] #=> String
2860
3366
  # resp.ai_prompt.template_configuration.text_full_ai_prompt_edit_template_configuration.text #=> String
2861
3367
  # resp.ai_prompt.template_type #=> String, one of "TEXT"
2862
- # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
3368
+ # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION", "SELF_SERVICE_PRE_PROCESSING", "SELF_SERVICE_ANSWER_GENERATION"
2863
3369
  # resp.ai_prompt.visibility_status #=> String, one of "SAVED", "PUBLISHED"
2864
3370
  # resp.version_number #=> Integer
2865
3371
  #
@@ -3355,6 +3861,60 @@ module Aws::QConnect
3355
3861
  req.send_request(options)
3356
3862
  end
3357
3863
 
3864
+ # Retrieves next message on an Amazon Q in Connect session.
3865
+ #
3866
+ # @option params [required, String] :assistant_id
3867
+ # The identifier of the Amazon Q in Connect assistant.
3868
+ #
3869
+ # @option params [required, String] :next_message_token
3870
+ # The token for the next message. Use the value returned in the
3871
+ # SendMessage or previous response in the next request to retrieve the
3872
+ # next message.
3873
+ #
3874
+ # @option params [required, String] :session_id
3875
+ # The identifier of the Amazon Q in Connect session.
3876
+ #
3877
+ # @return [Types::GetNextMessageResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3878
+ #
3879
+ # * {Types::GetNextMessageResponse#conversation_session_data #conversation_session_data} => Array&lt;Types::RuntimeSessionData&gt;
3880
+ # * {Types::GetNextMessageResponse#conversation_state #conversation_state} => Types::ConversationState
3881
+ # * {Types::GetNextMessageResponse#next_message_token #next_message_token} => String
3882
+ # * {Types::GetNextMessageResponse#request_message_id #request_message_id} => String
3883
+ # * {Types::GetNextMessageResponse#response #response} => Types::MessageOutput
3884
+ # * {Types::GetNextMessageResponse#type #type} => String
3885
+ #
3886
+ # @example Request syntax with placeholder values
3887
+ #
3888
+ # resp = client.get_next_message({
3889
+ # assistant_id: "UuidOrArn", # required
3890
+ # next_message_token: "NextToken", # required
3891
+ # session_id: "UuidOrArn", # required
3892
+ # })
3893
+ #
3894
+ # @example Response structure
3895
+ #
3896
+ # resp.conversation_session_data #=> Array
3897
+ # resp.conversation_session_data[0].key #=> String
3898
+ # resp.conversation_session_data[0].value.string_value #=> String
3899
+ # resp.conversation_state.reason #=> String, one of "SUCCESS", "FAILED", "REJECTED"
3900
+ # resp.conversation_state.status #=> String, one of "CLOSED", "READY", "PROCESSING"
3901
+ # resp.next_message_token #=> String
3902
+ # resp.request_message_id #=> String
3903
+ # resp.response.message_id #=> String
3904
+ # resp.response.participant #=> String, one of "CUSTOMER", "AGENT", "BOT"
3905
+ # resp.response.timestamp #=> Time
3906
+ # resp.response.value.text.value #=> String
3907
+ # resp.type #=> String, one of "TEXT"
3908
+ #
3909
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetNextMessage AWS API Documentation
3910
+ #
3911
+ # @overload get_next_message(params = {})
3912
+ # @param [Hash] params ({})
3913
+ def get_next_message(params = {}, options = {})
3914
+ req = build_request(:get_next_message, params)
3915
+ req.send_request(options)
3916
+ end
3917
+
3358
3918
  # Retrieves the quick response.
3359
3919
  #
3360
3920
  # @option params [required, String] :knowledge_base_id
@@ -3638,6 +4198,7 @@ module Aws::QConnect
3638
4198
  # resp.ai_agent_version_summaries[0].ai_agent_summary.ai_agent_id #=> String
3639
4199
  # resp.ai_agent_version_summaries[0].ai_agent_summary.assistant_arn #=> String
3640
4200
  # resp.ai_agent_version_summaries[0].ai_agent_summary.assistant_id #=> String
4201
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
3641
4202
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
3642
4203
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
3643
4204
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
@@ -3657,6 +4218,7 @@ module Aws::QConnect
3657
4218
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
3658
4219
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
3659
4220
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
4221
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.manual_search_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
3660
4222
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
3661
4223
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
3662
4224
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
@@ -3674,6 +4236,25 @@ module Aws::QConnect
3674
4236
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
3675
4237
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
3676
4238
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
4239
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations #=> Array
4240
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
4241
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions[0].key #=> String
4242
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions[0].value #=> String
4243
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions #=> Array
4244
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions #=> Array
4245
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions[0].key #=> String
4246
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions[0].value #=> String
4247
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.key #=> String
4248
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.value #=> String
4249
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.key #=> String
4250
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.value #=> String
4251
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
4252
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
4253
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_id #=> String
4254
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
4255
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.self_service_ai_guardrail_id #=> String
4256
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.self_service_answer_generation_ai_prompt_id #=> String
4257
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.self_service_pre_processing_ai_prompt_id #=> String
3677
4258
  # resp.ai_agent_version_summaries[0].ai_agent_summary.description #=> String
3678
4259
  # resp.ai_agent_version_summaries[0].ai_agent_summary.modified_time #=> Time
3679
4260
  # resp.ai_agent_version_summaries[0].ai_agent_summary.name #=> String
@@ -3681,7 +4262,7 @@ module Aws::QConnect
3681
4262
  # resp.ai_agent_version_summaries[0].ai_agent_summary.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
3682
4263
  # resp.ai_agent_version_summaries[0].ai_agent_summary.tags #=> Hash
3683
4264
  # resp.ai_agent_version_summaries[0].ai_agent_summary.tags["TagKey"] #=> String
3684
- # resp.ai_agent_version_summaries[0].ai_agent_summary.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
4265
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION", "SELF_SERVICE"
3685
4266
  # resp.ai_agent_version_summaries[0].ai_agent_summary.visibility_status #=> String, one of "SAVED", "PUBLISHED"
3686
4267
  # resp.ai_agent_version_summaries[0].version_number #=> Integer
3687
4268
  # resp.next_token #=> String
@@ -3737,6 +4318,7 @@ module Aws::QConnect
3737
4318
  # resp.ai_agent_summaries[0].ai_agent_id #=> String
3738
4319
  # resp.ai_agent_summaries[0].assistant_arn #=> String
3739
4320
  # resp.ai_agent_summaries[0].assistant_id #=> String
4321
+ # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
3740
4322
  # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
3741
4323
  # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
3742
4324
  # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
@@ -3756,6 +4338,7 @@ module Aws::QConnect
3756
4338
  # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
3757
4339
  # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
3758
4340
  # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
4341
+ # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
3759
4342
  # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
3760
4343
  # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
3761
4344
  # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
@@ -3773,6 +4356,25 @@ module Aws::QConnect
3773
4356
  # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
3774
4357
  # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
3775
4358
  # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
4359
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations #=> Array
4360
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
4361
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions[0].key #=> String
4362
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions[0].value #=> String
4363
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions #=> Array
4364
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions #=> Array
4365
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions[0].key #=> String
4366
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions[0].value #=> String
4367
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.key #=> String
4368
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.value #=> String
4369
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.key #=> String
4370
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.value #=> String
4371
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
4372
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
4373
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_id #=> String
4374
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
4375
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.self_service_ai_guardrail_id #=> String
4376
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.self_service_answer_generation_ai_prompt_id #=> String
4377
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.self_service_pre_processing_ai_prompt_id #=> String
3776
4378
  # resp.ai_agent_summaries[0].description #=> String
3777
4379
  # resp.ai_agent_summaries[0].modified_time #=> Time
3778
4380
  # resp.ai_agent_summaries[0].name #=> String
@@ -3780,7 +4382,7 @@ module Aws::QConnect
3780
4382
  # resp.ai_agent_summaries[0].status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
3781
4383
  # resp.ai_agent_summaries[0].tags #=> Hash
3782
4384
  # resp.ai_agent_summaries[0].tags["TagKey"] #=> String
3783
- # resp.ai_agent_summaries[0].type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
4385
+ # resp.ai_agent_summaries[0].type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION", "SELF_SERVICE"
3784
4386
  # resp.ai_agent_summaries[0].visibility_status #=> String, one of "SAVED", "PUBLISHED"
3785
4387
  # resp.next_token #=> String
3786
4388
  #
@@ -3793,6 +4395,121 @@ module Aws::QConnect
3793
4395
  req.send_request(options)
3794
4396
  end
3795
4397
 
4398
+ # Lists AI Guardrail versions.
4399
+ #
4400
+ # @option params [required, String] :ai_guardrail_id
4401
+ # The identifier of the Amazon Q in Connect AI Guardrail for which
4402
+ # versions are to be listed.
4403
+ #
4404
+ # @option params [required, String] :assistant_id
4405
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
4406
+ # ID or the ARN. URLs cannot contain the ARN.
4407
+ #
4408
+ # @option params [Integer] :max_results
4409
+ # The maximum number of results to return per page.
4410
+ #
4411
+ # @option params [String] :next_token
4412
+ # The token for the next set of results. Use the value returned in the
4413
+ # previous response in the next request to retrieve the next set of
4414
+ # results.
4415
+ #
4416
+ # @return [Types::ListAIGuardrailVersionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4417
+ #
4418
+ # * {Types::ListAIGuardrailVersionsResponse#ai_guardrail_version_summaries #ai_guardrail_version_summaries} => Array&lt;Types::AIGuardrailVersionSummary&gt;
4419
+ # * {Types::ListAIGuardrailVersionsResponse#next_token #next_token} => String
4420
+ #
4421
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4422
+ #
4423
+ # @example Request syntax with placeholder values
4424
+ #
4425
+ # resp = client.list_ai_guardrail_versions({
4426
+ # ai_guardrail_id: "UuidOrArnOrEitherWithQualifier", # required
4427
+ # assistant_id: "UuidOrArn", # required
4428
+ # max_results: 1,
4429
+ # next_token: "NextToken",
4430
+ # })
4431
+ #
4432
+ # @example Response structure
4433
+ #
4434
+ # resp.ai_guardrail_version_summaries #=> Array
4435
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.ai_guardrail_arn #=> String
4436
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.ai_guardrail_id #=> String
4437
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.assistant_arn #=> String
4438
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.assistant_id #=> String
4439
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.description #=> String
4440
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.modified_time #=> Time
4441
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.name #=> String
4442
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
4443
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.tags #=> Hash
4444
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.tags["TagKey"] #=> String
4445
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.visibility_status #=> String, one of "SAVED", "PUBLISHED"
4446
+ # resp.ai_guardrail_version_summaries[0].version_number #=> Integer
4447
+ # resp.next_token #=> String
4448
+ #
4449
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListAIGuardrailVersions AWS API Documentation
4450
+ #
4451
+ # @overload list_ai_guardrail_versions(params = {})
4452
+ # @param [Hash] params ({})
4453
+ def list_ai_guardrail_versions(params = {}, options = {})
4454
+ req = build_request(:list_ai_guardrail_versions, params)
4455
+ req.send_request(options)
4456
+ end
4457
+
4458
+ # Lists the AI Guardrails available on the Amazon Q in Connect
4459
+ # assistant.
4460
+ #
4461
+ # @option params [required, String] :assistant_id
4462
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
4463
+ # ID or the ARN. URLs cannot contain the ARN.
4464
+ #
4465
+ # @option params [Integer] :max_results
4466
+ # The maximum number of results to return per page.
4467
+ #
4468
+ # @option params [String] :next_token
4469
+ # The token for the next set of results. Use the value returned in the
4470
+ # previous response in the next request to retrieve the next set of
4471
+ # results.
4472
+ #
4473
+ # @return [Types::ListAIGuardrailsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4474
+ #
4475
+ # * {Types::ListAIGuardrailsResponse#ai_guardrail_summaries #ai_guardrail_summaries} => Array&lt;Types::AIGuardrailSummary&gt;
4476
+ # * {Types::ListAIGuardrailsResponse#next_token #next_token} => String
4477
+ #
4478
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4479
+ #
4480
+ # @example Request syntax with placeholder values
4481
+ #
4482
+ # resp = client.list_ai_guardrails({
4483
+ # assistant_id: "UuidOrArn", # required
4484
+ # max_results: 1,
4485
+ # next_token: "NextToken",
4486
+ # })
4487
+ #
4488
+ # @example Response structure
4489
+ #
4490
+ # resp.ai_guardrail_summaries #=> Array
4491
+ # resp.ai_guardrail_summaries[0].ai_guardrail_arn #=> String
4492
+ # resp.ai_guardrail_summaries[0].ai_guardrail_id #=> String
4493
+ # resp.ai_guardrail_summaries[0].assistant_arn #=> String
4494
+ # resp.ai_guardrail_summaries[0].assistant_id #=> String
4495
+ # resp.ai_guardrail_summaries[0].description #=> String
4496
+ # resp.ai_guardrail_summaries[0].modified_time #=> Time
4497
+ # resp.ai_guardrail_summaries[0].name #=> String
4498
+ # resp.ai_guardrail_summaries[0].status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
4499
+ # resp.ai_guardrail_summaries[0].tags #=> Hash
4500
+ # resp.ai_guardrail_summaries[0].tags["TagKey"] #=> String
4501
+ # resp.ai_guardrail_summaries[0].visibility_status #=> String, one of "SAVED", "PUBLISHED"
4502
+ # resp.next_token #=> String
4503
+ #
4504
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListAIGuardrails AWS API Documentation
4505
+ #
4506
+ # @overload list_ai_guardrails(params = {})
4507
+ # @param [Hash] params ({})
4508
+ def list_ai_guardrails(params = {}, options = {})
4509
+ req = build_request(:list_ai_guardrails, params)
4510
+ req.send_request(options)
4511
+ end
4512
+
3796
4513
  # Lists AI Prompt versions.
3797
4514
  #
3798
4515
  # @option params [required, String] :ai_prompt_id
@@ -3850,7 +4567,7 @@ module Aws::QConnect
3850
4567
  # resp.ai_prompt_version_summaries[0].ai_prompt_summary.tags #=> Hash
3851
4568
  # resp.ai_prompt_version_summaries[0].ai_prompt_summary.tags["TagKey"] #=> String
3852
4569
  # resp.ai_prompt_version_summaries[0].ai_prompt_summary.template_type #=> String, one of "TEXT"
3853
- # resp.ai_prompt_version_summaries[0].ai_prompt_summary.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
4570
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION", "SELF_SERVICE_PRE_PROCESSING", "SELF_SERVICE_ANSWER_GENERATION"
3854
4571
  # resp.ai_prompt_version_summaries[0].ai_prompt_summary.visibility_status #=> String, one of "SAVED", "PUBLISHED"
3855
4572
  # resp.ai_prompt_version_summaries[0].version_number #=> Integer
3856
4573
  # resp.next_token #=> String
@@ -3916,7 +4633,7 @@ module Aws::QConnect
3916
4633
  # resp.ai_prompt_summaries[0].tags #=> Hash
3917
4634
  # resp.ai_prompt_summaries[0].tags["TagKey"] #=> String
3918
4635
  # resp.ai_prompt_summaries[0].template_type #=> String, one of "TEXT"
3919
- # resp.ai_prompt_summaries[0].type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
4636
+ # resp.ai_prompt_summaries[0].type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION", "SELF_SERVICE_PRE_PROCESSING", "SELF_SERVICE_ANSWER_GENERATION"
3920
4637
  # resp.ai_prompt_summaries[0].visibility_status #=> String, one of "SAVED", "PUBLISHED"
3921
4638
  # resp.next_token #=> String
3922
4639
  #
@@ -4393,6 +5110,56 @@ module Aws::QConnect
4393
5110
  req.send_request(options)
4394
5111
  end
4395
5112
 
5113
+ # Lists messages on an Amazon Q in Connect session.
5114
+ #
5115
+ # @option params [required, String] :assistant_id
5116
+ # The identifier of the Amazon Q in Connect assistant.
5117
+ #
5118
+ # @option params [Integer] :max_results
5119
+ # The maximum number of results to return per page.
5120
+ #
5121
+ # @option params [String] :next_token
5122
+ # The token for the next set of results. Use the value returned in the
5123
+ # previous response in the next request to retrieve the next set of
5124
+ # results.
5125
+ #
5126
+ # @option params [required, String] :session_id
5127
+ # The identifier of the Amazon Q in Connect session.
5128
+ #
5129
+ # @return [Types::ListMessagesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5130
+ #
5131
+ # * {Types::ListMessagesResponse#messages #messages} => Array&lt;Types::MessageOutput&gt;
5132
+ # * {Types::ListMessagesResponse#next_token #next_token} => String
5133
+ #
5134
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
5135
+ #
5136
+ # @example Request syntax with placeholder values
5137
+ #
5138
+ # resp = client.list_messages({
5139
+ # assistant_id: "UuidOrArn", # required
5140
+ # max_results: 1,
5141
+ # next_token: "NextToken",
5142
+ # session_id: "UuidOrArn", # required
5143
+ # })
5144
+ #
5145
+ # @example Response structure
5146
+ #
5147
+ # resp.messages #=> Array
5148
+ # resp.messages[0].message_id #=> String
5149
+ # resp.messages[0].participant #=> String, one of "CUSTOMER", "AGENT", "BOT"
5150
+ # resp.messages[0].timestamp #=> Time
5151
+ # resp.messages[0].value.text.value #=> String
5152
+ # resp.next_token #=> String
5153
+ #
5154
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListMessages AWS API Documentation
5155
+ #
5156
+ # @overload list_messages(params = {})
5157
+ # @param [Hash] params ({})
5158
+ def list_messages(params = {}, options = {})
5159
+ req = build_request(:list_messages, params)
5160
+ req.send_request(options)
5161
+ end
5162
+
4396
5163
  # Lists information about quick response.
4397
5164
  #
4398
5165
  # @option params [required, String] :knowledge_base_id
@@ -4748,7 +5515,7 @@ module Aws::QConnect
4748
5515
  # @example Request syntax with placeholder values
4749
5516
  #
4750
5517
  # resp = client.remove_assistant_ai_agent({
4751
- # ai_agent_type: "MANUAL_SEARCH", # required, accepts MANUAL_SEARCH, ANSWER_RECOMMENDATION
5518
+ # ai_agent_type: "MANUAL_SEARCH", # required, accepts MANUAL_SEARCH, ANSWER_RECOMMENDATION, SELF_SERVICE
4752
5519
  # assistant_id: "UuidOrArn", # required
4753
5520
  # })
4754
5521
  #
@@ -5254,6 +6021,76 @@ module Aws::QConnect
5254
6021
  req.send_request(options)
5255
6022
  end
5256
6023
 
6024
+ # Submits a message to the Amazon Q in Connect session.
6025
+ #
6026
+ # @option params [required, String] :assistant_id
6027
+ # The identifier of the Amazon Q in Connect assistant.
6028
+ #
6029
+ # @option params [String] :client_token
6030
+ # A unique, case-sensitive identifier that you provide to ensure the
6031
+ # idempotency of the request. If not provided, the AWS SDK populates
6032
+ # this field.For more information about idempotency, see Making retries
6033
+ # safe with idempotent APIs.
6034
+ #
6035
+ # **A suitable default value is auto-generated.** You should normally
6036
+ # not need to pass this option.**
6037
+ #
6038
+ # @option params [Types::ConversationContext] :conversation_context
6039
+ # The conversation context before the Amazon Q in Connect session.
6040
+ #
6041
+ # @option params [required, Types::MessageInput] :message
6042
+ # The message data to submit to the Amazon Q in Connect session.
6043
+ #
6044
+ # @option params [required, String] :session_id
6045
+ # The identifier of the Amazon Q in Connect session.
6046
+ #
6047
+ # @option params [required, String] :type
6048
+ # The message type.
6049
+ #
6050
+ # @return [Types::SendMessageResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6051
+ #
6052
+ # * {Types::SendMessageResponse#next_message_token #next_message_token} => String
6053
+ # * {Types::SendMessageResponse#request_message_id #request_message_id} => String
6054
+ #
6055
+ # @example Request syntax with placeholder values
6056
+ #
6057
+ # resp = client.send_message({
6058
+ # assistant_id: "UuidOrArn", # required
6059
+ # client_token: "ClientToken",
6060
+ # conversation_context: {
6061
+ # self_service_conversation_history: [ # required
6062
+ # {
6063
+ # bot_response: "SensitiveString",
6064
+ # input_transcript: "SensitiveString",
6065
+ # turn_number: 1, # required
6066
+ # },
6067
+ # ],
6068
+ # },
6069
+ # message: { # required
6070
+ # value: { # required
6071
+ # text: {
6072
+ # value: "TextMessageValueString",
6073
+ # },
6074
+ # },
6075
+ # },
6076
+ # session_id: "UuidOrArn", # required
6077
+ # type: "TEXT", # required, accepts TEXT
6078
+ # })
6079
+ #
6080
+ # @example Response structure
6081
+ #
6082
+ # resp.next_message_token #=> String
6083
+ # resp.request_message_id #=> String
6084
+ #
6085
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/SendMessage AWS API Documentation
6086
+ #
6087
+ # @overload send_message(params = {})
6088
+ # @param [Hash] params ({})
6089
+ def send_message(params = {}, options = {})
6090
+ req = build_request(:send_message, params)
6091
+ req.send_request(options)
6092
+ end
6093
+
5257
6094
  # Get a URL to upload content to a knowledge base. To upload content,
5258
6095
  # first make a PUT request to the returned URL with your file, making
5259
6096
  # sure to include the required headers. Then use [CreateContent][1] to
@@ -5512,6 +6349,7 @@ module Aws::QConnect
5512
6349
  # client_token: "ClientToken",
5513
6350
  # configuration: {
5514
6351
  # answer_recommendation_ai_agent_configuration: {
6352
+ # answer_generation_ai_guardrail_id: "UuidWithQualifier",
5515
6353
  # answer_generation_ai_prompt_id: "UuidWithQualifier",
5516
6354
  # association_configurations: [
5517
6355
  # {
@@ -5555,6 +6393,7 @@ module Aws::QConnect
5555
6393
  # query_reformulation_ai_prompt_id: "UuidWithQualifier",
5556
6394
  # },
5557
6395
  # manual_search_ai_agent_configuration: {
6396
+ # answer_generation_ai_guardrail_id: "UuidWithQualifier",
5558
6397
  # answer_generation_ai_prompt_id: "UuidWithQualifier",
5559
6398
  # association_configurations: [
5560
6399
  # {
@@ -5595,6 +6434,49 @@ module Aws::QConnect
5595
6434
  # },
5596
6435
  # ],
5597
6436
  # },
6437
+ # self_service_ai_agent_configuration: {
6438
+ # association_configurations: [
6439
+ # {
6440
+ # association_configuration_data: {
6441
+ # knowledge_base_association_configuration_data: {
6442
+ # content_tag_filter: {
6443
+ # and_conditions: [
6444
+ # {
6445
+ # key: "TagKey", # required
6446
+ # value: "TagValue",
6447
+ # },
6448
+ # ],
6449
+ # or_conditions: [
6450
+ # {
6451
+ # and_conditions: [
6452
+ # {
6453
+ # key: "TagKey", # required
6454
+ # value: "TagValue",
6455
+ # },
6456
+ # ],
6457
+ # tag_condition: {
6458
+ # key: "TagKey", # required
6459
+ # value: "TagValue",
6460
+ # },
6461
+ # },
6462
+ # ],
6463
+ # tag_condition: {
6464
+ # key: "TagKey", # required
6465
+ # value: "TagValue",
6466
+ # },
6467
+ # },
6468
+ # max_results: 1,
6469
+ # override_knowledge_base_search_type: "HYBRID", # accepts HYBRID, SEMANTIC
6470
+ # },
6471
+ # },
6472
+ # association_id: "Uuid",
6473
+ # association_type: "KNOWLEDGE_BASE", # accepts KNOWLEDGE_BASE
6474
+ # },
6475
+ # ],
6476
+ # self_service_ai_guardrail_id: "UuidWithQualifier",
6477
+ # self_service_answer_generation_ai_prompt_id: "UuidWithQualifier",
6478
+ # self_service_pre_processing_ai_prompt_id: "UuidWithQualifier",
6479
+ # },
5598
6480
  # },
5599
6481
  # description: "Description",
5600
6482
  # visibility_status: "SAVED", # required, accepts SAVED, PUBLISHED
@@ -5606,6 +6488,7 @@ module Aws::QConnect
5606
6488
  # resp.ai_agent.ai_agent_id #=> String
5607
6489
  # resp.ai_agent.assistant_arn #=> String
5608
6490
  # resp.ai_agent.assistant_id #=> String
6491
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
5609
6492
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
5610
6493
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
5611
6494
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
@@ -5625,6 +6508,7 @@ module Aws::QConnect
5625
6508
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
5626
6509
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
5627
6510
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
6511
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
5628
6512
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
5629
6513
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
5630
6514
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
@@ -5642,6 +6526,25 @@ module Aws::QConnect
5642
6526
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
5643
6527
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
5644
6528
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
6529
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations #=> Array
6530
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions #=> Array
6531
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions[0].key #=> String
6532
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.and_conditions[0].value #=> String
6533
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions #=> Array
6534
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions #=> Array
6535
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions[0].key #=> String
6536
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions[0].value #=> String
6537
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.key #=> String
6538
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.value #=> String
6539
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.key #=> String
6540
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.value #=> String
6541
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
6542
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
6543
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_id #=> String
6544
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
6545
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_ai_guardrail_id #=> String
6546
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_answer_generation_ai_prompt_id #=> String
6547
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_pre_processing_ai_prompt_id #=> String
5645
6548
  # resp.ai_agent.description #=> String
5646
6549
  # resp.ai_agent.modified_time #=> Time
5647
6550
  # resp.ai_agent.name #=> String
@@ -5649,7 +6552,7 @@ module Aws::QConnect
5649
6552
  # resp.ai_agent.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
5650
6553
  # resp.ai_agent.tags #=> Hash
5651
6554
  # resp.ai_agent.tags["TagKey"] #=> String
5652
- # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
6555
+ # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION", "SELF_SERVICE"
5653
6556
  # resp.ai_agent.visibility_status #=> String, one of "SAVED", "PUBLISHED"
5654
6557
  #
5655
6558
  # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateAIAgent AWS API Documentation
@@ -5661,6 +6564,177 @@ module Aws::QConnect
5661
6564
  req.send_request(options)
5662
6565
  end
5663
6566
 
6567
+ # Updates an AI Guardrail.
6568
+ #
6569
+ # @option params [required, String] :ai_guardrail_id
6570
+ # The identifier of the Amazon Q in Connect AI Guardrail.
6571
+ #
6572
+ # @option params [required, String] :assistant_id
6573
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
6574
+ # ID or the ARN. URLs cannot contain the ARN.
6575
+ #
6576
+ # @option params [required, String] :blocked_input_messaging
6577
+ # The message to return when the AI Guardrail blocks a prompt.
6578
+ #
6579
+ # @option params [required, String] :blocked_outputs_messaging
6580
+ # The message to return when the AI Guardrail blocks a model response.
6581
+ #
6582
+ # @option params [String] :client_token
6583
+ # A unique, case-sensitive identifier that you provide to ensure the
6584
+ # idempotency of the request. If not provided, the Amazon Web Services
6585
+ # SDK populates this field. For more information about idempotency, see
6586
+ # [Making retries safe with idempotent APIs][1]..
6587
+ #
6588
+ # **A suitable default value is auto-generated.** You should normally
6589
+ # not need to pass this option.**
6590
+ #
6591
+ #
6592
+ #
6593
+ # [1]: http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
6594
+ #
6595
+ # @option params [Types::AIGuardrailContentPolicyConfig] :content_policy_config
6596
+ # The content filter policies to configure for the AI Guardrail.
6597
+ #
6598
+ # @option params [Types::AIGuardrailContextualGroundingPolicyConfig] :contextual_grounding_policy_config
6599
+ # The contextual grounding policy configuration used to create an AI
6600
+ # Guardrail.
6601
+ #
6602
+ # @option params [String] :description
6603
+ # A description of the AI Guardrail.
6604
+ #
6605
+ # @option params [Types::AIGuardrailSensitiveInformationPolicyConfig] :sensitive_information_policy_config
6606
+ # The sensitive information policy to configure for the AI Guardrail.
6607
+ #
6608
+ # @option params [Types::AIGuardrailTopicPolicyConfig] :topic_policy_config
6609
+ # The topic policies to configure for the AI Guardrail.
6610
+ #
6611
+ # @option params [required, String] :visibility_status
6612
+ # The visibility status of the Amazon Q in Connect AI Guardrail.
6613
+ #
6614
+ # @option params [Types::AIGuardrailWordPolicyConfig] :word_policy_config
6615
+ # The word policy you configure for the AI Guardrail.
6616
+ #
6617
+ # @return [Types::UpdateAIGuardrailResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6618
+ #
6619
+ # * {Types::UpdateAIGuardrailResponse#ai_guardrail #ai_guardrail} => Types::AIGuardrailData
6620
+ #
6621
+ # @example Request syntax with placeholder values
6622
+ #
6623
+ # resp = client.update_ai_guardrail({
6624
+ # ai_guardrail_id: "UuidOrArnOrEitherWithQualifier", # required
6625
+ # assistant_id: "UuidOrArn", # required
6626
+ # blocked_input_messaging: "AIGuardrailBlockedMessaging", # required
6627
+ # blocked_outputs_messaging: "AIGuardrailBlockedMessaging", # required
6628
+ # client_token: "ClientToken",
6629
+ # content_policy_config: {
6630
+ # filters_config: [ # required
6631
+ # {
6632
+ # input_strength: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH
6633
+ # output_strength: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH
6634
+ # type: "SEXUAL", # required, accepts SEXUAL, VIOLENCE, HATE, INSULTS, MISCONDUCT, PROMPT_ATTACK
6635
+ # },
6636
+ # ],
6637
+ # },
6638
+ # contextual_grounding_policy_config: {
6639
+ # filters_config: [ # required
6640
+ # {
6641
+ # threshold: 1.0, # required
6642
+ # type: "GROUNDING", # required, accepts GROUNDING, RELEVANCE
6643
+ # },
6644
+ # ],
6645
+ # },
6646
+ # description: "AIGuardrailDescription",
6647
+ # sensitive_information_policy_config: {
6648
+ # pii_entities_config: [
6649
+ # {
6650
+ # action: "BLOCK", # required, accepts BLOCK, ANONYMIZE
6651
+ # type: "ADDRESS", # required, accepts ADDRESS, AGE, AWS_ACCESS_KEY, AWS_SECRET_KEY, CA_HEALTH_NUMBER, CA_SOCIAL_INSURANCE_NUMBER, CREDIT_DEBIT_CARD_CVV, CREDIT_DEBIT_CARD_EXPIRY, CREDIT_DEBIT_CARD_NUMBER, DRIVER_ID, EMAIL, INTERNATIONAL_BANK_ACCOUNT_NUMBER, IP_ADDRESS, LICENSE_PLATE, MAC_ADDRESS, NAME, PASSWORD, PHONE, PIN, SWIFT_CODE, UK_NATIONAL_HEALTH_SERVICE_NUMBER, UK_NATIONAL_INSURANCE_NUMBER, UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER, URL, USERNAME, US_BANK_ACCOUNT_NUMBER, US_BANK_ROUTING_NUMBER, US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER, US_PASSPORT_NUMBER, US_SOCIAL_SECURITY_NUMBER, VEHICLE_IDENTIFICATION_NUMBER
6652
+ # },
6653
+ # ],
6654
+ # regexes_config: [
6655
+ # {
6656
+ # action: "BLOCK", # required, accepts BLOCK, ANONYMIZE
6657
+ # description: "GuardrailRegexDescription",
6658
+ # name: "GuardrailRegexName", # required
6659
+ # pattern: "GuardrailRegexPattern", # required
6660
+ # },
6661
+ # ],
6662
+ # },
6663
+ # topic_policy_config: {
6664
+ # topics_config: [ # required
6665
+ # {
6666
+ # definition: "GuardrailTopicDefinition", # required
6667
+ # examples: ["GuardrailTopicExample"],
6668
+ # name: "GuardrailTopicName", # required
6669
+ # type: "DENY", # required, accepts DENY
6670
+ # },
6671
+ # ],
6672
+ # },
6673
+ # visibility_status: "SAVED", # required, accepts SAVED, PUBLISHED
6674
+ # word_policy_config: {
6675
+ # managed_word_lists_config: [
6676
+ # {
6677
+ # type: "PROFANITY", # required, accepts PROFANITY
6678
+ # },
6679
+ # ],
6680
+ # words_config: [
6681
+ # {
6682
+ # text: "GuardrailWordText", # required
6683
+ # },
6684
+ # ],
6685
+ # },
6686
+ # })
6687
+ #
6688
+ # @example Response structure
6689
+ #
6690
+ # resp.ai_guardrail.ai_guardrail_arn #=> String
6691
+ # resp.ai_guardrail.ai_guardrail_id #=> String
6692
+ # resp.ai_guardrail.assistant_arn #=> String
6693
+ # resp.ai_guardrail.assistant_id #=> String
6694
+ # resp.ai_guardrail.blocked_input_messaging #=> String
6695
+ # resp.ai_guardrail.blocked_outputs_messaging #=> String
6696
+ # resp.ai_guardrail.content_policy_config.filters_config #=> Array
6697
+ # resp.ai_guardrail.content_policy_config.filters_config[0].input_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
6698
+ # resp.ai_guardrail.content_policy_config.filters_config[0].output_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
6699
+ # resp.ai_guardrail.content_policy_config.filters_config[0].type #=> String, one of "SEXUAL", "VIOLENCE", "HATE", "INSULTS", "MISCONDUCT", "PROMPT_ATTACK"
6700
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config #=> Array
6701
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].threshold #=> Float
6702
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].type #=> String, one of "GROUNDING", "RELEVANCE"
6703
+ # resp.ai_guardrail.description #=> String
6704
+ # resp.ai_guardrail.modified_time #=> Time
6705
+ # resp.ai_guardrail.name #=> String
6706
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config #=> Array
6707
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
6708
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config[0].type #=> String, one of "ADDRESS", "AGE", "AWS_ACCESS_KEY", "AWS_SECRET_KEY", "CA_HEALTH_NUMBER", "CA_SOCIAL_INSURANCE_NUMBER", "CREDIT_DEBIT_CARD_CVV", "CREDIT_DEBIT_CARD_EXPIRY", "CREDIT_DEBIT_CARD_NUMBER", "DRIVER_ID", "EMAIL", "INTERNATIONAL_BANK_ACCOUNT_NUMBER", "IP_ADDRESS", "LICENSE_PLATE", "MAC_ADDRESS", "NAME", "PASSWORD", "PHONE", "PIN", "SWIFT_CODE", "UK_NATIONAL_HEALTH_SERVICE_NUMBER", "UK_NATIONAL_INSURANCE_NUMBER", "UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER", "URL", "USERNAME", "US_BANK_ACCOUNT_NUMBER", "US_BANK_ROUTING_NUMBER", "US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER", "US_PASSPORT_NUMBER", "US_SOCIAL_SECURITY_NUMBER", "VEHICLE_IDENTIFICATION_NUMBER"
6709
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config #=> Array
6710
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
6711
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].description #=> String
6712
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].name #=> String
6713
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].pattern #=> String
6714
+ # resp.ai_guardrail.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
6715
+ # resp.ai_guardrail.tags #=> Hash
6716
+ # resp.ai_guardrail.tags["TagKey"] #=> String
6717
+ # resp.ai_guardrail.topic_policy_config.topics_config #=> Array
6718
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].definition #=> String
6719
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples #=> Array
6720
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples[0] #=> String
6721
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].name #=> String
6722
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].type #=> String, one of "DENY"
6723
+ # resp.ai_guardrail.visibility_status #=> String, one of "SAVED", "PUBLISHED"
6724
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config #=> Array
6725
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config[0].type #=> String, one of "PROFANITY"
6726
+ # resp.ai_guardrail.word_policy_config.words_config #=> Array
6727
+ # resp.ai_guardrail.word_policy_config.words_config[0].text #=> String
6728
+ #
6729
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateAIGuardrail AWS API Documentation
6730
+ #
6731
+ # @overload update_ai_guardrail(params = {})
6732
+ # @param [Hash] params ({})
6733
+ def update_ai_guardrail(params = {}, options = {})
6734
+ req = build_request(:update_ai_guardrail, params)
6735
+ req.send_request(options)
6736
+ end
6737
+
5664
6738
  # Updates an AI Prompt.
5665
6739
  #
5666
6740
  # @option params [required, String] :ai_prompt_id
@@ -5728,7 +6802,7 @@ module Aws::QConnect
5728
6802
  # resp.ai_prompt.tags["TagKey"] #=> String
5729
6803
  # resp.ai_prompt.template_configuration.text_full_ai_prompt_edit_template_configuration.text #=> String
5730
6804
  # resp.ai_prompt.template_type #=> String, one of "TEXT"
5731
- # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
6805
+ # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION", "SELF_SERVICE_PRE_PROCESSING", "SELF_SERVICE_ANSWER_GENERATION"
5732
6806
  # resp.ai_prompt.visibility_status #=> String, one of "SAVED", "PUBLISHED"
5733
6807
  #
5734
6808
  # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateAIPrompt AWS API Documentation
@@ -5762,7 +6836,7 @@ module Aws::QConnect
5762
6836
  # @example Request syntax with placeholder values
5763
6837
  #
5764
6838
  # resp = client.update_assistant_ai_agent({
5765
- # ai_agent_type: "MANUAL_SEARCH", # required, accepts MANUAL_SEARCH, ANSWER_RECOMMENDATION
6839
+ # ai_agent_type: "MANUAL_SEARCH", # required, accepts MANUAL_SEARCH, ANSWER_RECOMMENDATION, SELF_SERVICE
5766
6840
  # assistant_id: "UuidOrArn", # required
5767
6841
  # configuration: { # required
5768
6842
  # ai_agent_id: "UuidWithQualifier", # required
@@ -6652,7 +7726,7 @@ module Aws::QConnect
6652
7726
  tracer: tracer
6653
7727
  )
6654
7728
  context[:gem_name] = 'aws-sdk-qconnect'
6655
- context[:gem_version] = '1.24.0'
7729
+ context[:gem_version] = '1.25.0'
6656
7730
  Seahorse::Client::Request.new(handlers, context)
6657
7731
  end
6658
7732