aws-sdk-qconnect 1.24.0 → 1.26.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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
  # {
@@ -580,9 +581,11 @@ module Aws::QConnect
580
581
  # },
581
582
  # ],
582
583
  # intent_labeling_generation_ai_prompt_id: "UuidWithQualifier",
584
+ # locale: "NonEmptyString",
583
585
  # query_reformulation_ai_prompt_id: "UuidWithQualifier",
584
586
  # },
585
587
  # manual_search_ai_agent_configuration: {
588
+ # answer_generation_ai_guardrail_id: "UuidWithQualifier",
586
589
  # answer_generation_ai_prompt_id: "UuidWithQualifier",
587
590
  # association_configurations: [
588
591
  # {
@@ -622,6 +625,50 @@ module Aws::QConnect
622
625
  # association_type: "KNOWLEDGE_BASE", # accepts KNOWLEDGE_BASE
623
626
  # },
624
627
  # ],
628
+ # locale: "NonEmptyString",
629
+ # },
630
+ # self_service_ai_agent_configuration: {
631
+ # association_configurations: [
632
+ # {
633
+ # association_configuration_data: {
634
+ # knowledge_base_association_configuration_data: {
635
+ # content_tag_filter: {
636
+ # and_conditions: [
637
+ # {
638
+ # key: "TagKey", # required
639
+ # value: "TagValue",
640
+ # },
641
+ # ],
642
+ # or_conditions: [
643
+ # {
644
+ # and_conditions: [
645
+ # {
646
+ # key: "TagKey", # required
647
+ # value: "TagValue",
648
+ # },
649
+ # ],
650
+ # tag_condition: {
651
+ # key: "TagKey", # required
652
+ # value: "TagValue",
653
+ # },
654
+ # },
655
+ # ],
656
+ # tag_condition: {
657
+ # key: "TagKey", # required
658
+ # value: "TagValue",
659
+ # },
660
+ # },
661
+ # max_results: 1,
662
+ # override_knowledge_base_search_type: "HYBRID", # accepts HYBRID, SEMANTIC
663
+ # },
664
+ # },
665
+ # association_id: "Uuid",
666
+ # association_type: "KNOWLEDGE_BASE", # accepts KNOWLEDGE_BASE
667
+ # },
668
+ # ],
669
+ # self_service_ai_guardrail_id: "UuidWithQualifier",
670
+ # self_service_answer_generation_ai_prompt_id: "UuidWithQualifier",
671
+ # self_service_pre_processing_ai_prompt_id: "UuidWithQualifier",
625
672
  # },
626
673
  # },
627
674
  # description: "Description",
@@ -629,7 +676,7 @@ module Aws::QConnect
629
676
  # tags: {
630
677
  # "TagKey" => "TagValue",
631
678
  # },
632
- # type: "MANUAL_SEARCH", # required, accepts MANUAL_SEARCH, ANSWER_RECOMMENDATION
679
+ # type: "MANUAL_SEARCH", # required, accepts MANUAL_SEARCH, ANSWER_RECOMMENDATION, SELF_SERVICE
633
680
  # visibility_status: "SAVED", # required, accepts SAVED, PUBLISHED
634
681
  # })
635
682
  #
@@ -639,6 +686,7 @@ module Aws::QConnect
639
686
  # resp.ai_agent.ai_agent_id #=> String
640
687
  # resp.ai_agent.assistant_arn #=> String
641
688
  # resp.ai_agent.assistant_id #=> String
689
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
642
690
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
643
691
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
644
692
  # 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
@@ -657,7 +705,9 @@ module Aws::QConnect
657
705
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_id #=> String
658
706
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
659
707
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
708
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.locale #=> String
660
709
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
710
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
661
711
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
662
712
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
663
713
  # 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 +725,26 @@ module Aws::QConnect
675
725
  # 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
726
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
677
727
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
728
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.locale #=> String
729
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations #=> 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.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.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.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 #=> Array
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].and_conditions #=> Array
735
+ # 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
736
+ # 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
737
+ # 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
738
+ # 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
739
+ # 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
740
+ # 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
741
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
742
+ # 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"
743
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_id #=> String
744
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
745
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_ai_guardrail_id #=> String
746
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_answer_generation_ai_prompt_id #=> String
747
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_pre_processing_ai_prompt_id #=> String
678
748
  # resp.ai_agent.description #=> String
679
749
  # resp.ai_agent.modified_time #=> Time
680
750
  # resp.ai_agent.name #=> String
@@ -682,7 +752,7 @@ module Aws::QConnect
682
752
  # resp.ai_agent.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
683
753
  # resp.ai_agent.tags #=> Hash
684
754
  # resp.ai_agent.tags["TagKey"] #=> String
685
- # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
755
+ # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION", "SELF_SERVICE"
686
756
  # resp.ai_agent.visibility_status #=> String, one of "SAVED", "PUBLISHED"
687
757
  #
688
758
  # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAIAgent AWS API Documentation
@@ -744,6 +814,7 @@ module Aws::QConnect
744
814
  # resp.ai_agent.ai_agent_id #=> String
745
815
  # resp.ai_agent.assistant_arn #=> String
746
816
  # resp.ai_agent.assistant_id #=> String
817
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
747
818
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
748
819
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
749
820
  # 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
@@ -762,7 +833,9 @@ module Aws::QConnect
762
833
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_id #=> String
763
834
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
764
835
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
836
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.locale #=> String
765
837
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
838
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
766
839
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
767
840
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
768
841
  # 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 +853,26 @@ module Aws::QConnect
780
853
  # 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
854
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
782
855
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
856
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.locale #=> String
857
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations #=> Array
858
+ # 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
859
+ # 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
860
+ # 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
861
+ # 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
862
+ # 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
863
+ # 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
864
+ # 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
865
+ # 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
866
+ # 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
867
+ # 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
868
+ # 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
869
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
870
+ # 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"
871
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_id #=> String
872
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
873
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_ai_guardrail_id #=> String
874
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_answer_generation_ai_prompt_id #=> String
875
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_pre_processing_ai_prompt_id #=> String
783
876
  # resp.ai_agent.description #=> String
784
877
  # resp.ai_agent.modified_time #=> Time
785
878
  # resp.ai_agent.name #=> String
@@ -787,7 +880,7 @@ module Aws::QConnect
787
880
  # resp.ai_agent.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
788
881
  # resp.ai_agent.tags #=> Hash
789
882
  # resp.ai_agent.tags["TagKey"] #=> String
790
- # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
883
+ # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION", "SELF_SERVICE"
791
884
  # resp.ai_agent.visibility_status #=> String, one of "SAVED", "PUBLISHED"
792
885
  # resp.version_number #=> Integer
793
886
  #
@@ -800,6 +893,273 @@ module Aws::QConnect
800
893
  req.send_request(options)
801
894
  end
802
895
 
