lib/aws-sdk-qconnect/client.rb in aws-sdk-qconnect-1.20.0 vs lib/aws-sdk-qconnect/client.rb in aws-sdk-qconnect-1.21.0
- old
+ new
@@ -445,10 +445,489 @@
super
end
# @!group API Operations
+ # Creates an Amazon Q in Connect AI Agent.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [String] :client_token
+ # A unique, case-sensitive identifier that you provide to ensure the
+ # idempotency of the request. If not provided, the AWS SDK populates
+ # this field. For more information about idempotency, see [Making
+ # retries safe with idempotent APIs][1].
+ #
+ # **A suitable default value is auto-generated.** You should normally
+ # not need to pass this option.**
+ #
+ #
+ #
+ # [1]: http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
+ #
+ # @option params [required, Types::AIAgentConfiguration] :configuration
+ # The configuration of the AI Agent.
+ #
+ # @option params [String] :description
+ # The description of the AI Agent.
+ #
+ # @option params [required, String] :name
+ # The name of the AI Agent.
+ #
+ # @option params [Hash<String,String>] :tags
+ # The tags used to organize, track, or control access for this resource.
+ #
+ # @option params [required, String] :type
+ # The type of the AI Agent.
+ #
+ # @option params [required, String] :visibility_status
+ # The visibility status of the AI Agent.
+ #
+ # @return [Types::CreateAIAgentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::CreateAIAgentResponse#ai_agent #ai_agent} => Types::AIAgentData
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.create_ai_agent({
+ # assistant_id: "UuidOrArn", # required
+ # client_token: "ClientToken",
+ # configuration: { # required
+ # answer_recommendation_ai_agent_configuration: {
+ # answer_generation_ai_prompt_id: "UuidWithQualifier",
+ # association_configurations: [
+ # {
+ # association_configuration_data: {
+ # knowledge_base_association_configuration_data: {
+ # content_tag_filter: {
+ # and_conditions: [
+ # {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # ],
+ # or_conditions: [
+ # {
+ # and_conditions: [
+ # {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # ],
+ # tag_condition: {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # },
+ # ],
+ # tag_condition: {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # },
+ # max_results: 1,
+ # override_knowledge_base_search_type: "HYBRID", # accepts HYBRID, SEMANTIC
+ # },
+ # },
+ # association_id: "Uuid",
+ # association_type: "KNOWLEDGE_BASE", # accepts KNOWLEDGE_BASE
+ # },
+ # ],
+ # intent_labeling_generation_ai_prompt_id: "UuidWithQualifier",
+ # query_reformulation_ai_prompt_id: "UuidWithQualifier",
+ # },
+ # manual_search_ai_agent_configuration: {
+ # answer_generation_ai_prompt_id: "UuidWithQualifier",
+ # association_configurations: [
+ # {
+ # association_configuration_data: {
+ # knowledge_base_association_configuration_data: {
+ # content_tag_filter: {
+ # and_conditions: [
+ # {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # ],
+ # or_conditions: [
+ # {
+ # and_conditions: [
+ # {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # ],
+ # tag_condition: {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # },
+ # ],
+ # tag_condition: {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # },
+ # max_results: 1,
+ # override_knowledge_base_search_type: "HYBRID", # accepts HYBRID, SEMANTIC
+ # },
+ # },
+ # association_id: "Uuid",
+ # association_type: "KNOWLEDGE_BASE", # accepts KNOWLEDGE_BASE
+ # },
+ # ],
+ # },
+ # },
+ # description: "Description",
+ # name: "Name", # required
+ # tags: {
+ # "TagKey" => "TagValue",
+ # },
+ # type: "MANUAL_SEARCH", # required, accepts MANUAL_SEARCH, ANSWER_RECOMMENDATION
+ # visibility_status: "SAVED", # required, accepts SAVED, PUBLISHED
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.ai_agent.ai_agent_arn #=> String
+ # resp.ai_agent.ai_agent_id #=> String
+ # resp.ai_agent.assistant_arn #=> String
+ # resp.ai_agent.assistant_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
+ # 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
+ # 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[0].key #=> String
+ # 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[0].value #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions #=> Array
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions #=> Array
+ # resp.ai_agent.configuration.answer_recommendation_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
+ # resp.ai_agent.configuration.answer_recommendation_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
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.key #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.value #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.key #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.value #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
+ # 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
+ # 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[0].key #=> String
+ # 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[0].value #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions #=> Array
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions #=> Array
+ # resp.ai_agent.configuration.manual_search_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
+ # resp.ai_agent.configuration.manual_search_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
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.key #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.value #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.key #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.value #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
+ # 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"
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
+ # resp.ai_agent.description #=> String
+ # resp.ai_agent.modified_time #=> Time
+ # resp.ai_agent.name #=> String
+ # resp.ai_agent.origin #=> String, one of "SYSTEM", "CUSTOMER"
+ # resp.ai_agent.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
+ # resp.ai_agent.tags #=> Hash
+ # resp.ai_agent.tags["TagKey"] #=> String
+ # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
+ # resp.ai_agent.visibility_status #=> String, one of "SAVED", "PUBLISHED"
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAIAgent AWS API Documentation
+ #
+ # @overload create_ai_agent(params = {})
+ # @param [Hash] params ({})
+ def create_ai_agent(params = {}, options = {})
+ req = build_request(:create_ai_agent, params)
+ req.send_request(options)
+ end
+
+ # Creates and Amazon Q in Connect AI Agent version.
+ #
+ # @option params [required, String] :ai_agent_id
+ # The identifier of the Amazon Q in Connect AI Agent.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [String] :client_token
+ # A unique, case-sensitive identifier that you provide to ensure the
+ # idempotency of the request. If not provided, the AWS SDK populates
+ # this field. For more information about idempotency, see [Making
+ # retries safe with idempotent APIs][1].
+ #
+ # **A suitable default value is auto-generated.** You should normally
+ # not need to pass this option.**
+ #
+ #
+ #
+ # [1]: http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
+ #
+ # @option params [Time,DateTime,Date,Integer,String] :modified_time
+ # The modification time of the AI Agent should be tracked for version
+ # creation. This field should be specified to avoid version creation
+ # when simultaneous update to the underlying AI Agent are possible. The
+ # value should be the modifiedTime returned from the request to create
+ # or update an AI Agent so that version creation can fail if an update
+ # to the AI Agent post the specified modification time has been made.
+ #
+ # @return [Types::CreateAIAgentVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::CreateAIAgentVersionResponse#ai_agent #ai_agent} => Types::AIAgentData
+ # * {Types::CreateAIAgentVersionResponse#version_number #version_number} => Integer
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.create_ai_agent_version({
+ # ai_agent_id: "UuidOrArnOrEitherWithQualifier", # required
+ # assistant_id: "UuidOrArn", # required
+ # client_token: "ClientToken",
+ # modified_time: Time.now,
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.ai_agent.ai_agent_arn #=> String
+ # resp.ai_agent.ai_agent_id #=> String
+ # resp.ai_agent.assistant_arn #=> String
+ # resp.ai_agent.assistant_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
+ # 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
+ # 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[0].key #=> String
+ # 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[0].value #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions #=> Array
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions #=> Array
+ # resp.ai_agent.configuration.answer_recommendation_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
+ # resp.ai_agent.configuration.answer_recommendation_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
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.key #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.value #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.key #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.value #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
+ # 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
+ # 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[0].key #=> String
+ # 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[0].value #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions #=> Array
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions #=> Array
+ # resp.ai_agent.configuration.manual_search_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
+ # resp.ai_agent.configuration.manual_search_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
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.key #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.value #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.key #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.value #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
+ # 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"
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
+ # resp.ai_agent.description #=> String
+ # resp.ai_agent.modified_time #=> Time
+ # resp.ai_agent.name #=> String
+ # resp.ai_agent.origin #=> String, one of "SYSTEM", "CUSTOMER"
+ # resp.ai_agent.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
+ # resp.ai_agent.tags #=> Hash
+ # resp.ai_agent.tags["TagKey"] #=> String
+ # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
+ # resp.ai_agent.visibility_status #=> String, one of "SAVED", "PUBLISHED"
+ # resp.version_number #=> Integer
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAIAgentVersion AWS API Documentation
+ #
+ # @overload create_ai_agent_version(params = {})
+ # @param [Hash] params ({})
+ def create_ai_agent_version(params = {}, options = {})
+ req = build_request(:create_ai_agent_version, params)
+ req.send_request(options)
+ end
+
+ # Creates an Amazon Q in Connect AI Prompt.
+ #
+ # @option params [required, String] :api_format
+ # The API Format of the AI Prompt.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [String] :client_token
+ # A unique, case-sensitive identifier that you provide to ensure the
+ # idempotency of the request. If not provided, the AWS SDK populates
+ # this field. For more information about idempotency, see [Making
+ # retries safe with idempotent APIs][1].
+ #
+ # **A suitable default value is auto-generated.** You should normally
+ # not need to pass this option.**
+ #
+ #
+ #
+ # [1]: http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
+ #
+ # @option params [String] :description
+ # The description of the AI Prompt.
+ #
+ # @option params [required, String] :model_id
+ # The identifier of the model used for this AI Prompt. Model Ids
+ # supported are: `CLAUDE_3_HAIKU_20240307_V1`
+ #
+ # @option params [required, String] :name
+ # The name of the AI Prompt.
+ #
+ # @option params [Hash<String,String>] :tags
+ # The tags used to organize, track, or control access for this resource.
+ #
+ # @option params [required, Types::AIPromptTemplateConfiguration] :template_configuration
+ # The configuration of the prompt template for this AI Prompt.
+ #
+ # @option params [required, String] :template_type
+ # The type of the prompt template for this AI Prompt.
+ #
+ # @option params [required, String] :type
+ # The type of this AI Prompt.
+ #
+ # @option params [required, String] :visibility_status
+ # The visibility status of the AI Prompt.
+ #
+ # @return [Types::CreateAIPromptResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::CreateAIPromptResponse#ai_prompt #ai_prompt} => Types::AIPromptData
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.create_ai_prompt({
+ # api_format: "ANTHROPIC_CLAUDE_MESSAGES", # required, accepts ANTHROPIC_CLAUDE_MESSAGES, ANTHROPIC_CLAUDE_TEXT_COMPLETIONS
+ # assistant_id: "UuidOrArn", # required
+ # client_token: "ClientToken",
+ # description: "Description",
+ # model_id: "AIPromptModelIdentifier", # required
+ # name: "Name", # required
+ # tags: {
+ # "TagKey" => "TagValue",
+ # },
+ # template_configuration: { # required
+ # text_full_ai_prompt_edit_template_configuration: {
+ # text: "TextAIPrompt", # required
+ # },
+ # },
+ # template_type: "TEXT", # required, accepts TEXT
+ # type: "ANSWER_GENERATION", # required, accepts ANSWER_GENERATION, INTENT_LABELING_GENERATION, QUERY_REFORMULATION
+ # visibility_status: "SAVED", # required, accepts SAVED, PUBLISHED
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.ai_prompt.ai_prompt_arn #=> String
+ # resp.ai_prompt.ai_prompt_id #=> String
+ # resp.ai_prompt.api_format #=> String, one of "ANTHROPIC_CLAUDE_MESSAGES", "ANTHROPIC_CLAUDE_TEXT_COMPLETIONS"
+ # resp.ai_prompt.assistant_arn #=> String
+ # resp.ai_prompt.assistant_id #=> String
+ # resp.ai_prompt.description #=> String
+ # resp.ai_prompt.model_id #=> String
+ # resp.ai_prompt.modified_time #=> Time
+ # resp.ai_prompt.name #=> String
+ # resp.ai_prompt.origin #=> String, one of "SYSTEM", "CUSTOMER"
+ # resp.ai_prompt.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
+ # resp.ai_prompt.tags #=> Hash
+ # resp.ai_prompt.tags["TagKey"] #=> String
+ # resp.ai_prompt.template_configuration.text_full_ai_prompt_edit_template_configuration.text #=> String
+ # resp.ai_prompt.template_type #=> String, one of "TEXT"
+ # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
+ # resp.ai_prompt.visibility_status #=> String, one of "SAVED", "PUBLISHED"
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAIPrompt AWS API Documentation
+ #
+ # @overload create_ai_prompt(params = {})
+ # @param [Hash] params ({})
+ def create_ai_prompt(params = {}, options = {})
+ req = build_request(:create_ai_prompt, params)
+ req.send_request(options)
+ end
+
+ # Creates an Amazon Q in Connect AI Prompt version.
+ #
+ # @option params [required, String] :ai_prompt_id
+ # The identifier of the Amazon Q in Connect AI prompt.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [String] :client_token
+ # A unique, case-sensitive identifier that you provide to ensure the
+ # idempotency of the request. If not provided, the AWS SDK populates
+ # this field. For more information about idempotency, see [Making
+ # retries safe with idempotent APIs][1].
+ #
+ # **A suitable default value is auto-generated.** You should normally
+ # not need to pass this option.**
+ #
+ #
+ #
+ # [1]: http://aws.amazon.com/https:/aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
+ #
+ # @option params [Time,DateTime,Date,Integer,String] :modified_time
+ # The time the AI Prompt was last modified.
+ #
+ # @return [Types::CreateAIPromptVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::CreateAIPromptVersionResponse#ai_prompt #ai_prompt} => Types::AIPromptData
+ # * {Types::CreateAIPromptVersionResponse#version_number #version_number} => Integer
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.create_ai_prompt_version({
+ # ai_prompt_id: "UuidOrArnOrEitherWithQualifier", # required
+ # assistant_id: "UuidOrArn", # required
+ # client_token: "ClientToken",
+ # modified_time: Time.now,
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.ai_prompt.ai_prompt_arn #=> String
+ # resp.ai_prompt.ai_prompt_id #=> String
+ # resp.ai_prompt.api_format #=> String, one of "ANTHROPIC_CLAUDE_MESSAGES", "ANTHROPIC_CLAUDE_TEXT_COMPLETIONS"
+ # resp.ai_prompt.assistant_arn #=> String
+ # resp.ai_prompt.assistant_id #=> String
+ # resp.ai_prompt.description #=> String
+ # resp.ai_prompt.model_id #=> String
+ # resp.ai_prompt.modified_time #=> Time
+ # resp.ai_prompt.name #=> String
+ # resp.ai_prompt.origin #=> String, one of "SYSTEM", "CUSTOMER"
+ # resp.ai_prompt.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
+ # resp.ai_prompt.tags #=> Hash
+ # resp.ai_prompt.tags["TagKey"] #=> String
+ # resp.ai_prompt.template_configuration.text_full_ai_prompt_edit_template_configuration.text #=> String
+ # resp.ai_prompt.template_type #=> String, one of "TEXT"
+ # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
+ # resp.ai_prompt.visibility_status #=> String, one of "SAVED", "PUBLISHED"
+ # resp.version_number #=> Integer
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateAIPromptVersion AWS API Documentation
+ #
+ # @overload create_ai_prompt_version(params = {})
+ # @param [Hash] params ({})
+ def create_ai_prompt_version(params = {}, options = {})
+ req = build_request(:create_ai_prompt_version, params)
+ req.send_request(options)
+ end
+
# Creates an Amazon Q in Connect assistant.
#
# @option params [String] :client_token
# A unique, case-sensitive identifier that you provide to ensure the
# idempotency of the request. If not provided, the Amazon Web Services
@@ -513,10 +992,12 @@
# type: "AGENT", # required, accepts AGENT
# })
#
# @example Response structure
#
+ # resp.assistant.ai_agent_configuration #=> Hash
+ # resp.assistant.ai_agent_configuration["AIAgentType"].ai_agent_id #=> String
# resp.assistant.assistant_arn #=> String
# resp.assistant.assistant_id #=> String
# resp.assistant.capability_configuration.type #=> String, one of "V1", "V2"
# resp.assistant.description #=> String
# resp.assistant.integration_configuration.topic_integration_arn #=> String
@@ -887,20 +1368,23 @@
# EXTERNAL knowledge bases.
#
# @option params [Hash<String,String>] :tags
# The tags used to organize, track, or control access for this resource.
#
+ # @option params [Types::VectorIngestionConfiguration] :vector_ingestion_configuration
+ # Contains details about how to ingest the documents in a data source.
+ #
# @return [Types::CreateKnowledgeBaseResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::CreateKnowledgeBaseResponse#knowledge_base #knowledge_base} => Types::KnowledgeBaseData
#
# @example Request syntax with placeholder values
#
# resp = client.create_knowledge_base({
# client_token: "NonEmptyString",
# description: "Description",
- # knowledge_base_type: "EXTERNAL", # required, accepts EXTERNAL, CUSTOM, QUICK_RESPONSES
+ # knowledge_base_type: "EXTERNAL", # required, accepts EXTERNAL, CUSTOM, QUICK_RESPONSES, MESSAGE_TEMPLATES, MANAGED
# name: "Name", # required
# rendering_configuration: {
# template_uri: "Uri",
# },
# server_side_encryption_configuration: {
@@ -909,32 +1393,103 @@
# source_configuration: {
# app_integrations: {
# app_integration_arn: "GenericArn", # required
# object_fields: ["NonEmptyString"],
# },
+ # managed_source_configuration: {
+ # web_crawler_configuration: {
+ # crawler_limits: {
+ # rate_limit: 1,
+ # },
+ # exclusion_filters: ["UrlFilterPattern"],
+ # inclusion_filters: ["UrlFilterPattern"],
+ # scope: "HOST_ONLY", # accepts HOST_ONLY, SUBDOMAINS
+ # url_configuration: { # required
+ # seed_urls: [
+ # {
+ # url: "WebUrl",
+ # },
+ # ],
+ # },
+ # },
+ # },
# },
# tags: {
# "TagKey" => "TagValue",
# },
+ # vector_ingestion_configuration: {
+ # chunking_configuration: {
+ # chunking_strategy: "FIXED_SIZE", # required, accepts FIXED_SIZE, NONE, HIERARCHICAL, SEMANTIC
+ # fixed_size_chunking_configuration: {
+ # max_tokens: 1, # required
+ # overlap_percentage: 1, # required
+ # },
+ # hierarchical_chunking_configuration: {
+ # level_configurations: [ # required
+ # {
+ # max_tokens: 1, # required
+ # },
+ # ],
+ # overlap_tokens: 1, # required
+ # },
+ # semantic_chunking_configuration: {
+ # breakpoint_percentile_threshold: 1, # required
+ # buffer_size: 1, # required
+ # max_tokens: 1, # required
+ # },
+ # },
+ # parsing_configuration: {
+ # bedrock_foundation_model_configuration: {
+ # model_arn: "BedrockModelArnForParsing", # required
+ # parsing_prompt: {
+ # parsing_prompt_text: "ParsingPromptText", # required
+ # },
+ # },
+ # parsing_strategy: "BEDROCK_FOUNDATION_MODEL", # required, accepts BEDROCK_FOUNDATION_MODEL
+ # },
+ # },
# })
#
# @example Response structure
#
# resp.knowledge_base.description #=> String
+ # resp.knowledge_base.ingestion_failure_reasons #=> Array
+ # resp.knowledge_base.ingestion_failure_reasons[0] #=> String
+ # resp.knowledge_base.ingestion_status #=> String, one of "SYNC_FAILED", "SYNCING_IN_PROGRESS", "SYNC_SUCCESS", "CREATE_IN_PROGRESS"
# resp.knowledge_base.knowledge_base_arn #=> String
# resp.knowledge_base.knowledge_base_id #=> String
- # resp.knowledge_base.knowledge_base_type #=> String, one of "EXTERNAL", "CUSTOM", "QUICK_RESPONSES"
+ # resp.knowledge_base.knowledge_base_type #=> String, one of "EXTERNAL", "CUSTOM", "QUICK_RESPONSES", "MESSAGE_TEMPLATES", "MANAGED"
# resp.knowledge_base.last_content_modification_time #=> Time
# resp.knowledge_base.name #=> String
# resp.knowledge_base.rendering_configuration.template_uri #=> String
# resp.knowledge_base.server_side_encryption_configuration.kms_key_id #=> String
# resp.knowledge_base.source_configuration.app_integrations.app_integration_arn #=> String
# resp.knowledge_base.source_configuration.app_integrations.object_fields #=> Array
# resp.knowledge_base.source_configuration.app_integrations.object_fields[0] #=> String
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.crawler_limits.rate_limit #=> Integer
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.exclusion_filters #=> Array
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.exclusion_filters[0] #=> String
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.inclusion_filters #=> Array
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.inclusion_filters[0] #=> String
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.scope #=> String, one of "HOST_ONLY", "SUBDOMAINS"
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.url_configuration.seed_urls #=> Array
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.url_configuration.seed_urls[0].url #=> String
# resp.knowledge_base.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
# resp.knowledge_base.tags #=> Hash
# resp.knowledge_base.tags["TagKey"] #=> String
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.chunking_strategy #=> String, one of "FIXED_SIZE", "NONE", "HIERARCHICAL", "SEMANTIC"
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.fixed_size_chunking_configuration.max_tokens #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.fixed_size_chunking_configuration.overlap_percentage #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.level_configurations #=> Array
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.level_configurations[0].max_tokens #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.overlap_tokens #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.breakpoint_percentile_threshold #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.buffer_size #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.max_tokens #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.parsing_configuration.bedrock_foundation_model_configuration.model_arn #=> String
+ # resp.knowledge_base.vector_ingestion_configuration.parsing_configuration.bedrock_foundation_model_configuration.parsing_prompt.parsing_prompt_text #=> String
+ # resp.knowledge_base.vector_ingestion_configuration.parsing_configuration.parsing_strategy #=> String, one of "BEDROCK_FOUNDATION_MODEL"
#
# @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/CreateKnowledgeBase AWS API Documentation
#
# @overload create_knowledge_base(params = {})
# @param [Hash] params ({})
@@ -1069,10 +1624,15 @@
# Creates a session. A session is a contextual container used for
# generating recommendations. Amazon Connect creates a new Amazon Q in
# Connect session for each contact on which Amazon Q in Connect is
# enabled.
#
+ # @option params [Hash<String,Types::AIAgentConfigurationData>] :ai_agent_configuration
+ # The configuration of the AI Agents (mapped by AI Agent Type to AI
+ # Agent version) that should be used by Amazon Q in Connect for this
+ # Session.
+ #
# @option params [required, String] :assistant_id
# The identifier of the Amazon Q in Connect assistant. Can be either the
# ID or the ARN. URLs cannot contain the ARN.
#
# @option params [String] :client_token
@@ -1105,10 +1665,15 @@
# * {Types::CreateSessionResponse#session #session} => Types::SessionData
#
# @example Request syntax with placeholder values
#
# resp = client.create_session({
+ # ai_agent_configuration: {
+ # "MANUAL_SEARCH" => {
+ # ai_agent_id: "UuidWithQualifier", # required
+ # },
+ # },
# assistant_id: "UuidOrArn", # required
# client_token: "ClientToken",
# description: "Description",
# name: "Name", # required
# tag_filter: {
@@ -1142,10 +1707,12 @@
# },
# })
#
# @example Response structure
#
+ # resp.session.ai_agent_configuration #=> Hash
+ # resp.session.ai_agent_configuration["AIAgentType"].ai_agent_id #=> String
# resp.session.description #=> String
# resp.session.integration_configuration.topic_integration_arn #=> String
# resp.session.name #=> String
# resp.session.session_arn #=> String
# resp.session.session_id #=> String
@@ -1170,10 +1737,129 @@
def create_session(params = {}, options = {})
req = build_request(:create_session, params)
req.send_request(options)
end
+ # Deletes an Amazon Q in Connect AI Agent.
+ #
+ # @option params [required, String] :ai_agent_id
+ # The identifier of the Amazon Q in Connect AI Agent. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.delete_ai_agent({
+ # ai_agent_id: "UuidOrArnOrEitherWithQualifier", # required
+ # assistant_id: "UuidOrArn", # required
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteAIAgent AWS API Documentation
+ #
+ # @overload delete_ai_agent(params = {})
+ # @param [Hash] params ({})
+ def delete_ai_agent(params = {}, options = {})
+ req = build_request(:delete_ai_agent, params)
+ req.send_request(options)
+ end
+
+ # Deletes an Amazon Q in Connect AI Agent Version.
+ #
+ # @option params [required, String] :ai_agent_id
+ # The identifier of the Amazon Q in Connect AI Agent. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [required, Integer] :version_number
+ # The version number of the AI Agent version.
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.delete_ai_agent_version({
+ # ai_agent_id: "UuidOrArnOrEitherWithQualifier", # required
+ # assistant_id: "UuidOrArn", # required
+ # version_number: 1, # required
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteAIAgentVersion AWS API Documentation
+ #
+ # @overload delete_ai_agent_version(params = {})
+ # @param [Hash] params ({})
+ def delete_ai_agent_version(params = {}, options = {})
+ req = build_request(:delete_ai_agent_version, params)
+ req.send_request(options)
+ end
+
+ # Deletes an Amazon Q in Connect AI Prompt.
+ #
+ # @option params [required, String] :ai_prompt_id
+ # The identifier of the Amazon Q in Connect AI prompt. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.delete_ai_prompt({
+ # ai_prompt_id: "UuidOrArnOrEitherWithQualifier", # required
+ # assistant_id: "UuidOrArn", # required
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteAIPrompt AWS API Documentation
+ #
+ # @overload delete_ai_prompt(params = {})
+ # @param [Hash] params ({})
+ def delete_ai_prompt(params = {}, options = {})
+ req = build_request(:delete_ai_prompt, params)
+ req.send_request(options)
+ end
+
+ # Delete and Amazon Q in Connect AI Prompt version.
+ #
+ # @option params [required, String] :ai_prompt_id
+ # The identifier of the Amazon Q in Connect AI prompt.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [required, Integer] :version_number
+ # The version number of the AI Prompt version to be deleted.
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.delete_ai_prompt_version({
+ # ai_prompt_id: "UuidOrArnOrEitherWithQualifier", # required
+ # assistant_id: "UuidOrArn", # required
+ # version_number: 1, # required
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/DeleteAIPromptVersion AWS API Documentation
+ #
+ # @overload delete_ai_prompt_version(params = {})
+ # @param [Hash] params ({})
+ def delete_ai_prompt_version(params = {}, options = {})
+ req = build_request(:delete_ai_prompt_version, params)
+ req.send_request(options)
+ end
+
# Deletes an assistant.
#
# @option params [required, String] :assistant_id
# The identifier of the Amazon Q in Connect assistant. Can be either the
# ID or the ARN. URLs cannot contain the ARN.
@@ -1380,10 +2066,146 @@
def delete_quick_response(params = {}, options = {})
req = build_request(:delete_quick_response, params)
req.send_request(options)
end
+ # Gets an Amazon Q in Connect AI Agent.
+ #
+ # @option params [required, String] :ai_agent_id
+ # The identifier of the Amazon Q in Connect AI Agent (with or without a
+ # version qualifier). Can be either the ID or the ARN. URLs cannot
+ # contain the ARN.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @return [Types::GetAIAgentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::GetAIAgentResponse#ai_agent #ai_agent} => Types::AIAgentData
+ # * {Types::GetAIAgentResponse#version_number #version_number} => Integer
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.get_ai_agent({
+ # ai_agent_id: "UuidOrArnOrEitherWithQualifier", # required
+ # assistant_id: "UuidOrArn", # required
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.ai_agent.ai_agent_arn #=> String
+ # resp.ai_agent.ai_agent_id #=> String
+ # resp.ai_agent.assistant_arn #=> String
+ # resp.ai_agent.assistant_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
+ # 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
+ # 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[0].key #=> String
+ # 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[0].value #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions #=> Array
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions #=> Array
+ # resp.ai_agent.configuration.answer_recommendation_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
+ # resp.ai_agent.configuration.answer_recommendation_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
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.key #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.value #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.key #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.value #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
+ # 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
+ # 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[0].key #=> String
+ # 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[0].value #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions #=> Array
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions #=> Array
+ # resp.ai_agent.configuration.manual_search_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
+ # resp.ai_agent.configuration.manual_search_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
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.key #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.value #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.key #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.value #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
+ # 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"
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
+ # resp.ai_agent.description #=> String
+ # resp.ai_agent.modified_time #=> Time
+ # resp.ai_agent.name #=> String
+ # resp.ai_agent.origin #=> String, one of "SYSTEM", "CUSTOMER"
+ # resp.ai_agent.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
+ # resp.ai_agent.tags #=> Hash
+ # resp.ai_agent.tags["TagKey"] #=> String
+ # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
+ # resp.ai_agent.visibility_status #=> String, one of "SAVED", "PUBLISHED"
+ # resp.version_number #=> Integer
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetAIAgent AWS API Documentation
+ #
+ # @overload get_ai_agent(params = {})
+ # @param [Hash] params ({})
+ def get_ai_agent(params = {}, options = {})
+ req = build_request(:get_ai_agent, params)
+ req.send_request(options)
+ end
+
+ # Gets and Amazon Q in Connect AI Prompt.
+ #
+ # @option params [required, String] :ai_prompt_id
+ # The identifier of the Amazon Q in Connect AI prompt.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @return [Types::GetAIPromptResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::GetAIPromptResponse#ai_prompt #ai_prompt} => Types::AIPromptData
+ # * {Types::GetAIPromptResponse#version_number #version_number} => Integer
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.get_ai_prompt({
+ # ai_prompt_id: "UuidOrArnOrEitherWithQualifier", # required
+ # assistant_id: "UuidOrArn", # required
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.ai_prompt.ai_prompt_arn #=> String
+ # resp.ai_prompt.ai_prompt_id #=> String
+ # resp.ai_prompt.api_format #=> String, one of "ANTHROPIC_CLAUDE_MESSAGES", "ANTHROPIC_CLAUDE_TEXT_COMPLETIONS"
+ # resp.ai_prompt.assistant_arn #=> String
+ # resp.ai_prompt.assistant_id #=> String
+ # resp.ai_prompt.description #=> String
+ # resp.ai_prompt.model_id #=> String
+ # resp.ai_prompt.modified_time #=> Time
+ # resp.ai_prompt.name #=> String
+ # resp.ai_prompt.origin #=> String, one of "SYSTEM", "CUSTOMER"
+ # resp.ai_prompt.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
+ # resp.ai_prompt.tags #=> Hash
+ # resp.ai_prompt.tags["TagKey"] #=> String
+ # resp.ai_prompt.template_configuration.text_full_ai_prompt_edit_template_configuration.text #=> String
+ # resp.ai_prompt.template_type #=> String, one of "TEXT"
+ # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
+ # resp.ai_prompt.visibility_status #=> String, one of "SAVED", "PUBLISHED"
+ # resp.version_number #=> Integer
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetAIPrompt AWS API Documentation
+ #
+ # @overload get_ai_prompt(params = {})
+ # @param [Hash] params ({})
+ def get_ai_prompt(params = {}, options = {})
+ req = build_request(:get_ai_prompt, params)
+ req.send_request(options)
+ end
+
# Retrieves information about an assistant.
#
# @option params [required, String] :assistant_id
# The identifier of the Amazon Q in Connect assistant. Can be either the
# ID or the ARN. URLs cannot contain the ARN.
@@ -1398,10 +2220,12 @@
# assistant_id: "UuidOrArn", # required
# })
#
# @example Response structure
#
+ # resp.assistant.ai_agent_configuration #=> Hash
+ # resp.assistant.ai_agent_configuration["AIAgentType"].ai_agent_id #=> String
# resp.assistant.assistant_arn #=> String
# resp.assistant.assistant_id #=> String
# resp.assistant.capability_configuration.type #=> String, one of "V1", "V2"
# resp.assistant.description #=> String
# resp.assistant.integration_configuration.topic_integration_arn #=> String
@@ -1676,23 +2500,46 @@
# })
#
# @example Response structure
#
# resp.knowledge_base.description #=> String
+ # resp.knowledge_base.ingestion_failure_reasons #=> Array
+ # resp.knowledge_base.ingestion_failure_reasons[0] #=> String
+ # resp.knowledge_base.ingestion_status #=> String, one of "SYNC_FAILED", "SYNCING_IN_PROGRESS", "SYNC_SUCCESS", "CREATE_IN_PROGRESS"
# resp.knowledge_base.knowledge_base_arn #=> String
# resp.knowledge_base.knowledge_base_id #=> String
- # resp.knowledge_base.knowledge_base_type #=> String, one of "EXTERNAL", "CUSTOM", "QUICK_RESPONSES"
+ # resp.knowledge_base.knowledge_base_type #=> String, one of "EXTERNAL", "CUSTOM", "QUICK_RESPONSES", "MESSAGE_TEMPLATES", "MANAGED"
# resp.knowledge_base.last_content_modification_time #=> Time
# resp.knowledge_base.name #=> String
# resp.knowledge_base.rendering_configuration.template_uri #=> String
# resp.knowledge_base.server_side_encryption_configuration.kms_key_id #=> String
# resp.knowledge_base.source_configuration.app_integrations.app_integration_arn #=> String
# resp.knowledge_base.source_configuration.app_integrations.object_fields #=> Array
# resp.knowledge_base.source_configuration.app_integrations.object_fields[0] #=> String
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.crawler_limits.rate_limit #=> Integer
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.exclusion_filters #=> Array
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.exclusion_filters[0] #=> String
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.inclusion_filters #=> Array
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.inclusion_filters[0] #=> String
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.scope #=> String, one of "HOST_ONLY", "SUBDOMAINS"
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.url_configuration.seed_urls #=> Array
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.url_configuration.seed_urls[0].url #=> String
# resp.knowledge_base.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
# resp.knowledge_base.tags #=> Hash
# resp.knowledge_base.tags["TagKey"] #=> String
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.chunking_strategy #=> String, one of "FIXED_SIZE", "NONE", "HIERARCHICAL", "SEMANTIC"
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.fixed_size_chunking_configuration.max_tokens #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.fixed_size_chunking_configuration.overlap_percentage #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.level_configurations #=> Array
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.level_configurations[0].max_tokens #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.overlap_tokens #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.breakpoint_percentile_threshold #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.buffer_size #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.max_tokens #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.parsing_configuration.bedrock_foundation_model_configuration.model_arn #=> String
+ # resp.knowledge_base.vector_ingestion_configuration.parsing_configuration.bedrock_foundation_model_configuration.parsing_prompt.parsing_prompt_text #=> String
+ # resp.knowledge_base.vector_ingestion_configuration.parsing_configuration.parsing_strategy #=> String, one of "BEDROCK_FOUNDATION_MODEL"
#
# @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/GetKnowledgeBase AWS API Documentation
#
# @overload get_knowledge_base(params = {})
# @param [Hash] params ({})
@@ -1823,10 +2670,14 @@
# resp.recommendations[0].data.details.generative_data.completion #=> String
# resp.recommendations[0].data.details.generative_data.ranking_data.relevance_level #=> String, one of "HIGH", "MEDIUM", "LOW"
# resp.recommendations[0].data.details.generative_data.ranking_data.relevance_score #=> Float
# resp.recommendations[0].data.details.generative_data.references #=> Array
# resp.recommendations[0].data.details.generative_data.references[0] #=> Types::DataSummary
+ # resp.recommendations[0].data.details.intent_detected_data.intent #=> String
+ # resp.recommendations[0].data.details.intent_detected_data.intent_id #=> String
+ # resp.recommendations[0].data.details.source_content_data.citation_span.begin_offset_inclusive #=> Integer
+ # resp.recommendations[0].data.details.source_content_data.citation_span.end_offset_exclusive #=> Integer
# resp.recommendations[0].data.details.source_content_data.id #=> String
# resp.recommendations[0].data.details.source_content_data.ranking_data.relevance_level #=> String, one of "HIGH", "MEDIUM", "LOW"
# resp.recommendations[0].data.details.source_content_data.ranking_data.relevance_score #=> Float
# resp.recommendations[0].data.details.source_content_data.text_data.excerpt.highlights #=> Array
# resp.recommendations[0].data.details.source_content_data.text_data.excerpt.highlights[0].begin_offset_inclusive #=> Integer
@@ -1839,16 +2690,20 @@
# resp.recommendations[0].data.details.source_content_data.type #=> String, one of "KNOWLEDGE_CONTENT"
# resp.recommendations[0].data.reference.content_reference.content_arn #=> String
# resp.recommendations[0].data.reference.content_reference.content_id #=> String
# resp.recommendations[0].data.reference.content_reference.knowledge_base_arn #=> String
# resp.recommendations[0].data.reference.content_reference.knowledge_base_id #=> String
+ # resp.recommendations[0].data.reference.content_reference.reference_type #=> String, one of "WEB_CRAWLER", "KNOWLEDGE_BASE"
+ # resp.recommendations[0].data.reference.content_reference.source_url #=> String
# resp.recommendations[0].data.reference.generative_reference.generation_id #=> String
# resp.recommendations[0].data.reference.generative_reference.model_id #=> String
# resp.recommendations[0].document.content_reference.content_arn #=> String
# resp.recommendations[0].document.content_reference.content_id #=> String
# resp.recommendations[0].document.content_reference.knowledge_base_arn #=> String
# resp.recommendations[0].document.content_reference.knowledge_base_id #=> String
+ # resp.recommendations[0].document.content_reference.reference_type #=> String, one of "WEB_CRAWLER", "KNOWLEDGE_BASE"
+ # resp.recommendations[0].document.content_reference.source_url #=> String
# resp.recommendations[0].document.excerpt.highlights #=> Array
# resp.recommendations[0].document.excerpt.highlights[0].begin_offset_inclusive #=> Integer
# resp.recommendations[0].document.excerpt.highlights[0].end_offset_exclusive #=> Integer
# resp.recommendations[0].document.excerpt.text #=> String
# resp.recommendations[0].document.title.highlights #=> Array
@@ -1856,11 +2711,11 @@
# resp.recommendations[0].document.title.highlights[0].end_offset_exclusive #=> Integer
# resp.recommendations[0].document.title.text #=> String
# resp.recommendations[0].recommendation_id #=> String
# resp.recommendations[0].relevance_level #=> String, one of "HIGH", "MEDIUM", "LOW"
# resp.recommendations[0].relevance_score #=> Float
- # resp.recommendations[0].type #=> String, one of "KNOWLEDGE_CONTENT", "GENERATIVE_RESPONSE", "GENERATIVE_ANSWER"
+ # resp.recommendations[0].type #=> String, one of "KNOWLEDGE_CONTENT", "GENERATIVE_RESPONSE", "GENERATIVE_ANSWER", "DETECTED_INTENT"
# resp.triggers #=> Array
# resp.triggers[0].data.query.text #=> String
# resp.triggers[0].id #=> String
# resp.triggers[0].recommendation_ids #=> Array
# resp.triggers[0].recommendation_ids[0] #=> String
@@ -1897,10 +2752,12 @@
# session_id: "UuidOrArn", # required
# })
#
# @example Response structure
#
+ # resp.session.ai_agent_configuration #=> Hash
+ # resp.session.ai_agent_configuration["AIAgentType"].ai_agent_id #=> String
# resp.session.description #=> String
# resp.session.integration_configuration.topic_integration_arn #=> String
# resp.session.name #=> String
# resp.session.session_arn #=> String
# resp.session.session_id #=> String
@@ -1925,10 +2782,348 @@
def get_session(params = {}, options = {})
req = build_request(:get_session, params)
req.send_request(options)
end
+ # List AI Agent versions.
+ #
+ # @option params [required, String] :ai_agent_id
+ # The identifier of the Amazon Q in Connect AI Agent for which versions
+ # are to be listed.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [Integer] :max_results
+ # The maximum number of results to return per page.
+ #
+ # @option params [String] :next_token
+ # The token for the next set of results. Use the value returned in the
+ # previous response in the next request to retrieve the next set of
+ # results.
+ #
+ # @option params [String] :origin
+ # The origin of the AI Agent versions to be listed. `SYSTEM` for a
+ # default AI Agent created by Q in Connect or `CUSTOMER` for an AI Agent
+ # created by calling AI Agent creation APIs.
+ #
+ # @return [Types::ListAIAgentVersionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::ListAIAgentVersionsResponse#ai_agent_version_summaries #ai_agent_version_summaries} => Array<Types::AIAgentVersionSummary>
+ # * {Types::ListAIAgentVersionsResponse#next_token #next_token} => String
+ #
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.list_ai_agent_versions({
+ # ai_agent_id: "UuidOrArnOrEitherWithQualifier", # required
+ # assistant_id: "UuidOrArn", # required
+ # max_results: 1,
+ # next_token: "NextToken",
+ # origin: "SYSTEM", # accepts SYSTEM, CUSTOMER
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.ai_agent_version_summaries #=> Array
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.ai_agent_arn #=> String
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.ai_agent_id #=> String
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.assistant_arn #=> String
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.assistant_id #=> String
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
+ # 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
+ # 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[0].key #=> String
+ # 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[0].value #=> String
+ # 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.or_conditions #=> Array
+ # 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.or_conditions[0].and_conditions #=> Array
+ # 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.or_conditions[0].and_conditions[0].key #=> String
+ # 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.or_conditions[0].and_conditions[0].value #=> String
+ # 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.or_conditions[0].tag_condition.key #=> String
+ # 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.or_conditions[0].tag_condition.value #=> String
+ # 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.tag_condition.key #=> String
+ # 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.tag_condition.value #=> String
+ # 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.max_results #=> Integer
+ # 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.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_id #=> String
+ # 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"
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
+ # 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
+ # 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[0].key #=> String
+ # 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[0].value #=> String
+ # 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.or_conditions #=> Array
+ # 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.or_conditions[0].and_conditions #=> Array
+ # 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.or_conditions[0].and_conditions[0].key #=> String
+ # 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.or_conditions[0].and_conditions[0].value #=> String
+ # 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.or_conditions[0].tag_condition.key #=> String
+ # 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.or_conditions[0].tag_condition.value #=> String
+ # 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.tag_condition.key #=> String
+ # 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.tag_condition.value #=> String
+ # 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.max_results #=> Integer
+ # 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"
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
+ # 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"
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.description #=> String
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.modified_time #=> Time
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.name #=> String
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.origin #=> String, one of "SYSTEM", "CUSTOMER"
+ # 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"
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.tags #=> Hash
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.tags["TagKey"] #=> String
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
+ # resp.ai_agent_version_summaries[0].ai_agent_summary.visibility_status #=> String, one of "SAVED", "PUBLISHED"
+ # resp.ai_agent_version_summaries[0].version_number #=> Integer
+ # resp.next_token #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListAIAgentVersions AWS API Documentation
+ #
+ # @overload list_ai_agent_versions(params = {})
+ # @param [Hash] params ({})
+ def list_ai_agent_versions(params = {}, options = {})
+ req = build_request(:list_ai_agent_versions, params)
+ req.send_request(options)
+ end
+
+ # Lists AI Agents.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [Integer] :max_results
+ # The maximum number of results to return per page.
+ #
+ # @option params [String] :next_token
+ # The token for the next set of results. Use the value returned in the
+ # previous response in the next request to retrieve the next set of
+ # results.
+ #
+ # @option params [String] :origin
+ # The origin of the AI Agents to be listed. `SYSTEM` for a default AI
+ # Agent created by Q in Connect or `CUSTOMER` for an AI Agent created by
+ # calling AI Agent creation APIs.
+ #
+ # @return [Types::ListAIAgentsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::ListAIAgentsResponse#ai_agent_summaries #ai_agent_summaries} => Array<Types::AIAgentSummary>
+ # * {Types::ListAIAgentsResponse#next_token #next_token} => String
+ #
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.list_ai_agents({
+ # assistant_id: "UuidOrArn", # required
+ # max_results: 1,
+ # next_token: "NextToken",
+ # origin: "SYSTEM", # accepts SYSTEM, CUSTOMER
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.ai_agent_summaries #=> Array
+ # resp.ai_agent_summaries[0].ai_agent_arn #=> String
+ # resp.ai_agent_summaries[0].ai_agent_id #=> String
+ # resp.ai_agent_summaries[0].assistant_arn #=> String
+ # resp.ai_agent_summaries[0].assistant_id #=> String
+ # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
+ # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
+ # 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
+ # 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[0].key #=> String
+ # 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[0].value #=> String
+ # 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.or_conditions #=> Array
+ # 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.or_conditions[0].and_conditions #=> Array
+ # 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.or_conditions[0].and_conditions[0].key #=> String
+ # 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.or_conditions[0].and_conditions[0].value #=> String
+ # 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.or_conditions[0].tag_condition.key #=> String
+ # 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.or_conditions[0].tag_condition.value #=> String
+ # 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.tag_condition.key #=> String
+ # 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.tag_condition.value #=> String
+ # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
+ # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
+ # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_id #=> String
+ # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
+ # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
+ # resp.ai_agent_summaries[0].configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
+ # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
+ # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
+ # 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
+ # 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[0].key #=> String
+ # 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[0].value #=> String
+ # 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.or_conditions #=> Array
+ # 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.or_conditions[0].and_conditions #=> Array
+ # 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.or_conditions[0].and_conditions[0].key #=> String
+ # 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.or_conditions[0].and_conditions[0].value #=> String
+ # 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.or_conditions[0].tag_condition.key #=> String
+ # 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.or_conditions[0].tag_condition.value #=> String
+ # 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.tag_condition.key #=> String
+ # 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.tag_condition.value #=> String
+ # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
+ # 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"
+ # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
+ # resp.ai_agent_summaries[0].configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
+ # resp.ai_agent_summaries[0].description #=> String
+ # resp.ai_agent_summaries[0].modified_time #=> Time
+ # resp.ai_agent_summaries[0].name #=> String
+ # resp.ai_agent_summaries[0].origin #=> String, one of "SYSTEM", "CUSTOMER"
+ # resp.ai_agent_summaries[0].status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
+ # resp.ai_agent_summaries[0].tags #=> Hash
+ # resp.ai_agent_summaries[0].tags["TagKey"] #=> String
+ # resp.ai_agent_summaries[0].type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
+ # resp.ai_agent_summaries[0].visibility_status #=> String, one of "SAVED", "PUBLISHED"
+ # resp.next_token #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListAIAgents AWS API Documentation
+ #
+ # @overload list_ai_agents(params = {})
+ # @param [Hash] params ({})
+ def list_ai_agents(params = {}, options = {})
+ req = build_request(:list_ai_agents, params)
+ req.send_request(options)
+ end
+
+ # Lists AI Prompt versions.
+ #
+ # @option params [required, String] :ai_prompt_id
+ # The identifier of the Amazon Q in Connect AI prompt for which versions
+ # are to be listed.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [Integer] :max_results
+ # The maximum number of results to return per page.
+ #
+ # @option params [String] :next_token
+ # The token for the next set of results. Use the value returned in the
+ # previous response in the next request to retrieve the next set of
+ # results.
+ #
+ # @option params [String] :origin
+ # The origin of the AI Prompt versions to be listed. `SYSTEM` for a
+ # default AI Agent created by Q in Connect or `CUSTOMER` for an AI Agent
+ # created by calling AI Agent creation APIs.
+ #
+ # @return [Types::ListAIPromptVersionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::ListAIPromptVersionsResponse#ai_prompt_version_summaries #ai_prompt_version_summaries} => Array<Types::AIPromptVersionSummary>
+ # * {Types::ListAIPromptVersionsResponse#next_token #next_token} => String
+ #
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.list_ai_prompt_versions({
+ # ai_prompt_id: "UuidOrArnOrEitherWithQualifier", # required
+ # assistant_id: "UuidOrArn", # required
+ # max_results: 1,
+ # next_token: "NextToken",
+ # origin: "SYSTEM", # accepts SYSTEM, CUSTOMER
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.ai_prompt_version_summaries #=> Array
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.ai_prompt_arn #=> String
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.ai_prompt_id #=> String
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.api_format #=> String, one of "ANTHROPIC_CLAUDE_MESSAGES", "ANTHROPIC_CLAUDE_TEXT_COMPLETIONS"
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.assistant_arn #=> String
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.assistant_id #=> String
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.description #=> String
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.model_id #=> String
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.modified_time #=> Time
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.name #=> String
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.origin #=> String, one of "SYSTEM", "CUSTOMER"
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.tags #=> Hash
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.tags["TagKey"] #=> String
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.template_type #=> String, one of "TEXT"
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
+ # resp.ai_prompt_version_summaries[0].ai_prompt_summary.visibility_status #=> String, one of "SAVED", "PUBLISHED"
+ # resp.ai_prompt_version_summaries[0].version_number #=> Integer
+ # resp.next_token #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListAIPromptVersions AWS API Documentation
+ #
+ # @overload list_ai_prompt_versions(params = {})
+ # @param [Hash] params ({})
+ def list_ai_prompt_versions(params = {}, options = {})
+ req = build_request(:list_ai_prompt_versions, params)
+ req.send_request(options)
+ end
+
+ # Lists the AI Prompts available on the Amazon Q in Connect assistant.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [Integer] :max_results
+ # The maximum number of results to return per page.
+ #
+ # @option params [String] :next_token
+ # The token for the next set of results. Use the value returned in the
+ # previous response in the next request to retrieve the next set of
+ # results.
+ #
+ # @option params [String] :origin
+ # The origin of the AI Prompts to be listed. `SYSTEM` for a default AI
+ # Agent created by Q in Connect or `CUSTOMER` for an AI Agent created by
+ # calling AI Agent creation APIs.
+ #
+ # @return [Types::ListAIPromptsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::ListAIPromptsResponse#ai_prompt_summaries #ai_prompt_summaries} => Array<Types::AIPromptSummary>
+ # * {Types::ListAIPromptsResponse#next_token #next_token} => String
+ #
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.list_ai_prompts({
+ # assistant_id: "UuidOrArn", # required
+ # max_results: 1,
+ # next_token: "NextToken",
+ # origin: "SYSTEM", # accepts SYSTEM, CUSTOMER
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.ai_prompt_summaries #=> Array
+ # resp.ai_prompt_summaries[0].ai_prompt_arn #=> String
+ # resp.ai_prompt_summaries[0].ai_prompt_id #=> String
+ # resp.ai_prompt_summaries[0].api_format #=> String, one of "ANTHROPIC_CLAUDE_MESSAGES", "ANTHROPIC_CLAUDE_TEXT_COMPLETIONS"
+ # resp.ai_prompt_summaries[0].assistant_arn #=> String
+ # resp.ai_prompt_summaries[0].assistant_id #=> String
+ # resp.ai_prompt_summaries[0].description #=> String
+ # resp.ai_prompt_summaries[0].model_id #=> String
+ # resp.ai_prompt_summaries[0].modified_time #=> Time
+ # resp.ai_prompt_summaries[0].name #=> String
+ # resp.ai_prompt_summaries[0].origin #=> String, one of "SYSTEM", "CUSTOMER"
+ # resp.ai_prompt_summaries[0].status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
+ # resp.ai_prompt_summaries[0].tags #=> Hash
+ # resp.ai_prompt_summaries[0].tags["TagKey"] #=> String
+ # resp.ai_prompt_summaries[0].template_type #=> String, one of "TEXT"
+ # resp.ai_prompt_summaries[0].type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
+ # resp.ai_prompt_summaries[0].visibility_status #=> String, one of "SAVED", "PUBLISHED"
+ # resp.next_token #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListAIPrompts AWS API Documentation
+ #
+ # @overload list_ai_prompts(params = {})
+ # @param [Hash] params ({})
+ def list_ai_prompts(params = {}, options = {})
+ req = build_request(:list_ai_prompts, params)
+ req.send_request(options)
+ end
+
# Lists information about assistant associations.
#
# @option params [required, String] :assistant_id
# The identifier of the Amazon Q in Connect assistant. Can be either the
# ID or the ARN. URLs cannot contain the ARN.
@@ -2004,10 +3199,12 @@
# })
#
# @example Response structure
#
# resp.assistant_summaries #=> Array
+ # resp.assistant_summaries[0].ai_agent_configuration #=> Hash
+ # resp.assistant_summaries[0].ai_agent_configuration["AIAgentType"].ai_agent_id #=> String
# resp.assistant_summaries[0].assistant_arn #=> String
# resp.assistant_summaries[0].assistant_id #=> String
# resp.assistant_summaries[0].capability_configuration.type #=> String, one of "V1", "V2"
# resp.assistant_summaries[0].description #=> String
# resp.assistant_summaries[0].integration_configuration.topic_integration_arn #=> String
@@ -2232,20 +3429,40 @@
#
# resp.knowledge_base_summaries #=> Array
# resp.knowledge_base_summaries[0].description #=> String
# resp.knowledge_base_summaries[0].knowledge_base_arn #=> String
# resp.knowledge_base_summaries[0].knowledge_base_id #=> String
- # resp.knowledge_base_summaries[0].knowledge_base_type #=> String, one of "EXTERNAL", "CUSTOM", "QUICK_RESPONSES"
+ # resp.knowledge_base_summaries[0].knowledge_base_type #=> String, one of "EXTERNAL", "CUSTOM", "QUICK_RESPONSES", "MESSAGE_TEMPLATES", "MANAGED"
# resp.knowledge_base_summaries[0].name #=> String
# resp.knowledge_base_summaries[0].rendering_configuration.template_uri #=> String
# resp.knowledge_base_summaries[0].server_side_encryption_configuration.kms_key_id #=> String
# resp.knowledge_base_summaries[0].source_configuration.app_integrations.app_integration_arn #=> String
# resp.knowledge_base_summaries[0].source_configuration.app_integrations.object_fields #=> Array
# resp.knowledge_base_summaries[0].source_configuration.app_integrations.object_fields[0] #=> String
+ # resp.knowledge_base_summaries[0].source_configuration.managed_source_configuration.web_crawler_configuration.crawler_limits.rate_limit #=> Integer
+ # resp.knowledge_base_summaries[0].source_configuration.managed_source_configuration.web_crawler_configuration.exclusion_filters #=> Array
+ # resp.knowledge_base_summaries[0].source_configuration.managed_source_configuration.web_crawler_configuration.exclusion_filters[0] #=> String
+ # resp.knowledge_base_summaries[0].source_configuration.managed_source_configuration.web_crawler_configuration.inclusion_filters #=> Array
+ # resp.knowledge_base_summaries[0].source_configuration.managed_source_configuration.web_crawler_configuration.inclusion_filters[0] #=> String
+ # resp.knowledge_base_summaries[0].source_configuration.managed_source_configuration.web_crawler_configuration.scope #=> String, one of "HOST_ONLY", "SUBDOMAINS"
+ # resp.knowledge_base_summaries[0].source_configuration.managed_source_configuration.web_crawler_configuration.url_configuration.seed_urls #=> Array
+ # resp.knowledge_base_summaries[0].source_configuration.managed_source_configuration.web_crawler_configuration.url_configuration.seed_urls[0].url #=> String
# resp.knowledge_base_summaries[0].status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
# resp.knowledge_base_summaries[0].tags #=> Hash
# resp.knowledge_base_summaries[0].tags["TagKey"] #=> String
+ # resp.knowledge_base_summaries[0].vector_ingestion_configuration.chunking_configuration.chunking_strategy #=> String, one of "FIXED_SIZE", "NONE", "HIERARCHICAL", "SEMANTIC"
+ # resp.knowledge_base_summaries[0].vector_ingestion_configuration.chunking_configuration.fixed_size_chunking_configuration.max_tokens #=> Integer
+ # resp.knowledge_base_summaries[0].vector_ingestion_configuration.chunking_configuration.fixed_size_chunking_configuration.overlap_percentage #=> Integer
+ # resp.knowledge_base_summaries[0].vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.level_configurations #=> Array
+ # resp.knowledge_base_summaries[0].vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.level_configurations[0].max_tokens #=> Integer
+ # resp.knowledge_base_summaries[0].vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.overlap_tokens #=> Integer
+ # resp.knowledge_base_summaries[0].vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.breakpoint_percentile_threshold #=> Integer
+ # resp.knowledge_base_summaries[0].vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.buffer_size #=> Integer
+ # resp.knowledge_base_summaries[0].vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.max_tokens #=> Integer
+ # resp.knowledge_base_summaries[0].vector_ingestion_configuration.parsing_configuration.bedrock_foundation_model_configuration.model_arn #=> String
+ # resp.knowledge_base_summaries[0].vector_ingestion_configuration.parsing_configuration.bedrock_foundation_model_configuration.parsing_prompt.parsing_prompt_text #=> String
+ # resp.knowledge_base_summaries[0].vector_ingestion_configuration.parsing_configuration.parsing_strategy #=> String, one of "BEDROCK_FOUNDATION_MODEL"
# resp.next_token #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/ListKnowledgeBases AWS API Documentation
#
# @overload list_knowledge_bases(params = {})
@@ -2469,14 +3686,22 @@
# @option params [String] :next_token
# The token for the next set of results. Use the value returned in the
# previous response in the next request to retrieve the next set of
# results.
#
+ # @option params [String] :override_knowledge_base_search_type
+ # The search type to be used against the Knowledge Base for this
+ # request. The values can be `SEMANTIC` which uses vector embeddings or
+ # `HYBRID` which use vector embeddings and raw text.
+ #
# @option params [Array<Types::QueryCondition>] :query_condition
# Information about how to query content.
#
- # @option params [required, String] :query_text
+ # @option params [Types::QueryInputData] :query_input_data
+ # Information about the query.
+ #
+ # @option params [String] :query_text
# The text to search for.
#
# @option params [String] :session_id
# The identifier of the Amazon Q in Connect session. Can be either the
# ID or the ARN. URLs cannot contain the ARN.
@@ -2492,20 +3717,29 @@
#
# resp = client.query_assistant({
# assistant_id: "UuidOrArn", # required
# max_results: 1,
# next_token: "NextToken",
+ # override_knowledge_base_search_type: "HYBRID", # accepts HYBRID, SEMANTIC
# query_condition: [
# {
# single: {
# comparator: "EQUALS", # required, accepts EQUALS
# field: "RESULT_TYPE", # required, accepts RESULT_TYPE
# value: "NonEmptyString", # required
# },
# },
# ],
- # query_text: "QueryText", # required
+ # query_input_data: {
+ # intent_input_data: {
+ # intent_id: "Uuid", # required
+ # },
+ # query_text_input_data: {
+ # text: "QueryText", # required
+ # },
+ # },
+ # query_text: "QueryText",
# session_id: "UuidOrArn",
# })
#
# @example Response structure
#
@@ -2524,10 +3758,14 @@
# resp.results[0].data.details.generative_data.completion #=> String
# resp.results[0].data.details.generative_data.ranking_data.relevance_level #=> String, one of "HIGH", "MEDIUM", "LOW"
# resp.results[0].data.details.generative_data.ranking_data.relevance_score #=> Float
# resp.results[0].data.details.generative_data.references #=> Array
# resp.results[0].data.details.generative_data.references[0] #=> Types::DataSummary
+ # resp.results[0].data.details.intent_detected_data.intent #=> String
+ # resp.results[0].data.details.intent_detected_data.intent_id #=> String
+ # resp.results[0].data.details.source_content_data.citation_span.begin_offset_inclusive #=> Integer
+ # resp.results[0].data.details.source_content_data.citation_span.end_offset_exclusive #=> Integer
# resp.results[0].data.details.source_content_data.id #=> String
# resp.results[0].data.details.source_content_data.ranking_data.relevance_level #=> String, one of "HIGH", "MEDIUM", "LOW"
# resp.results[0].data.details.source_content_data.ranking_data.relevance_score #=> Float
# resp.results[0].data.details.source_content_data.text_data.excerpt.highlights #=> Array
# resp.results[0].data.details.source_content_data.text_data.excerpt.highlights[0].begin_offset_inclusive #=> Integer
@@ -2540,37 +3778,70 @@
# resp.results[0].data.details.source_content_data.type #=> String, one of "KNOWLEDGE_CONTENT"
# resp.results[0].data.reference.content_reference.content_arn #=> String
# resp.results[0].data.reference.content_reference.content_id #=> String
# resp.results[0].data.reference.content_reference.knowledge_base_arn #=> String
# resp.results[0].data.reference.content_reference.knowledge_base_id #=> String
+ # resp.results[0].data.reference.content_reference.reference_type #=> String, one of "WEB_CRAWLER", "KNOWLEDGE_BASE"
+ # resp.results[0].data.reference.content_reference.source_url #=> String
# resp.results[0].data.reference.generative_reference.generation_id #=> String
# resp.results[0].data.reference.generative_reference.model_id #=> String
# resp.results[0].document.content_reference.content_arn #=> String
# resp.results[0].document.content_reference.content_id #=> String
# resp.results[0].document.content_reference.knowledge_base_arn #=> String
# resp.results[0].document.content_reference.knowledge_base_id #=> String
+ # resp.results[0].document.content_reference.reference_type #=> String, one of "WEB_CRAWLER", "KNOWLEDGE_BASE"
+ # resp.results[0].document.content_reference.source_url #=> String
# resp.results[0].document.excerpt.highlights #=> Array
# resp.results[0].document.excerpt.highlights[0].begin_offset_inclusive #=> Integer
# resp.results[0].document.excerpt.highlights[0].end_offset_exclusive #=> Integer
# resp.results[0].document.excerpt.text #=> String
# resp.results[0].document.title.highlights #=> Array
# resp.results[0].document.title.highlights[0].begin_offset_inclusive #=> Integer
# resp.results[0].document.title.highlights[0].end_offset_exclusive #=> Integer
# resp.results[0].document.title.text #=> String
# resp.results[0].relevance_score #=> Float
# resp.results[0].result_id #=> String
- # resp.results[0].type #=> String, one of "KNOWLEDGE_CONTENT", "GENERATIVE_ANSWER"
+ # resp.results[0].type #=> String, one of "KNOWLEDGE_CONTENT", "INTENT_ANSWER", "GENERATIVE_ANSWER"
#
# @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/QueryAssistant AWS API Documentation
#
# @overload query_assistant(params = {})
# @param [Hash] params ({})
def query_assistant(params = {}, options = {})
req = build_request(:query_assistant, params)
req.send_request(options)
end
+ # Removes the AI Agent that is set for use by defafult on an Amazon Q in
+ # Connect Assistant.
+ #
+ # @option params [required, String] :ai_agent_type
+ # The type of the AI Agent being removed for use by default from the
+ # Amazon Q in Connect Assistant.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.remove_assistant_ai_agent({
+ # ai_agent_type: "MANUAL_SEARCH", # required, accepts MANUAL_SEARCH, ANSWER_RECOMMENDATION
+ # assistant_id: "UuidOrArn", # required
+ # })
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/RemoveAssistantAIAgent AWS API Documentation
+ #
+ # @overload remove_assistant_ai_agent(params = {})
+ # @param [Hash] params ({})
+ def remove_assistant_ai_agent(params = {}, options = {})
+ req = build_request(:remove_assistant_ai_agent, params)
+ req.send_request(options)
+ end
+
# Removes a URI template from a knowledge base.
#
# @option params [required, String] :knowledge_base_id
# The identifier of the knowledge base. Can be either the ID or the ARN.
# URLs cannot contain the ARN.
@@ -3043,10 +4314,335 @@
def untag_resource(params = {}, options = {})
req = build_request(:untag_resource, params)
req.send_request(options)
end
+ # Updates an AI Agent.
+ #
+ # @option params [required, String] :ai_agent_id
+ # The identifier of the Amazon Q in Connect AI Agent.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [String] :client_token
+ # A unique, case-sensitive identifier that you provide to ensure the
+ # idempotency of the request. If not provided, the AWS SDK populates
+ # this field. For more information about idempotency, see [Making
+ # retries safe with idempotent APIs][1].
+ #
+ # **A suitable default value is auto-generated.** You should normally
+ # not need to pass this option.**
+ #
+ #
+ #
+ # [1]: http://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
+ #
+ # @option params [Types::AIAgentConfiguration] :configuration
+ # The configuration of the Amazon Q in Connect AI Agent.
+ #
+ # @option params [String] :description
+ # The description of the Amazon Q in Connect AI Agent.
+ #
+ # @option params [required, String] :visibility_status
+ # The visbility status of the Amazon Q in Connect AI Agent.
+ #
+ # @return [Types::UpdateAIAgentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::UpdateAIAgentResponse#ai_agent #ai_agent} => Types::AIAgentData
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.update_ai_agent({
+ # ai_agent_id: "UuidOrArnOrEitherWithQualifier", # required
+ # assistant_id: "UuidOrArn", # required
+ # client_token: "ClientToken",
+ # configuration: {
+ # answer_recommendation_ai_agent_configuration: {
+ # answer_generation_ai_prompt_id: "UuidWithQualifier",
+ # association_configurations: [
+ # {
+ # association_configuration_data: {
+ # knowledge_base_association_configuration_data: {
+ # content_tag_filter: {
+ # and_conditions: [
+ # {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # ],
+ # or_conditions: [
+ # {
+ # and_conditions: [
+ # {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # ],
+ # tag_condition: {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # },
+ # ],
+ # tag_condition: {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # },
+ # max_results: 1,
+ # override_knowledge_base_search_type: "HYBRID", # accepts HYBRID, SEMANTIC
+ # },
+ # },
+ # association_id: "Uuid",
+ # association_type: "KNOWLEDGE_BASE", # accepts KNOWLEDGE_BASE
+ # },
+ # ],
+ # intent_labeling_generation_ai_prompt_id: "UuidWithQualifier",
+ # query_reformulation_ai_prompt_id: "UuidWithQualifier",
+ # },
+ # manual_search_ai_agent_configuration: {
+ # answer_generation_ai_prompt_id: "UuidWithQualifier",
+ # association_configurations: [
+ # {
+ # association_configuration_data: {
+ # knowledge_base_association_configuration_data: {
+ # content_tag_filter: {
+ # and_conditions: [
+ # {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # ],
+ # or_conditions: [
+ # {
+ # and_conditions: [
+ # {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # ],
+ # tag_condition: {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # },
+ # ],
+ # tag_condition: {
+ # key: "TagKey", # required
+ # value: "TagValue",
+ # },
+ # },
+ # max_results: 1,
+ # override_knowledge_base_search_type: "HYBRID", # accepts HYBRID, SEMANTIC
+ # },
+ # },
+ # association_id: "Uuid",
+ # association_type: "KNOWLEDGE_BASE", # accepts KNOWLEDGE_BASE
+ # },
+ # ],
+ # },
+ # },
+ # description: "Description",
+ # visibility_status: "SAVED", # required, accepts SAVED, PUBLISHED
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.ai_agent.ai_agent_arn #=> String
+ # resp.ai_agent.ai_agent_id #=> String
+ # resp.ai_agent.assistant_arn #=> String
+ # resp.ai_agent.assistant_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations #=> Array
+ # 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
+ # 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[0].key #=> String
+ # 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[0].value #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions #=> Array
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions #=> Array
+ # resp.ai_agent.configuration.answer_recommendation_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
+ # resp.ai_agent.configuration.answer_recommendation_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
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.key #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.value #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.key #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.value #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.override_knowledge_base_search_type #=> String, one of "HYBRID", "SEMANTIC"
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.intent_labeling_generation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.answer_recommendation_ai_agent_configuration.query_reformulation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.answer_generation_ai_prompt_id #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations #=> Array
+ # 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
+ # 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[0].key #=> String
+ # 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[0].value #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions #=> Array
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].and_conditions #=> Array
+ # resp.ai_agent.configuration.manual_search_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
+ # resp.ai_agent.configuration.manual_search_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
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.key #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.or_conditions[0].tag_condition.value #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.key #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.content_tag_filter.tag_condition.value #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_configuration_data.knowledge_base_association_configuration_data.max_results #=> Integer
+ # 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"
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_id #=> String
+ # resp.ai_agent.configuration.manual_search_ai_agent_configuration.association_configurations[0].association_type #=> String, one of "KNOWLEDGE_BASE"
+ # resp.ai_agent.description #=> String
+ # resp.ai_agent.modified_time #=> Time
+ # resp.ai_agent.name #=> String
+ # resp.ai_agent.origin #=> String, one of "SYSTEM", "CUSTOMER"
+ # resp.ai_agent.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
+ # resp.ai_agent.tags #=> Hash
+ # resp.ai_agent.tags["TagKey"] #=> String
+ # resp.ai_agent.type #=> String, one of "MANUAL_SEARCH", "ANSWER_RECOMMENDATION"
+ # resp.ai_agent.visibility_status #=> String, one of "SAVED", "PUBLISHED"
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateAIAgent AWS API Documentation
+ #
+ # @overload update_ai_agent(params = {})
+ # @param [Hash] params ({})
+ def update_ai_agent(params = {}, options = {})
+ req = build_request(:update_ai_agent, params)
+ req.send_request(options)
+ end
+
+ # Updates an AI Prompt.
+ #
+ # @option params [required, String] :ai_prompt_id
+ # The identifier of the Amazon Q in Connect AI Prompt.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [String] :client_token
+ # A unique, case-sensitive identifier that you provide to ensure the
+ # idempotency of the request. If not provided, the AWS SDK populates
+ # this field. For more information about idempotency, see [Making
+ # retries safe with idempotent APIs][1].
+ #
+ # **A suitable default value is auto-generated.** You should normally
+ # not need to pass this option.**
+ #
+ #
+ #
+ # [1]: http://aws.amazon.com/https:/aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/
+ #
+ # @option params [String] :description
+ # The description of the Amazon Q in Connect AI Prompt.
+ #
+ # @option params [Types::AIPromptTemplateConfiguration] :template_configuration
+ # The configuration of the prompt template for this AI Prompt.
+ #
+ # @option params [required, String] :visibility_status
+ # The visibility status of the Amazon Q in Connect AI prompt.
+ #
+ # @return [Types::UpdateAIPromptResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::UpdateAIPromptResponse#ai_prompt #ai_prompt} => Types::AIPromptData
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.update_ai_prompt({
+ # ai_prompt_id: "UuidOrArnOrEitherWithQualifier", # required
+ # assistant_id: "UuidOrArn", # required
+ # client_token: "ClientToken",
+ # description: "Description",
+ # template_configuration: {
+ # text_full_ai_prompt_edit_template_configuration: {
+ # text: "TextAIPrompt", # required
+ # },
+ # },
+ # visibility_status: "SAVED", # required, accepts SAVED, PUBLISHED
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.ai_prompt.ai_prompt_arn #=> String
+ # resp.ai_prompt.ai_prompt_id #=> String
+ # resp.ai_prompt.api_format #=> String, one of "ANTHROPIC_CLAUDE_MESSAGES", "ANTHROPIC_CLAUDE_TEXT_COMPLETIONS"
+ # resp.ai_prompt.assistant_arn #=> String
+ # resp.ai_prompt.assistant_id #=> String
+ # resp.ai_prompt.description #=> String
+ # resp.ai_prompt.model_id #=> String
+ # resp.ai_prompt.modified_time #=> Time
+ # resp.ai_prompt.name #=> String
+ # resp.ai_prompt.origin #=> String, one of "SYSTEM", "CUSTOMER"
+ # resp.ai_prompt.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
+ # resp.ai_prompt.tags #=> Hash
+ # resp.ai_prompt.tags["TagKey"] #=> String
+ # resp.ai_prompt.template_configuration.text_full_ai_prompt_edit_template_configuration.text #=> String
+ # resp.ai_prompt.template_type #=> String, one of "TEXT"
+ # resp.ai_prompt.type #=> String, one of "ANSWER_GENERATION", "INTENT_LABELING_GENERATION", "QUERY_REFORMULATION"
+ # resp.ai_prompt.visibility_status #=> String, one of "SAVED", "PUBLISHED"
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateAIPrompt AWS API Documentation
+ #
+ # @overload update_ai_prompt(params = {})
+ # @param [Hash] params ({})
+ def update_ai_prompt(params = {}, options = {})
+ req = build_request(:update_ai_prompt, params)
+ req.send_request(options)
+ end
+
+ # Updates the AI Agent that is set for use by defafult on an Amazon Q in
+ # Connect Assistant.
+ #
+ # @option params [required, String] :ai_agent_type
+ # The type of the AI Agent being updated for use by default on the
+ # Amazon Q in Connect Assistant.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [required, Types::AIAgentConfigurationData] :configuration
+ # The configuration of the AI Agent being updated for use by default on
+ # the Amazon Q in Connect Assistant.
+ #
+ # @return [Types::UpdateAssistantAIAgentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::UpdateAssistantAIAgentResponse#assistant #assistant} => Types::AssistantData
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.update_assistant_ai_agent({
+ # ai_agent_type: "MANUAL_SEARCH", # required, accepts MANUAL_SEARCH, ANSWER_RECOMMENDATION
+ # assistant_id: "UuidOrArn", # required
+ # configuration: { # required
+ # ai_agent_id: "UuidWithQualifier", # required
+ # },
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.assistant.ai_agent_configuration #=> Hash
+ # resp.assistant.ai_agent_configuration["AIAgentType"].ai_agent_id #=> String
+ # resp.assistant.assistant_arn #=> String
+ # resp.assistant.assistant_id #=> String
+ # resp.assistant.capability_configuration.type #=> String, one of "V1", "V2"
+ # resp.assistant.description #=> String
+ # resp.assistant.integration_configuration.topic_integration_arn #=> String
+ # resp.assistant.name #=> String
+ # resp.assistant.server_side_encryption_configuration.kms_key_id #=> String
+ # resp.assistant.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
+ # resp.assistant.tags #=> Hash
+ # resp.assistant.tags["TagKey"] #=> String
+ # resp.assistant.type #=> String, one of "AGENT"
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateAssistantAIAgent AWS API Documentation
+ #
+ # @overload update_assistant_ai_agent(params = {})
+ # @param [Hash] params ({})
+ def update_assistant_ai_agent(params = {}, options = {})
+ req = build_request(:update_assistant_ai_agent, params)
+ req.send_request(options)
+ end
+
# Updates information about the content.
#
# @option params [required, String] :content_id
# The identifier of the content. Can be either the ID or the ARN. URLs
# cannot contain the ARN.
@@ -3162,23 +4758,46 @@
# })
#
# @example Response structure
#
# resp.knowledge_base.description #=> String
+ # resp.knowledge_base.ingestion_failure_reasons #=> Array
+ # resp.knowledge_base.ingestion_failure_reasons[0] #=> String
+ # resp.knowledge_base.ingestion_status #=> String, one of "SYNC_FAILED", "SYNCING_IN_PROGRESS", "SYNC_SUCCESS", "CREATE_IN_PROGRESS"
# resp.knowledge_base.knowledge_base_arn #=> String
# resp.knowledge_base.knowledge_base_id #=> String
- # resp.knowledge_base.knowledge_base_type #=> String, one of "EXTERNAL", "CUSTOM", "QUICK_RESPONSES"
+ # resp.knowledge_base.knowledge_base_type #=> String, one of "EXTERNAL", "CUSTOM", "QUICK_RESPONSES", "MESSAGE_TEMPLATES", "MANAGED"
# resp.knowledge_base.last_content_modification_time #=> Time
# resp.knowledge_base.name #=> String
# resp.knowledge_base.rendering_configuration.template_uri #=> String
# resp.knowledge_base.server_side_encryption_configuration.kms_key_id #=> String
# resp.knowledge_base.source_configuration.app_integrations.app_integration_arn #=> String
# resp.knowledge_base.source_configuration.app_integrations.object_fields #=> Array
# resp.knowledge_base.source_configuration.app_integrations.object_fields[0] #=> String
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.crawler_limits.rate_limit #=> Integer
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.exclusion_filters #=> Array
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.exclusion_filters[0] #=> String
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.inclusion_filters #=> Array
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.inclusion_filters[0] #=> String
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.scope #=> String, one of "HOST_ONLY", "SUBDOMAINS"
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.url_configuration.seed_urls #=> Array
+ # resp.knowledge_base.source_configuration.managed_source_configuration.web_crawler_configuration.url_configuration.seed_urls[0].url #=> String
# resp.knowledge_base.status #=> String, one of "CREATE_IN_PROGRESS", "CREATE_FAILED", "ACTIVE", "DELETE_IN_PROGRESS", "DELETE_FAILED", "DELETED"
# resp.knowledge_base.tags #=> Hash
# resp.knowledge_base.tags["TagKey"] #=> String
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.chunking_strategy #=> String, one of "FIXED_SIZE", "NONE", "HIERARCHICAL", "SEMANTIC"
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.fixed_size_chunking_configuration.max_tokens #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.fixed_size_chunking_configuration.overlap_percentage #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.level_configurations #=> Array
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.level_configurations[0].max_tokens #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.hierarchical_chunking_configuration.overlap_tokens #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.breakpoint_percentile_threshold #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.buffer_size #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.chunking_configuration.semantic_chunking_configuration.max_tokens #=> Integer
+ # resp.knowledge_base.vector_ingestion_configuration.parsing_configuration.bedrock_foundation_model_configuration.model_arn #=> String
+ # resp.knowledge_base.vector_ingestion_configuration.parsing_configuration.bedrock_foundation_model_configuration.parsing_prompt.parsing_prompt_text #=> String
+ # resp.knowledge_base.vector_ingestion_configuration.parsing_configuration.parsing_strategy #=> String, one of "BEDROCK_FOUNDATION_MODEL"
#
# @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateKnowledgeBaseTemplateUri AWS API Documentation
#
# @overload update_knowledge_base_template_uri(params = {})
# @param [Hash] params ({})
@@ -3309,10 +4928,15 @@
# Updates a session. A session is a contextual container used for
# generating recommendations. Amazon Connect updates the existing Amazon
# Q in Connect session for each contact on which Amazon Q in Connect is
# enabled.
#
+ # @option params [Hash<String,Types::AIAgentConfigurationData>] :ai_agent_configuration
+ # The configuration of the AI Agents (mapped by AI Agent Type to AI
+ # Agent version) that should be used by Amazon Q in Connect for this
+ # Session.
+ #
# @option params [required, String] :assistant_id
# The identifier of the Amazon Q in Connect assistant. Can be either the
# ID or the ARN. URLs cannot contain the ARN.
#
# @option params [String] :description
@@ -3330,10 +4954,15 @@
# * {Types::UpdateSessionResponse#session #session} => Types::SessionData
#
# @example Request syntax with placeholder values
#
# resp = client.update_session({
+ # ai_agent_configuration: {
+ # "MANUAL_SEARCH" => {
+ # ai_agent_id: "UuidWithQualifier", # required
+ # },
+ # },
# assistant_id: "UuidOrArn", # required
# description: "Description",
# session_id: "UuidOrArn", # required
# tag_filter: {
# and_conditions: [
@@ -3363,10 +4992,12 @@
# },
# })
#
# @example Response structure
#
+ # resp.session.ai_agent_configuration #=> Hash
+ # resp.session.ai_agent_configuration["AIAgentType"].ai_agent_id #=> String
# resp.session.description #=> String
# resp.session.integration_configuration.topic_integration_arn #=> String
# resp.session.name #=> String
# resp.session.session_arn #=> String
# resp.session.session_id #=> String
@@ -3391,10 +5022,68 @@
def update_session(params = {}, options = {})
req = build_request(:update_session, params)
req.send_request(options)
end
+ # Updates the data stored on an Amazon Q in Connect Session.
+ #
+ # @option params [required, String] :assistant_id
+ # The identifier of the Amazon Q in Connect assistant. Can be either the
+ # ID or the ARN. URLs cannot contain the ARN.
+ #
+ # @option params [required, Array<Types::RuntimeSessionData>] :data
+ # The data stored on the Amazon Q in Connect Session.
+ #
+ # @option params [String] :namespace
+ # The namespace into which the session data is stored. Supported
+ # namespaces are: Custom
+ #
+ # @option params [required, String] :session_id
+ # The identifier of the session. Can be either the ID or the ARN. URLs
+ # cannot contain the ARN.
+ #
+ # @return [Types::UpdateSessionDataResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::UpdateSessionDataResponse#data #data} => Array<Types::RuntimeSessionData>
+ # * {Types::UpdateSessionDataResponse#namespace #namespace} => String
+ # * {Types::UpdateSessionDataResponse#session_arn #session_arn} => String
+ # * {Types::UpdateSessionDataResponse#session_id #session_id} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.update_session_data({
+ # assistant_id: "UuidOrArn", # required
+ # data: [ # required
+ # {
+ # key: "NonEmptySensitiveString", # required
+ # value: { # required
+ # string_value: "NonEmptySensitiveString",
+ # },
+ # },
+ # ],
+ # namespace: "Custom", # accepts Custom
+ # session_id: "UuidOrArn", # required
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.data #=> Array
+ # resp.data[0].key #=> String
+ # resp.data[0].value.string_value #=> String
+ # resp.namespace #=> String, one of "Custom"
+ # resp.session_arn #=> String
+ # resp.session_id #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qconnect-2020-10-19/UpdateSessionData AWS API Documentation
+ #
+ # @overload update_session_data(params = {})
+ # @param [Hash] params ({})
+ def update_session_data(params = {}, options = {})
+ req = build_request(:update_session_data, params)
+ req.send_request(options)
+ end
+
# @!endgroup
# @param params ({})
# @api private
def build_request(operation_name, params = {})
@@ -3409,10 +5098,10 @@
params: params,
config: config,
tracer: tracer
)
context[:gem_name] = 'aws-sdk-qconnect'
- context[:gem_version] = '1.20.0'
+ context[:gem_version] = '1.21.0'
Seahorse::Client::Request.new(handlers, context)
end
# @api private
# @deprecated