aws-sdk-qconnect 1.24.0 → 1.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -540,6 +540,7 @@ module Aws::QConnect
540
540
  # client_token: "ClientToken",
541
541
  # configuration: { # required
542
542
  # answer_recommendation_ai_agent_configuration: {
543
+ # answer_generation_ai_guardrail_id: "UuidWithQualifier",
543
544
  # answer_generation_ai_prompt_id: "UuidWithQualifier",
544
545
  # association_configurations: [
545
546
  # {
@@ -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