896
+ # Creates an Amazon Q in Connect AI Guardrail.
897
+ #
898
+ # @option params [required, String] :assistant_id
899
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
900
+ # ID or the ARN. URLs cannot contain the ARN.
901
+ #
902
+ # @option params [required, String] :blocked_input_messaging
903
+ # The message to return when the AI Guardrail blocks a prompt.
904
+ #
905
+ # @option params [required, String] :blocked_outputs_messaging
906
+ # The message to return when the AI Guardrail blocks a model response.
907
+ #
908
+ # @option params [String] :client_token
909
+ # A unique, case-sensitive identifier that you provide to ensure the
910
+ # idempotency of the request. If not provided, the Amazon Web Services
911
+ # SDK populates this field. For more information about idempotency, see
912
+ # [Making retries safe with idempotent APIs][1]..
913
+ #
914
+ # **A suitable default value is auto-generated.** You should normally
915
+ # not need to pass this option.**
916
+ #
917
+ #
918
+ #
919
+ # [1]: http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
920
+ #
921
+ # @option params [Types::AIGuardrailContentPolicyConfig] :content_policy_config
922
+ # The content filter policies to configure for the AI Guardrail.
923
+ #
924
+ # @option params [Types::AIGuardrailContextualGroundingPolicyConfig] :contextual_grounding_policy_config
925
+ # The contextual grounding policy configuration used to create an AI
926
+ # Guardrail.
927
+ #
928
+ # @option params [String] :description
929
+ # A description of the AI Guardrail.
930
+ #
931
+ # @option params [required, String] :name
932
+ # The name of the AI Guardrail.
933
+ #
934
+ # @option params [Types::AIGuardrailSensitiveInformationPolicyConfig] :sensitive_information_policy_config
935
+ # The sensitive information policy to configure for the AI Guardrail.
936
+ #
937
+ # @option params [Hash<String,String>] :tags
938
+ # The tags used to organize, track, or control access for this resource.
939
+ #
940
+ # @option params [Types::AIGuardrailTopicPolicyConfig] :topic_policy_config
941
+ # The topic policies to configure for the AI Guardrail.
942
+ #
943
+ # @option params [required, String] :visibility_status
944
+ # The visibility status of the AI Guardrail.
945
+ #
946
+ # @option params [Types::AIGuardrailWordPolicyConfig] :word_policy_config
947
+ # The word policy you configure for the AI Guardrail.
948
+ #
949
+ # @return [Types::CreateAIGuardrailResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
950
+ #
951
+ # * {Types::CreateAIGuardrailResponse#ai_guardrail #ai_guardrail} => Types::AIGuardrailData
952
+ #
953
+ # @example Request syntax with placeholder values
954
+ #
955
+ # resp = client.create_ai_guardrail({
956
+ # assistant_id: "UuidOrArn", # required
957
+ # blocked_input_messaging: "AIGuardrailBlockedMessaging", # required
958
+ # blocked_outputs_messaging: "AIGuardrailBlockedMessaging", # required
959
+ # client_token: "ClientToken",
960
+ # content_policy_config: {
961
+ # filters_config: [ # required
962
+ # {
963
+ # input_strength: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH
964
+ # output_strength: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH
965
+ # type: "SEXUAL", # required, accepts SEXUAL, VIOLENCE, HATE, INSULTS, MISCONDUCT, PROMPT_ATTACK
966
+ # },
967
+ # ],
968
+ # },
969
+ # contextual_grounding_policy_config: {
970
+ # filters_config: [ # required
971
+ # {
972
+ # threshold: 1.0, # required
973
+ # type: "GROUNDING", # required, accepts GROUNDING, RELEVANCE
974
+ # },
975
+ # ],
976
+ # },
977
+ # description: "AIGuardrailDescription",
978
+ # name: "Name", # required
979
+ # sensitive_information_policy_config: {
980
+ # pii_entities_config: [
981
+ # {
982
+ # action: "BLOCK", # required, accepts BLOCK, ANONYMIZE
983
+ # 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
984
+ # },
985
+ # ],
986
+ # regexes_config: [
987
+ # {
988
+ # action: "BLOCK", # required, accepts BLOCK, ANONYMIZE
989
+ # description: "GuardrailRegexDescription",
990
+ # name: "GuardrailRegexName", # required
991
+ # pattern: "GuardrailRegexPattern", # required
992
+ # },
993
+ # ],
994
+ # },
995
+ # tags: {
996
+ # "TagKey" => "TagValue",
997
+ # },
998
+ # topic_policy_config: {
999
+ # topics_config: [ # required
1000
+ # {
1001
+ # definition: "GuardrailTopicDefinition", # required
1002
+ # examples: ["GuardrailTopicExample"],
1003
+ # name: "GuardrailTopicName", # required
1004
+ # type: "DENY", # required, accepts DENY
1005
+ # },
1006
+ # ],
1007
+ # },
1008
+ # visibility_status: "SAVED", # required, accepts SAVED, PUBLISHED
1009
+ # word_policy_config: {
1010
+ # managed_word_lists_config: [
1011
+ # {
1012
+ # type: "PROFANITY", # required, accepts PROFANITY
1013
+ # },
1014
+ # ],
1015
+ # words_config: [
1016
+ # {
1017
+ # text: "GuardrailWordText", # required
1018
+ # },
1019
+ # ],
1020
+ # },
1021
+ # })
1022
+ #
1023
+ # @example Response structure
1024
+ #
1025
+ # resp.ai_guardrail.ai_guardrail_arn #=> String
1026
+ # resp.ai_guardrail.ai_guardrail_id #=> String
1027
+ # resp.ai_guardrail.assistant_arn #=> String
1028
+ # resp.ai_guardrail.assistant_id #=> String
1029
+ # resp.ai_guardrail.blocked_input_messaging #=> String
1030
+ # resp.ai_guardrail.blocked_outputs_messaging #=> String
1031
+ # resp.ai_guardrail.content_policy_config.filters_config #=> Array
1032
+ # resp.ai_guardrail.content_policy_config.filters_config[0].input_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
1033
+ # resp.ai_guardrail.content_policy_config.filters_config[0].output_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
1034
+ # resp.ai_guardrail.content_policy_config.filters_config[0].type #=> String, one of "SEXUAL", "VIOLENCE", "HATE", "INSULTS", "MISCONDUCT", "PROMPT_ATTACK"
1035
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config #=> Array
1036
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].threshold #=> Float
1037
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].type #=> String, one of "GROUNDING", "RELEVANCE"
1038
+ # resp.ai_guardrail.description #=> String
1039
+ # resp.ai_guardrail.modified_time #=> Time
1040
+ # resp.ai_guardrail.name #=> String
1041
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config #=> Array
1042
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
1043
+ # 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"
1044
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config #=> Array
1045
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
1046
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].description #=> String
1047
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].name #=> String
1048
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].pattern #=> String
1049
+ # resp.ai_guardrail.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
1050
+ # resp.ai_guardrail.tags #=> Hash
1051
+ # resp.ai_guardrail.tags["TagKey"] #=> String
1052
+ # resp.ai_guardrail.topic_policy_config.topics_config #=> Array
1053
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].definition #=> String
1054
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples #=> Array
1055
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples[0] #=> String
1056
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].name #=> String
1057
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].type #=> String, one of "DENY"
1058
+ # resp.ai_guardrail.visibility_status #=> String, one of "SAVED", "PUBLISHED"
1059
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config #=> Array
1060
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config[0].type #=> String, one of "PROFANITY"
1061
+ # resp.ai_guardrail.word_policy_config.words_config #=> Array
1062
+ # resp.ai_guardrail.word_policy_config.words_config[0].text #=> String
1063
+ #
1064
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAIGuardrail AWS API Documentation
1065
+ #
1066
+ # @overload create_ai_guardrail(params = {})
1067
+ # @param [Hash] params ({})
1068
+ def create_ai_guardrail(params = {}, options = {})
1069
+ req = build_request(:create_ai_guardrail, params)
1070
+ req.send_request(options)
1071
+ end
1072
+
1073
+ # Creates an Amazon Q in Connect AI Guardrail version.
1074
+ #
1075
+ # @option params [required, String] :ai_guardrail_id
1076
+ # The identifier of the Amazon Q in Connect AI Guardrail.
1077
+ #
1078
+ # @option params [required, String] :assistant_id
1079
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
1080
+ # ID or the ARN. URLs cannot contain the ARN.
1081
+ #
1082
+ # @option params [String] :client_token
1083
+ # A unique, case-sensitive identifier that you provide to ensure the
1084
+ # idempotency of the request. If not provided, the Amazon Web Services
1085
+ # SDK populates this field. For more information about idempotency, see
1086
+ # [Making retries safe with idempotent APIs][1]..
1087
+ #
1088
+ # **A suitable default value is auto-generated.** You should normally
1089
+ # not need to pass this option.**
1090
+ #
1091
+ #
1092
+ #
1093
+ # [1]: http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
1094
+ #
1095
+ # @option params [Time,DateTime,Date,Integer,String] :modified_time
1096
+ # The time the AI Guardrail was last modified.
1097
+ #
1098
+ # @return [Types::CreateAIGuardrailVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1099
+ #
1100
+ # * {Types::CreateAIGuardrailVersionResponse#ai_guardrail #ai_guardrail} => Types::AIGuardrailData
1101
+ # * {Types::CreateAIGuardrailVersionResponse#version_number #version_number} => Integer
1102
+ #
1103
+ # @example Request syntax with placeholder values
1104
+ #
1105
+ # resp = client.create_ai_guardrail_version({
1106
+ # ai_guardrail_id: "UuidOrArnOrEitherWithQualifier", # required
1107
+ # assistant_id: "UuidOrArn", # required
1108
+ # client_token: "ClientToken",
1109
+ # modified_time: Time.now,
1110
+ # })
1111
+ #
1112
+ # @example Response structure
1113
+ #
1114
+ # resp.ai_guardrail.ai_guardrail_arn #=> String
1115
+ # resp.ai_guardrail.ai_guardrail_id #=> String
1116
+ # resp.ai_guardrail.assistant_arn #=> String
1117
+ # resp.ai_guardrail.assistant_id #=> String
1118
+ # resp.ai_guardrail.blocked_input_messaging #=> String
1119
+ # resp.ai_guardrail.blocked_outputs_messaging #=> String
1120
+ # resp.ai_guardrail.content_policy_config.filters_config #=> Array
1121
+ # resp.ai_guardrail.content_policy_config.filters_config[0].input_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
1122
+ # resp.ai_guardrail.content_policy_config.filters_config[0].output_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
1123
+ # resp.ai_guardrail.content_policy_config.filters_config[0].type #=> String, one of "SEXUAL", "VIOLENCE", "HATE", "INSULTS", "MISCONDUCT", "PROMPT_ATTACK"
1124
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config #=> Array
1125
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].threshold #=> Float
1126
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].type #=> String, one of "GROUNDING", "RELEVANCE"
1127
+ # resp.ai_guardrail.description #=> String
1128
+ # resp.ai_guardrail.modified_time #=> Time
1129
+ # resp.ai_guardrail.name #=> String
1130
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config #=> Array
1131
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
1132
+ # 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"
1133
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config #=> Array
1134
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
1135
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].description #=> String
1136
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].name #=> String
1137
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].pattern #=> String
1138
+ # resp.ai_guardrail.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
1139
+ # resp.ai_guardrail.tags #=> Hash
1140
+ # resp.ai_guardrail.tags["TagKey"] #=> String
1141
+ # resp.ai_guardrail.topic_policy_config.topics_config #=> Array
1142
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].definition #=> String
1143
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples #=> Array
1144
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples[0] #=> String
1145
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].name #=> String
1146
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].type #=> String, one of "DENY"
1147
+ # resp.ai_guardrail.visibility_status #=> String, one of "SAVED", "PUBLISHED"
1148
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config #=> Array
1149
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config[0].type #=> String, one of "PROFANITY"
1150
+ # resp.ai_guardrail.word_policy_config.words_config #=> Array
1151
+ # resp.ai_guardrail.word_policy_config.words_config[0].text #=> String
1152
+ # resp.version_number #=> Integer
1153
+ #
1154
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAIGuardrailVersion AWS API Documentation
1155
+ #
1156
+ # @overload create_ai_guardrail_version(params = {})
1157
+ # @param [Hash] params ({})
1158
+ def create_ai_guardrail_version(params = {}, options = {})
1159
+ req = build_request(:create_ai_guardrail_version, params)
1160
+ req.send_request(options)
1161
+ end
1162
+
803
1163
  # Creates an Amazon Q in Connect AI Prompt.
804
1164
  #
805
1165
  # @option params [required, String] :api_format
@@ -869,7 +1229,7 @@ module Aws::QConnect
869
1229
  # },
870
1230
  # },
871
1231
  # template_type: "TEXT", # required, accepts TEXT
872
- # type: "ANSWER_GENERATION", # required, accepts ANSWER_GENERATION, INTENT_LABELING_GENERATION, QUERY_REFORMULATION
1232
+ # type: "ANSWER_GENERATION", # required, accepts ANSWER_GENERATION, INTENT_LABELING_GENERATION, QUERY_REFORMULATION, SELF_SERVICE_PRE_PROCESSING, SELF_SERVICE_ANSWER_GENERATION
873
1233
  # visibility_status: "SAVED", # required, accepts SAVED, PUBLISHED
874
1234
  # })
875
1235
  #
@@ -890,7 +1250,7 @@ module Aws::QConnect
890
1250
  # resp.ai_prompt.tags["TagKey"] #=> String
891
1251
  # resp.ai_prompt.template_configuration.text_full_ai_prompt_edit_template_configuration.text #=> String
892
1252
  # resp.ai_prompt.template_type #=> String, one of "TEXT"
893
- # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
1253
+ # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION", "SELF_SERVICE_PRE_PROCESSING", "SELF_SERVICE_ANSWER_GENERATION"
894
1254
  # resp.ai_prompt.visibility_status #=> String, one of "SAVED", "PUBLISHED"
895
1255
  #
896
1256
  # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAIPrompt AWS API Documentation
@@ -958,7 +1318,7 @@ module Aws::QConnect
958
1318
  # resp.ai_prompt.tags["TagKey"] #=> String
959
1319
  # resp.ai_prompt.template_configuration.text_full_ai_prompt_edit_template_configuration.text #=> String
960
1320
  # resp.ai_prompt.template_type #=> String, one of "TEXT"
961
- # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
1321
+ # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION", "SELF_SERVICE_PRE_PROCESSING", "SELF_SERVICE_ANSWER_GENERATION"
962
1322
  # resp.ai_prompt.visibility_status #=> String, one of "SAVED", "PUBLISHED"
963
1323
  # resp.version_number #=> Integer
964
1324
  #
@@ -2400,6 +2760,65 @@ module Aws::QConnect
2400
2760
  req.send_request(options)
2401
2761
  end
2402
2762
 
2763
+ # Deletes an Amazon Q in Connect AI Guardrail.
2764
+ #
2765
+ # @option params [required, String] :ai_guardrail_id
2766
+ # The identifier of the Amazon Q in Connect AI Guardrail. Can be either
2767
+ # the ID or the ARN. URLs cannot contain the ARN.
2768
+ #
2769
+ # @option params [required, String] :assistant_id
2770
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
2771
+ # ID or the ARN. URLs cannot contain the ARN.
2772
+ #
2773
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2774
+ #
2775
+ # @example Request syntax with placeholder values
2776
+ #
2777
+ # resp = client.delete_ai_guardrail({
2778
+ # ai_guardrail_id: "UuidOrArnOrEitherWithQualifier", # required
2779
+ # assistant_id: "UuidOrArn", # required
2780
+ # })
2781
+ #
2782
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteAIGuardrail AWS API Documentation
2783
+ #
2784
+ # @overload delete_ai_guardrail(params = {})
2785
+ # @param [Hash] params ({})
2786
+ def delete_ai_guardrail(params = {}, options = {})
2787
+ req = build_request(:delete_ai_guardrail, params)
2788
+ req.send_request(options)
2789
+ end
2790
+
2791
+ # Delete and Amazon Q in Connect AI Guardrail version.
2792
+ #
2793
+ # @option params [required, String] :ai_guardrail_id
2794
+ # The identifier of the Amazon Q in Connect AI Guardrail.
2795
+ #
2796
+ # @option params [required, String] :assistant_id
2797
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
2798
+ # ID or the ARN. URLs cannot contain the ARN.
2799
+ #
2800
+ # @option params [required, Integer] :version_number
2801
+ # The version number of the AI Guardrail version to be deleted.
2802
+ #
2803
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2804
+ #
2805
+ # @example Request syntax with placeholder values
2806
+ #
2807
+ # resp = client.delete_ai_guardrail_version({
2808
+ # ai_guardrail_id: "UuidOrArnOrEitherWithQualifier", # required
2809
+ # assistant_id: "UuidOrArn", # required
2810
+ # version_number: 1, # required
2811
+ # })
2812
+ #
2813
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteAIGuardrailVersion AWS API Documentation
2814
+ #
2815
+ # @overload delete_ai_guardrail_version(params = {})
2816
+ # @param [Hash] params ({})
2817
+ def delete_ai_guardrail_version(params = {}, options = {})
2818
+ req = build_request(:delete_ai_guardrail_version, params)
2819
+ req.send_request(options)
2820
+ end
2821
+
2403
2822
  # Deletes an Amazon Q in Connect AI Prompt.
2404
2823
  #
2405
2824
  # @option params [required, String] :ai_prompt_id
@@ -2765,6 +3184,7 @@ module Aws::QConnect
2765
3184
  # resp.ai_agent.ai_agent_id #=> String
2766
3185
  # resp.ai_agent.assistant_arn #=> String
2767
3186
  # resp.ai_agent.assistant_id #=> String
3187
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
2768
3188
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
2769
3189
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
2770
3190
  # 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
@@ -2783,7 +3203,9 @@ module Aws::QConnect
2783
3203
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_id #=> String
2784
3204
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
2785
3205
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
3206
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.locale #=> String
2786
3207
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
3208
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
2787
3209
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
2788
3210
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
2789
3211
  # 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 +3223,26 @@ module Aws::QConnect
2801
3223
  # 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
3224
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
2803
3225
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
3226
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.locale #=> String
3227
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations #=> Array
3228
+ # 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
3229
+ # 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
3230
+ # 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
3231
+ # 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
3232
+ # 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
3233
+ # 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
3234
+ # 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
3235
+ # 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
3236
+ # 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
3237
+ # 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
3238
+ # 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
3239
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
3240
+ # 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"
3241
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_id #=> String
3242
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
3243
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_ai_guardrail_id #=> String
3244
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_answer_generation_ai_prompt_id #=> String
3245
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_pre_processing_ai_prompt_id #=> String
2804
3246
  # resp.ai_agent.description #=> String
2805
3247
  # resp.ai_agent.modified_time #=> Time
2806
3248
  # resp.ai_agent.name #=> String
@@ -2808,7 +3250,7 @@ module Aws::QConnect
2808
3250
  # resp.ai_agent.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
2809
3251
  # resp.ai_agent.tags #=> Hash
2810
3252
  # resp.ai_agent.tags["TagKey"] #=> String
2811
- # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
3253
+ # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION", "SELF_SERVICE"
2812
3254
  # resp.ai_agent.visibility_status #=> String, one of "SAVED", "PUBLISHED"
2813
3255
  # resp.version_number #=> Integer
2814
3256
  #
@@ -2821,6 +3263,78 @@ module Aws::QConnect
2821
3263
  req.send_request(options)
2822
3264
  end
2823
3265
 
3266
+ # Gets the Amazon Q in Connect AI Guardrail.
3267
+ #
3268
+ # @option params [required, String] :ai_guardrail_id
3269
+ # The identifier of the Amazon Q in Connect AI Guardrail.
3270
+ #
3271
+ # @option params [required, String] :assistant_id
3272
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
3273
+ # ID or the ARN. URLs cannot contain the ARN.
3274
+ #
3275
+ # @return [Types::GetAIGuardrailResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3276
+ #
3277
+ # * {Types::GetAIGuardrailResponse#ai_guardrail #ai_guardrail} => Types::AIGuardrailData
3278
+ # * {Types::GetAIGuardrailResponse#version_number #version_number} => Integer
3279
+ #
3280
+ # @example Request syntax with placeholder values
3281
+ #
3282
+ # resp = client.get_ai_guardrail({
3283
+ # ai_guardrail_id: "UuidOrArnOrEitherWithQualifier", # required
3284
+ # assistant_id: "UuidOrArn", # required
3285
+ # })
3286
+ #
3287
+ # @example Response structure
3288
+ #
3289
+ # resp.ai_guardrail.ai_guardrail_arn #=> String
3290
+ # resp.ai_guardrail.ai_guardrail_id #=> String
3291
+ # resp.ai_guardrail.assistant_arn #=> String
3292
+ # resp.ai_guardrail.assistant_id #=> String
3293
+ # resp.ai_guardrail.blocked_input_messaging #=> String
3294
+ # resp.ai_guardrail.blocked_outputs_messaging #=> String
3295
+ # resp.ai_guardrail.content_policy_config.filters_config #=> Array
3296
+ # resp.ai_guardrail.content_policy_config.filters_config[0].input_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
3297
+ # resp.ai_guardrail.content_policy_config.filters_config[0].output_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
3298
+ # resp.ai_guardrail.content_policy_config.filters_config[0].type #=> String, one of "SEXUAL", "VIOLENCE", "HATE", "INSULTS", "MISCONDUCT", "PROMPT_ATTACK"
3299
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config #=> Array
3300
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].threshold #=> Float
3301
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].type #=> String, one of "GROUNDING", "RELEVANCE"
3302
+ # resp.ai_guardrail.description #=> String
3303
+ # resp.ai_guardrail.modified_time #=> Time
3304
+ # resp.ai_guardrail.name #=> String
3305
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config #=> Array
3306
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
3307
+ # 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"
3308
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config #=> Array
3309
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
3310
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].description #=> String
3311
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].name #=> String
3312
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].pattern #=> String
3313
+ # resp.ai_guardrail.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
3314
+ # resp.ai_guardrail.tags #=> Hash
3315
+ # resp.ai_guardrail.tags["TagKey"] #=> String
3316
+ # resp.ai_guardrail.topic_policy_config.topics_config #=> Array
3317
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].definition #=> String
3318
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples #=> Array
3319
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples[0] #=> String
3320
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].name #=> String
3321
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].type #=> String, one of "DENY"
3322
+ # resp.ai_guardrail.visibility_status #=> String, one of "SAVED", "PUBLISHED"
3323
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config #=> Array
3324
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config[0].type #=> String, one of "PROFANITY"
3325
+ # resp.ai_guardrail.word_policy_config.words_config #=> Array
3326
+ # resp.ai_guardrail.word_policy_config.words_config[0].text #=> String
3327
+ # resp.version_number #=> Integer
3328
+ #
3329
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetAIGuardrail AWS API Documentation
3330
+ #
3331
+ # @overload get_ai_guardrail(params = {})
3332
+ # @param [Hash] params ({})
3333
+ def get_ai_guardrail(params = {}, options = {})
3334
+ req = build_request(:get_ai_guardrail, params)
3335
+ req.send_request(options)
3336
+ end
3337
+
2824
3338
  # Gets and Amazon Q in Connect AI Prompt.
2825
3339
  #
2826
3340
  # @option params [required, String] :ai_prompt_id
@@ -2859,7 +3373,7 @@ module Aws::QConnect
2859
3373
  # resp.ai_prompt.tags["TagKey"] #=> String
2860
3374
  # resp.ai_prompt.template_configuration.text_full_ai_prompt_edit_template_configuration.text #=> String
2861
3375
  # resp.ai_prompt.template_type #=> String, one of "TEXT"
2862
- # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
3376
+ # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION", "SELF_SERVICE_PRE_PROCESSING", "SELF_SERVICE_ANSWER_GENERATION"
2863
3377
  # resp.ai_prompt.visibility_status #=> String, one of "SAVED", "PUBLISHED"
2864
3378
  # resp.version_number #=> Integer
2865
3379
  #
@@ -3355,6 +3869,60 @@ module Aws::QConnect
3355
3869
  req.send_request(options)
3356
3870
  end
3357
3871
 
3872
+ # Retrieves next message on an Amazon Q in Connect session.
3873
+ #
3874
+ # @option params [required, String] :assistant_id
3875
+ # The identifier of the Amazon Q in Connect assistant.
3876
+ #
3877
+ # @option params [required, String] :next_message_token
3878
+ # The token for the next message. Use the value returned in the
3879
+ # SendMessage or previous response in the next request to retrieve the
3880
+ # next message.
3881
+ #
3882
+ # @option params [required, String] :session_id
3883
+ # The identifier of the Amazon Q in Connect session.
3884
+ #
3885
+ # @return [Types::GetNextMessageResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3886
+ #
3887
+ # * {Types::GetNextMessageResponse#conversation_session_data #conversation_session_data} => Array&lt;Types::RuntimeSessionData&gt;
3888
+ # * {Types::GetNextMessageResponse#conversation_state #conversation_state} => Types::ConversationState
3889
+ # * {Types::GetNextMessageResponse#next_message_token #next_message_token} => String
3890
+ # * {Types::GetNextMessageResponse#request_message_id #request_message_id} => String
3891
+ # * {Types::GetNextMessageResponse#response #response} => Types::MessageOutput
3892
+ # * {Types::GetNextMessageResponse#type #type} => String
3893
+ #
3894
+ # @example Request syntax with placeholder values
3895
+ #
3896
+ # resp = client.get_next_message({
3897
+ # assistant_id: "UuidOrArn", # required
3898
+ # next_message_token: "NextToken", # required
3899
+ # session_id: "UuidOrArn", # required
3900
+ # })
3901
+ #
3902
+ # @example Response structure
3903
+ #
3904
+ # resp.conversation_session_data #=> Array
3905
+ # resp.conversation_session_data[0].key #=> String
3906
+ # resp.conversation_session_data[0].value.string_value #=> String
3907
+ # resp.conversation_state.reason #=> String, one of "SUCCESS", "FAILED", "REJECTED"
3908
+ # resp.conversation_state.status #=> String, one of "CLOSED", "READY", "PROCESSING"
3909
+ # resp.next_message_token #=> String
3910
+ # resp.request_message_id #=> String
3911
+ # resp.response.message_id #=> String
3912
+ # resp.response.participant #=> String, one of "CUSTOMER", "AGENT", "BOT"
3913
+ # resp.response.timestamp #=> Time
3914
+ # resp.response.value.text.value #=> String
3915
+ # resp.type #=> String, one of "TEXT"
3916
+ #
3917
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetNextMessage AWS API Documentation
3918
+ #
3919
+ # @overload get_next_message(params = {})
3920
+ # @param [Hash] params ({})
3921
+ def get_next_message(params = {}, options = {})
3922
+ req = build_request(:get_next_message, params)
3923
+ req.send_request(options)
3924
+ end
3925
+
3358
3926
  # Retrieves the quick response.
3359
3927
  #
3360
3928
  # @option params [required, String] :knowledge_base_id
@@ -3638,6 +4206,7 @@ module Aws::QConnect
3638
4206
  # resp.ai_agent_version_summaries[0].ai_agent_summary.ai_agent_id #=> String
3639
4207
  # resp.ai_agent_version_summaries[0].ai_agent_summary.assistant_arn #=> String
3640
4208
  # resp.ai_agent_version_summaries[0].ai_agent_summary.assistant_id #=> String
4209
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
3641
4210
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
3642
4211
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
3643
4212
  # 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
@@ -3656,7 +4225,9 @@ module Aws::QConnect
3656
4225
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_id #=> String
3657
4226
  # 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
4227
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
4228
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.locale #=> String
3659
4229
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
4230
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.manual_search_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
3660
4231
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
3661
4232
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
3662
4233
  # 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 +4245,26 @@ module Aws::QConnect
3674
4245
  # 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
4246
  # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
3676
4247
  # 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"
4248
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.manual_search_ai_agent_configuration.locale #=> String
4249
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations #=> Array
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.and_conditions #=> Array
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.content_tag_filter.and_conditions[0].key #=> String
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.content_tag_filter.and_conditions[0].value #=> String
4253
+ # 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
4254
+ # 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
4255
+ # 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
4256
+ # 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
4257
+ # 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
4258
+ # 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
4259
+ # 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
4260
+ # 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
4261
+ # 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
4262
+ # 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"
4263
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.association_configurations[0].association_id #=> String
4264
+ # 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"
4265
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.self_service_ai_guardrail_id #=> String
4266
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.self_service_answer_generation_ai_prompt_id #=> String
4267
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.self_service_ai_agent_configuration.self_service_pre_processing_ai_prompt_id #=> String
3677
4268
  # resp.ai_agent_version_summaries[0].ai_agent_summary.description #=> String
3678
4269
  # resp.ai_agent_version_summaries[0].ai_agent_summary.modified_time #=> Time
3679
4270
  # resp.ai_agent_version_summaries[0].ai_agent_summary.name #=> String
@@ -3681,7 +4272,7 @@ module Aws::QConnect
3681
4272
  # 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
4273
  # resp.ai_agent_version_summaries[0].ai_agent_summary.tags #=> Hash
3683
4274
  # 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"
4275
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION", "SELF_SERVICE"
3685
4276
  # resp.ai_agent_version_summaries[0].ai_agent_summary.visibility_status #=> String, one of "SAVED", "PUBLISHED"
3686
4277
  # resp.ai_agent_version_summaries[0].version_number #=> Integer
3687
4278
  # resp.next_token #=> String
@@ -3737,6 +4328,7 @@ module Aws::QConnect
3737
4328
  # resp.ai_agent_summaries[0].ai_agent_id #=> String
3738
4329
  # resp.ai_agent_summaries[0].assistant_arn #=> String
3739
4330
  # resp.ai_agent_summaries[0].assistant_id #=> String
4331
+ # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
3740
4332
  # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
3741
4333
  # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
3742
4334
  # 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
@@ -3755,7 +4347,9 @@ module Aws::QConnect
3755
4347
  # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_id #=> String
3756
4348
  # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
3757
4349
  # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
4350
+ # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.locale #=> String
3758
4351
  # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
4352
+ # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
3759
4353
  # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
3760
4354
  # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
3761
4355
  # 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 +4367,26 @@ module Aws::QConnect
3773
4367
  # 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
4368
  # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
3775
4369
  # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
4370
+ # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.locale #=> String
4371
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations #=> Array
4372
+ # 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
4373
+ # 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
4374
+ # 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
4375
+ # 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
4376
+ # 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
4377
+ # 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
4378
+ # 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
4379
+ # 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
4380
+ # 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
4381
+ # 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
4382
+ # 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
4383
+ # 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
4384
+ # 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"
4385
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_id #=> String
4386
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
4387
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.self_service_ai_guardrail_id #=> String
4388
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.self_service_answer_generation_ai_prompt_id #=> String
4389
+ # resp.ai_agent_summaries[0].configuration.self_service_ai_agent_configuration.self_service_pre_processing_ai_prompt_id #=> String
3776
4390
  # resp.ai_agent_summaries[0].description #=> String
3777
4391
  # resp.ai_agent_summaries[0].modified_time #=> Time
3778
4392
  # resp.ai_agent_summaries[0].name #=> String
@@ -3780,7 +4394,7 @@ module Aws::QConnect
3780
4394
  # resp.ai_agent_summaries[0].status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
3781
4395
  # resp.ai_agent_summaries[0].tags #=> Hash
3782
4396
  # resp.ai_agent_summaries[0].tags["TagKey"] #=> String
3783
- # resp.ai_agent_summaries[0].type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
4397
+ # resp.ai_agent_summaries[0].type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION", "SELF_SERVICE"
3784
4398
  # resp.ai_agent_summaries[0].visibility_status #=> String, one of "SAVED", "PUBLISHED"
3785
4399
  # resp.next_token #=> String
3786
4400
  #
@@ -3793,6 +4407,121 @@ module Aws::QConnect
3793
4407
  req.send_request(options)
3794
4408
  end
3795
4409
 
4410
+ # Lists AI Guardrail versions.
4411
+ #
4412
+ # @option params [required, String] :ai_guardrail_id
4413
+ # The identifier of the Amazon Q in Connect AI Guardrail for which
4414
+ # versions are to be listed.
4415
+ #
4416
+ # @option params [required, String] :assistant_id
4417
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
4418
+ # ID or the ARN. URLs cannot contain the ARN.
4419
+ #
4420
+ # @option params [Integer] :max_results
4421
+ # The maximum number of results to return per page.
4422
+ #
4423
+ # @option params [String] :next_token
4424
+ # The token for the next set of results. Use the value returned in the
4425
+ # previous response in the next request to retrieve the next set of
4426
+ # results.
4427
+ #
4428
+ # @return [Types::ListAIGuardrailVersionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4429
+ #
4430
+ # * {Types::ListAIGuardrailVersionsResponse#ai_guardrail_version_summaries #ai_guardrail_version_summaries} => Array&lt;Types::AIGuardrailVersionSummary&gt;
4431
+ # * {Types::ListAIGuardrailVersionsResponse#next_token #next_token} => String
4432
+ #
4433
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4434
+ #
4435
+ # @example Request syntax with placeholder values
4436
+ #
4437
+ # resp = client.list_ai_guardrail_versions({
4438
+ # ai_guardrail_id: "UuidOrArnOrEitherWithQualifier", # required
4439
+ # assistant_id: "UuidOrArn", # required
4440
+ # max_results: 1,
4441
+ # next_token: "NextToken",
4442
+ # })
4443
+ #
4444
+ # @example Response structure
4445
+ #
4446
+ # resp.ai_guardrail_version_summaries #=> Array
4447
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.ai_guardrail_arn #=> String
4448
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.ai_guardrail_id #=> String
4449
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.assistant_arn #=> String
4450
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.assistant_id #=> String
4451
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.description #=> String
4452
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.modified_time #=> Time
4453
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.name #=> String
4454
+ # 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"
4455
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.tags #=> Hash
4456
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.tags["TagKey"] #=> String
4457
+ # resp.ai_guardrail_version_summaries[0].ai_guardrail_summary.visibility_status #=> String, one of "SAVED", "PUBLISHED"
4458
+ # resp.ai_guardrail_version_summaries[0].version_number #=> Integer
4459
+ # resp.next_token #=> String
4460
+ #
4461
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListAIGuardrailVersions AWS API Documentation
4462
+ #
4463
+ # @overload list_ai_guardrail_versions(params = {})
4464
+ # @param [Hash] params ({})
4465
+ def list_ai_guardrail_versions(params = {}, options = {})
4466
+ req = build_request(:list_ai_guardrail_versions, params)
4467
+ req.send_request(options)
4468
+ end
4469
+
4470
+ # Lists the AI Guardrails available on the Amazon Q in Connect
4471
+ # assistant.
4472
+ #
4473
+ # @option params [required, String] :assistant_id
4474
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
4475
+ # ID or the ARN. URLs cannot contain the ARN.
4476
+ #
4477
+ # @option params [Integer] :max_results
4478
+ # The maximum number of results to return per page.
4479
+ #
4480
+ # @option params [String] :next_token
4481
+ # The token for the next set of results. Use the value returned in the
4482
+ # previous response in the next request to retrieve the next set of
4483
+ # results.
4484
+ #
4485
+ # @return [Types::ListAIGuardrailsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4486
+ #
4487
+ # * {Types::ListAIGuardrailsResponse#ai_guardrail_summaries #ai_guardrail_summaries} => Array&lt;Types::AIGuardrailSummary&gt;
4488
+ # * {Types::ListAIGuardrailsResponse#next_token #next_token} => String
4489
+ #
4490
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4491
+ #
4492
+ # @example Request syntax with placeholder values
4493
+ #
4494
+ # resp = client.list_ai_guardrails({
4495
+ # assistant_id: "UuidOrArn", # required
4496
+ # max_results: 1,
4497
+ # next_token: "NextToken",
4498
+ # })
4499
+ #
4500
+ # @example Response structure
4501
+ #
4502
+ # resp.ai_guardrail_summaries #=> Array
4503
+ # resp.ai_guardrail_summaries[0].ai_guardrail_arn #=> String
4504
+ # resp.ai_guardrail_summaries[0].ai_guardrail_id #=> String
4505
+ # resp.ai_guardrail_summaries[0].assistant_arn #=> String
4506
+ # resp.ai_guardrail_summaries[0].assistant_id #=> String
4507
+ # resp.ai_guardrail_summaries[0].description #=> String
4508
+ # resp.ai_guardrail_summaries[0].modified_time #=> Time
4509
+ # resp.ai_guardrail_summaries[0].name #=> String
4510
+ # resp.ai_guardrail_summaries[0].status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
4511
+ # resp.ai_guardrail_summaries[0].tags #=> Hash
4512
+ # resp.ai_guardrail_summaries[0].tags["TagKey"] #=> String
4513
+ # resp.ai_guardrail_summaries[0].visibility_status #=> String, one of "SAVED", "PUBLISHED"
4514
+ # resp.next_token #=> String
4515
+ #
4516
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListAIGuardrails AWS API Documentation
4517
+ #
4518
+ # @overload list_ai_guardrails(params = {})
4519
+ # @param [Hash] params ({})
4520
+ def list_ai_guardrails(params = {}, options = {})
4521
+ req = build_request(:list_ai_guardrails, params)
4522
+ req.send_request(options)
4523
+ end
4524
+
3796
4525
  # Lists AI Prompt versions.
3797
4526
  #
3798
4527
  # @option params [required, String] :ai_prompt_id
@@ -3850,7 +4579,7 @@ module Aws::QConnect
3850
4579
  # resp.ai_prompt_version_summaries[0].ai_prompt_summary.tags #=> Hash
3851
4580
  # resp.ai_prompt_version_summaries[0].ai_prompt_summary.tags["TagKey"] #=> String
3852
4581
  # 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"
4582
+ # 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
4583
  # resp.ai_prompt_version_summaries[0].ai_prompt_summary.visibility_status #=> String, one of "SAVED", "PUBLISHED"
3855
4584
  # resp.ai_prompt_version_summaries[0].version_number #=> Integer
3856
4585
  # resp.next_token #=> String
@@ -3916,7 +4645,7 @@ module Aws::QConnect
3916
4645
  # resp.ai_prompt_summaries[0].tags #=> Hash
3917
4646
  # resp.ai_prompt_summaries[0].tags["TagKey"] #=> String
3918
4647
  # 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"
4648
+ # 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
4649
  # resp.ai_prompt_summaries[0].visibility_status #=> String, one of "SAVED", "PUBLISHED"
3921
4650
  # resp.next_token #=> String
3922
4651
  #
@@ -4393,6 +5122,56 @@ module Aws::QConnect
4393
5122
  req.send_request(options)
4394
5123
  end
4395
5124
 
5125
+ # Lists messages on an Amazon Q in Connect session.
5126
+ #
5127
+ # @option params [required, String] :assistant_id
5128
+ # The identifier of the Amazon Q in Connect assistant.
5129
+ #
5130
+ # @option params [Integer] :max_results
5131
+ # The maximum number of results to return per page.
5132
+ #
5133
+ # @option params [String] :next_token
5134
+ # The token for the next set of results. Use the value returned in the
5135
+ # previous response in the next request to retrieve the next set of
5136
+ # results.
5137
+ #
5138
+ # @option params [required, String] :session_id
5139
+ # The identifier of the Amazon Q in Connect session.
5140
+ #
5141
+ # @return [Types::ListMessagesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5142
+ #
5143
+ # * {Types::ListMessagesResponse#messages #messages} => Array&lt;Types::MessageOutput&gt;
5144
+ # * {Types::ListMessagesResponse#next_token #next_token} => String
5145
+ #
5146
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
5147
+ #
5148
+ # @example Request syntax with placeholder values
5149
+ #
5150
+ # resp = client.list_messages({
5151
+ # assistant_id: "UuidOrArn", # required
5152
+ # max_results: 1,
5153
+ # next_token: "NextToken",
5154
+ # session_id: "UuidOrArn", # required
5155
+ # })
5156
+ #
5157
+ # @example Response structure
5158
+ #
5159
+ # resp.messages #=> Array
5160
+ # resp.messages[0].message_id #=> String
5161
+ # resp.messages[0].participant #=> String, one of "CUSTOMER", "AGENT", "BOT"
5162
+ # resp.messages[0].timestamp #=> Time
5163
+ # resp.messages[0].value.text.value #=> String
5164
+ # resp.next_token #=> String
5165
+ #
5166
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListMessages AWS API Documentation
5167
+ #
5168
+ # @overload list_messages(params = {})
5169
+ # @param [Hash] params ({})
5170
+ def list_messages(params = {}, options = {})
5171
+ req = build_request(:list_messages, params)
5172
+ req.send_request(options)
5173
+ end
5174
+
4396
5175
  # Lists information about quick response.
4397
5176
  #
4398
5177
  # @option params [required, String] :knowledge_base_id
@@ -4748,7 +5527,7 @@ module Aws::QConnect
4748
5527
  # @example Request syntax with placeholder values
4749
5528
  #
4750
5529
  # resp = client.remove_assistant_ai_agent({
4751
- # ai_agent_type: "MANUAL_SEARCH", # required, accepts MANUAL_SEARCH, ANSWER_RECOMMENDATION
5530
+ # ai_agent_type: "MANUAL_SEARCH", # required, accepts MANUAL_SEARCH, ANSWER_RECOMMENDATION, SELF_SERVICE
4752
5531
  # assistant_id: "UuidOrArn", # required
4753
5532
  # })
4754
5533
  #
@@ -5254,6 +6033,76 @@ module Aws::QConnect
5254
6033
  req.send_request(options)
5255
6034
  end
5256
6035
 
6036
+ # Submits a message to the Amazon Q in Connect session.
6037
+ #
6038
+ # @option params [required, String] :assistant_id
6039
+ # The identifier of the Amazon Q in Connect assistant.
6040
+ #
6041
+ # @option params [String] :client_token
6042
+ # A unique, case-sensitive identifier that you provide to ensure the
6043
+ # idempotency of the request. If not provided, the AWS SDK populates
6044
+ # this field.For more information about idempotency, see Making retries
6045
+ # safe with idempotent APIs.
6046
+ #
6047
+ # **A suitable default value is auto-generated.** You should normally
6048
+ # not need to pass this option.**
6049
+ #
6050
+ # @option params [Types::ConversationContext] :conversation_context
6051
+ # The conversation context before the Amazon Q in Connect session.
6052
+ #
6053
+ # @option params [required, Types::MessageInput] :message
6054
+ # The message data to submit to the Amazon Q in Connect session.
6055
+ #
6056
+ # @option params [required, String] :session_id
6057
+ # The identifier of the Amazon Q in Connect session.
6058
+ #
6059
+ # @option params [required, String] :type
6060
+ # The message type.
6061
+ #
6062
+ # @return [Types::SendMessageResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6063
+ #
6064
+ # * {Types::SendMessageResponse#next_message_token #next_message_token} => String
6065
+ # * {Types::SendMessageResponse#request_message_id #request_message_id} => String
6066
+ #
6067
+ # @example Request syntax with placeholder values
6068
+ #
6069
+ # resp = client.send_message({
6070
+ # assistant_id: "UuidOrArn", # required
6071
+ # client_token: "ClientToken",
6072
+ # conversation_context: {
6073
+ # self_service_conversation_history: [ # required
6074
+ # {
6075
+ # bot_response: "SensitiveString",
6076
+ # input_transcript: "SensitiveString",
6077
+ # turn_number: 1, # required
6078
+ # },
6079
+ # ],
6080
+ # },
6081
+ # message: { # required
6082
+ # value: { # required
6083
+ # text: {
6084
+ # value: "TextMessageValueString",
6085
+ # },
6086
+ # },
6087
+ # },
6088
+ # session_id: "UuidOrArn", # required
6089
+ # type: "TEXT", # required, accepts TEXT
6090
+ # })
6091
+ #
6092
+ # @example Response structure
6093
+ #
6094
+ # resp.next_message_token #=> String
6095
+ # resp.request_message_id #=> String
6096
+ #
6097
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/SendMessage AWS API Documentation
6098
+ #
6099
+ # @overload send_message(params = {})
6100
+ # @param [Hash] params ({})
6101
+ def send_message(params = {}, options = {})
6102
+ req = build_request(:send_message, params)
6103
+ req.send_request(options)
6104
+ end
6105
+
5257
6106
  # Get a URL to upload content to a knowledge base. To upload content,
5258
6107
  # first make a PUT request to the returned URL with your file, making
5259
6108
  # sure to include the required headers. Then use [CreateContent][1] to
@@ -5512,6 +6361,7 @@ module Aws::QConnect
5512
6361
  # client_token: "ClientToken",
5513
6362
  # configuration: {
5514
6363
  # answer_recommendation_ai_agent_configuration: {
6364
+ # answer_generation_ai_guardrail_id: "UuidWithQualifier",
5515
6365
  # answer_generation_ai_prompt_id: "UuidWithQualifier",
5516
6366
  # association_configurations: [
5517
6367
  # {
@@ -5552,9 +6402,11 @@ module Aws::QConnect
5552
6402
  # },
5553
6403
  # ],
5554
6404
  # intent_labeling_generation_ai_prompt_id: "UuidWithQualifier",
6405
+ # locale: "NonEmptyString",
5555
6406
  # query_reformulation_ai_prompt_id: "UuidWithQualifier",
5556
6407
  # },
5557
6408
  # manual_search_ai_agent_configuration: {
6409
+ # answer_generation_ai_guardrail_id: "UuidWithQualifier",
5558
6410
  # answer_generation_ai_prompt_id: "UuidWithQualifier",
5559
6411
  # association_configurations: [
5560
6412
  # {
@@ -5594,6 +6446,50 @@ module Aws::QConnect
5594
6446
  # association_type: "KNOWLEDGE_BASE", # accepts KNOWLEDGE_BASE
5595
6447
  # },
5596
6448
  # ],
6449
+ # locale: "NonEmptyString",
6450
+ # },
6451
+ # self_service_ai_agent_configuration: {
6452
+ # association_configurations: [
6453
+ # {
6454
+ # association_configuration_data: {
6455
+ # knowledge_base_association_configuration_data: {
6456
+ # content_tag_filter: {
6457
+ # and_conditions: [
6458
+ # {
6459
+ # key: "TagKey", # required
6460
+ # value: "TagValue",
6461
+ # },
6462
+ # ],
6463
+ # or_conditions: [
6464
+ # {
6465
+ # and_conditions: [
6466
+ # {
6467
+ # key: "TagKey", # required
6468
+ # value: "TagValue",
6469
+ # },
6470
+ # ],
6471
+ # tag_condition: {
6472
+ # key: "TagKey", # required
6473
+ # value: "TagValue",
6474
+ # },
6475
+ # },
6476
+ # ],
6477
+ # tag_condition: {
6478
+ # key: "TagKey", # required
6479
+ # value: "TagValue",
6480
+ # },
6481
+ # },
6482
+ # max_results: 1,
6483
+ # override_knowledge_base_search_type: "HYBRID", # accepts HYBRID, SEMANTIC
6484
+ # },
6485
+ # },
6486
+ # association_id: "Uuid",
6487
+ # association_type: "KNOWLEDGE_BASE", # accepts KNOWLEDGE_BASE
6488
+ # },
6489
+ # ],
6490
+ # self_service_ai_guardrail_id: "UuidWithQualifier",
6491
+ # self_service_answer_generation_ai_prompt_id: "UuidWithQualifier",
6492
+ # self_service_pre_processing_ai_prompt_id: "UuidWithQualifier",
5597
6493
  # },
5598
6494
  # },
5599
6495
  # description: "Description",
@@ -5606,6 +6502,7 @@ module Aws::QConnect
5606
6502
  # resp.ai_agent.ai_agent_id #=> String
5607
6503
  # resp.ai_agent.assistant_arn #=> String
5608
6504
  # resp.ai_agent.assistant_id #=> String
6505
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
5609
6506
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
5610
6507
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
5611
6508
  # 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
@@ -5624,7 +6521,9 @@ module Aws::QConnect
5624
6521
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_id #=> String
5625
6522
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
5626
6523
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
6524
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.locale #=> String
5627
6525
  # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
6526
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_guardrail_id #=> String
5628
6527
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
5629
6528
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
5630
6529
  # 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 +6541,26 @@ module Aws::QConnect
5642
6541
  # 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
6542
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
5644
6543
  # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
6544
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.locale #=> String
6545
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations #=> Array
6546
+ # 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
6547
+ # 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
6548
+ # 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
6549
+ # 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
6550
+ # 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
6551
+ # 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
6552
+ # 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
6553
+ # 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
6554
+ # 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
6555
+ # 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
6556
+ # 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
6557
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
6558
+ # 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"
6559
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_id #=> String
6560
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
6561
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_ai_guardrail_id #=> String
6562
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_answer_generation_ai_prompt_id #=> String
6563
+ # resp.ai_agent.configuration.self_service_ai_agent_configuration.self_service_pre_processing_ai_prompt_id #=> String
5645
6564
  # resp.ai_agent.description #=> String
5646
6565
  # resp.ai_agent.modified_time #=> Time
5647
6566
  # resp.ai_agent.name #=> String
@@ -5649,7 +6568,7 @@ module Aws::QConnect
5649
6568
  # resp.ai_agent.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
5650
6569
  # resp.ai_agent.tags #=> Hash
5651
6570
  # resp.ai_agent.tags["TagKey"] #=> String
5652
- # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
6571
+ # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION", "SELF_SERVICE"
5653
6572
  # resp.ai_agent.visibility_status #=> String, one of "SAVED", "PUBLISHED"
5654
6573
  #
5655
6574
  # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateAIAgent AWS API Documentation
@@ -5661,6 +6580,177 @@ module Aws::QConnect
5661
6580
  req.send_request(options)
5662
6581
  end
5663
6582
 
6583
+ # Updates an AI Guardrail.
6584
+ #
6585
+ # @option params [required, String] :ai_guardrail_id
6586
+ # The identifier of the Amazon Q in Connect AI Guardrail.
6587
+ #
6588
+ # @option params [required, String] :assistant_id
6589
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
6590
+ # ID or the ARN. URLs cannot contain the ARN.
6591
+ #
6592
+ # @option params [required, String] :blocked_input_messaging
6593
+ # The message to return when the AI Guardrail blocks a prompt.
6594
+ #
6595
+ # @option params [required, String] :blocked_outputs_messaging
6596
+ # The message to return when the AI Guardrail blocks a model response.
6597
+ #
6598
+ # @option params [String] :client_token
6599
+ # A unique, case-sensitive identifier that you provide to ensure the
6600
+ # idempotency of the request. If not provided, the Amazon Web Services
6601
+ # SDK populates this field. For more information about idempotency, see
6602
+ # [Making retries safe with idempotent APIs][1]..
6603
+ #
6604
+ # **A suitable default value is auto-generated.** You should normally
6605
+ # not need to pass this option.**
6606
+ #
6607
+ #
6608
+ #
6609
+ # [1]: http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
6610
+ #
6611
+ # @option params [Types::AIGuardrailContentPolicyConfig] :content_policy_config
6612
+ # The content filter policies to configure for the AI Guardrail.
6613
+ #
6614
+ # @option params [Types::AIGuardrailContextualGroundingPolicyConfig] :contextual_grounding_policy_config
6615
+ # The contextual grounding policy configuration used to create an AI
6616
+ # Guardrail.
6617
+ #
6618
+ # @option params [String] :description
6619
+ # A description of the AI Guardrail.
6620
+ #
6621
+ # @option params [Types::AIGuardrailSensitiveInformationPolicyConfig] :sensitive_information_policy_config
6622
+ # The sensitive information policy to configure for the AI Guardrail.
6623
+ #
6624
+ # @option params [Types::AIGuardrailTopicPolicyConfig] :topic_policy_config
6625
+ # The topic policies to configure for the AI Guardrail.
6626
+ #
6627
+ # @option params [required, String] :visibility_status
6628
+ # The visibility status of the Amazon Q in Connect AI Guardrail.
6629
+ #
6630
+ # @option params [Types::AIGuardrailWordPolicyConfig] :word_policy_config
6631
+ # The word policy you configure for the AI Guardrail.
6632
+ #
6633
+ # @return [Types::UpdateAIGuardrailResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6634
+ #
6635
+ # * {Types::UpdateAIGuardrailResponse#ai_guardrail #ai_guardrail} => Types::AIGuardrailData
6636
+ #
6637
+ # @example Request syntax with placeholder values
6638
+ #
6639
+ # resp = client.update_ai_guardrail({
6640
+ # ai_guardrail_id: "UuidOrArnOrEitherWithQualifier", # required
6641
+ # assistant_id: "UuidOrArn", # required
6642
+ # blocked_input_messaging: "AIGuardrailBlockedMessaging", # required
6643
+ # blocked_outputs_messaging: "AIGuardrailBlockedMessaging", # required
6644
+ # client_token: "ClientToken",
6645
+ # content_policy_config: {
6646
+ # filters_config: [ # required
6647
+ # {
6648
+ # input_strength: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH
6649
+ # output_strength: "NONE", # required, accepts NONE, LOW, MEDIUM, HIGH
6650
+ # type: "SEXUAL", # required, accepts SEXUAL, VIOLENCE, HATE, INSULTS, MISCONDUCT, PROMPT_ATTACK
6651
+ # },
6652
+ # ],
6653
+ # },
6654
+ # contextual_grounding_policy_config: {
6655
+ # filters_config: [ # required
6656
+ # {
6657
+ # threshold: 1.0, # required
6658
+ # type: "GROUNDING", # required, accepts GROUNDING, RELEVANCE
6659
+ # },
6660
+ # ],
6661
+ # },
6662
+ # description: "AIGuardrailDescription",
6663
+ # sensitive_information_policy_config: {
6664
+ # pii_entities_config: [
6665
+ # {
6666
+ # action: "BLOCK", # required, accepts BLOCK, ANONYMIZE
6667
+ # 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
6668
+ # },
6669
+ # ],
6670
+ # regexes_config: [
6671
+ # {
6672
+ # action: "BLOCK", # required, accepts BLOCK, ANONYMIZE
6673
+ # description: "GuardrailRegexDescription",
6674
+ # name: "GuardrailRegexName", # required
6675
+ # pattern: "GuardrailRegexPattern", # required
6676
+ # },
6677
+ # ],
6678
+ # },
6679
+ # topic_policy_config: {
6680
+ # topics_config: [ # required
6681
+ # {
6682
+ # definition: "GuardrailTopicDefinition", # required
6683
+ # examples: ["GuardrailTopicExample"],
6684
+ # name: "GuardrailTopicName", # required
6685
+ # type: "DENY", # required, accepts DENY
6686
+ # },
6687
+ # ],
6688
+ # },
6689
+ # visibility_status: "SAVED", # required, accepts SAVED, PUBLISHED
6690
+ # word_policy_config: {
6691
+ # managed_word_lists_config: [
6692
+ # {
6693
+ # type: "PROFANITY", # required, accepts PROFANITY
6694
+ # },
6695
+ # ],
6696
+ # words_config: [
6697
+ # {
6698
+ # text: "GuardrailWordText", # required
6699
+ # },
6700
+ # ],
6701
+ # },
6702
+ # })
6703
+ #
6704
+ # @example Response structure
6705
+ #
6706
+ # resp.ai_guardrail.ai_guardrail_arn #=> String
6707
+ # resp.ai_guardrail.ai_guardrail_id #=> String
6708
+ # resp.ai_guardrail.assistant_arn #=> String
6709
+ # resp.ai_guardrail.assistant_id #=> String
6710
+ # resp.ai_guardrail.blocked_input_messaging #=> String
6711
+ # resp.ai_guardrail.blocked_outputs_messaging #=> String
6712
+ # resp.ai_guardrail.content_policy_config.filters_config #=> Array
6713
+ # resp.ai_guardrail.content_policy_config.filters_config[0].input_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
6714
+ # resp.ai_guardrail.content_policy_config.filters_config[0].output_strength #=> String, one of "NONE", "LOW", "MEDIUM", "HIGH"
6715
+ # resp.ai_guardrail.content_policy_config.filters_config[0].type #=> String, one of "SEXUAL", "VIOLENCE", "HATE", "INSULTS", "MISCONDUCT", "PROMPT_ATTACK"
6716
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config #=> Array
6717
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].threshold #=> Float
6718
+ # resp.ai_guardrail.contextual_grounding_policy_config.filters_config[0].type #=> String, one of "GROUNDING", "RELEVANCE"
6719
+ # resp.ai_guardrail.description #=> String
6720
+ # resp.ai_guardrail.modified_time #=> Time
6721
+ # resp.ai_guardrail.name #=> String
6722
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config #=> Array
6723
+ # resp.ai_guardrail.sensitive_information_policy_config.pii_entities_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
6724
+ # 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"
6725
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config #=> Array
6726
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].action #=> String, one of "BLOCK", "ANONYMIZE"
6727
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].description #=> String
6728
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].name #=> String
6729
+ # resp.ai_guardrail.sensitive_information_policy_config.regexes_config[0].pattern #=> String
6730
+ # resp.ai_guardrail.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
6731
+ # resp.ai_guardrail.tags #=> Hash
6732
+ # resp.ai_guardrail.tags["TagKey"] #=> String
6733
+ # resp.ai_guardrail.topic_policy_config.topics_config #=> Array
6734
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].definition #=> String
6735
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples #=> Array
6736
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].examples[0] #=> String
6737
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].name #=> String
6738
+ # resp.ai_guardrail.topic_policy_config.topics_config[0].type #=> String, one of "DENY"
6739
+ # resp.ai_guardrail.visibility_status #=> String, one of "SAVED", "PUBLISHED"
6740
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config #=> Array
6741
+ # resp.ai_guardrail.word_policy_config.managed_word_lists_config[0].type #=> String, one of "PROFANITY"
6742
+ # resp.ai_guardrail.word_policy_config.words_config #=> Array
6743
+ # resp.ai_guardrail.word_policy_config.words_config[0].text #=> String
6744
+ #
6745
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateAIGuardrail AWS API Documentation
6746
+ #
6747
+ # @overload update_ai_guardrail(params = {})
6748
+ # @param [Hash] params ({})
6749
+ def update_ai_guardrail(params = {}, options = {})
6750
+ req = build_request(:update_ai_guardrail, params)
6751
+ req.send_request(options)
6752
+ end
6753
+
5664
6754
  # Updates an AI Prompt.
5665
6755
  #
5666
6756
  # @option params [required, String] :ai_prompt_id
@@ -5728,7 +6818,7 @@ module Aws::QConnect
5728
6818
  # resp.ai_prompt.tags["TagKey"] #=> String
5729
6819
  # resp.ai_prompt.template_configuration.text_full_ai_prompt_edit_template_configuration.text #=> String
5730
6820
  # resp.ai_prompt.template_type #=> String, one of "TEXT"
5731
- # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
6821
+ # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION", "SELF_SERVICE_PRE_PROCESSING", "SELF_SERVICE_ANSWER_GENERATION"
5732
6822
  # resp.ai_prompt.visibility_status #=> String, one of "SAVED", "PUBLISHED"
5733
6823
  #
5734
6824
  # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateAIPrompt AWS API Documentation
@@ -5762,7 +6852,7 @@ module Aws::QConnect
5762
6852
  # @example Request syntax with placeholder values
5763
6853
  #
5764
6854
  # resp = client.update_assistant_ai_agent({
5765
- # ai_agent_type: "MANUAL_SEARCH", # required, accepts MANUAL_SEARCH, ANSWER_RECOMMENDATION
6855
+ # ai_agent_type: "MANUAL_SEARCH", # required, accepts MANUAL_SEARCH, ANSWER_RECOMMENDATION, SELF_SERVICE
5766
6856
  # assistant_id: "UuidOrArn", # required
5767
6857
  # configuration: { # required
5768
6858
  # ai_agent_id: "UuidWithQualifier", # required
@@ -6652,7 +7742,7 @@ module Aws::QConnect
6652
7742
  tracer: tracer
6653
7743
  )
6654
7744
  context[:gem_name] = 'aws-sdk-qconnect'
6655
- context[:gem_version] = '1.24.0'
7745
+ context[:gem_version] = '1.26.0'
6656
7746
  Seahorse::Client::Request.new(handlers, context)
6657
7747
  end
6658
7748