Skip to content

create_rescore_execution_plan

create_rescore_execution_plan(
    name: RescoreExecutionPlanName,
    *,
    config_overrides: Optional[KendraRankingClientConfig] = None,
    description: Optional[Description] = None,
    capacity_units: Optional[CapacityUnitsConfiguration] = None,
    tags: Optional[TagList] = None,
    client_token: Optional[ClientTokenName] = None,
) -> CreateRescoreExecutionPlanResponse

Creates a rescore execution plan. A rescore execution plan is an Amazon Kendra Intelligent Ranking resource used for provisioning the Rescore API. You set the number of capacity units that you require for Amazon Kendra Intelligent Ranking to rescore or re-rank a search service's results.

For an example of using the CreateRescoreExecutionPlan API, including using the Python and Java SDKs, see Semantically ranking a search service's results.

Parameters:

  • name (RescoreExecutionPlanName) –

    A name for the rescore execution plan.

  • description (Optional[Description], default: None ) –

    A description for the rescore execution plan.

  • capacity_units (Optional[CapacityUnitsConfiguration], default: None ) –

    You can set additional capacity units to meet the needs of your rescore execution plan. You are given a single capacity unit by default. If you want to use the default capacity, you don't set additional capacity units. For more information on the default capacity and additional capacity units, see Adjusting capacity.

  • tags (Optional[TagList], default: None ) –

    A list of key-value pairs that identify or categorize your rescore execution plan. You can also use tags to help control access to the rescore execution plan. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

  • client_token (Optional[ClientTokenName], default: None ) –

    A token that you provide to identify the request to create a rescore execution plan. Multiple calls to the CreateRescoreExecutionPlanRequest API with the same client token will create only one rescore execution plan.

Raises:

  • AccessDeniedException –

    You don’t have sufficient access to perform this action. Please ensure you have the required permission policies and user accounts and try again.

  • ConflictException –

    A conflict occurred with the request. Please fix any inconsistencies with your resources and try again.

  • InternalServerException –

    An issue occurred with the internal server used for your Amazon Kendra Intelligent Ranking service. Please wait a few minutes and try again, or contact Support for help.

  • ServiceQuotaExceededException –

    You have exceeded the set limits for your Amazon Kendra Intelligent Ranking service. Please see Quotas for more information, or contact Support to inquire about an increase of limits.

  • ThrottlingException –

    The request was denied due to request throttling. Please reduce the number of requests and try again.

  • ValidationException –

    The input fails to satisfy the constraints set by the Amazon Kendra Intelligent Ranking service. Please provide the correct input and try again.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Source code in docs_src/capo_kendra_ranking/_services/kendra_ranking.py
def create_rescore_execution_plan(
    self,
    name: "capo_kendra_ranking.types.rescore_execution_plan_name.RescoreExecutionPlanName",
    *,
    config_overrides: Optional[KendraRankingClientConfig] = None,
    description: Optional[
        "capo_kendra_ranking.types.description.Description"
    ] = None,
    capacity_units: Optional[
        "capo_kendra_ranking.types.capacity_units_configuration.CapacityUnitsConfiguration"
    ] = None,
    tags: Optional["capo_kendra_ranking.types.tag_list.TagList"] = None,
    client_token: Optional[
        "capo_kendra_ranking.types.client_token_name.ClientTokenName"
    ] = None,
) -> "capo_kendra_ranking.types.create_rescore_execution_plan_response.CreateRescoreExecutionPlanResponse":
    """<p>Creates a rescore execution plan. A rescore execution plan is an Amazon Kendra Intelligent Ranking resource used for provisioning the <code>Rescore</code> API. You set the number of capacity units that you require for Amazon Kendra Intelligent Ranking to rescore or re-rank a search service's results.</p> <p>For an example of using the <code>CreateRescoreExecutionPlan</code> API, including using the Python and Java SDKs, see <a href="https://docs.aws.amazon.com/kendra/latest/dg/search-service-rerank.html">Semantically ranking a search service's results</a>.</p>

    Args:
        name: <p>A name for the rescore execution plan.</p>
        description: <p>A description for the rescore execution plan.</p>
        capacity_units: <p>You can set additional capacity units to meet the needs of your rescore execution plan. You are given a single capacity unit by default. If you want to use the default capacity, you don't set additional capacity units. For more information on the default capacity and additional capacity units, see <a href="https://docs.aws.amazon.com/kendra/latest/dg/adjusting-capacity.html">Adjusting capacity</a>.</p>
        tags: <p>A list of key-value pairs that identify or categorize your rescore execution plan. You can also use tags to help control access to the rescore execution plan. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.</p>
        client_token: <p>A token that you provide to identify the request to create a rescore execution plan. Multiple calls to the <code>CreateRescoreExecutionPlanRequest</code> API with the same client token will create only one rescore execution plan.</p>

    Raises:
        capo_kendra_ranking.errors.access_denied_exception.AccessDeniedException: <p>You don’t have sufficient access to perform this action. Please ensure you have the required permission policies and user accounts and try again.</p>
        capo_kendra_ranking.errors.conflict_exception.ConflictException: <p>A conflict occurred with the request. Please fix any inconsistencies with your resources and try again.</p>
        capo_kendra_ranking.errors.internal_server_exception.InternalServerException: <p>An issue occurred with the internal server used for your Amazon Kendra Intelligent Ranking service. Please wait a few minutes and try again, or contact <a href="http://aws.amazon.com/contact-us/">Support</a> for help.</p>
        capo_kendra_ranking.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>You have exceeded the set limits for your Amazon Kendra Intelligent Ranking service. Please see <a href="https://docs.aws.amazon.com/kendra/latest/dg/quotas.html">Quotas</a> for more information, or contact <a href="http://aws.amazon.com/contact-us/">Support</a> to inquire about an increase of limits.</p>
        capo_kendra_ranking.errors.throttling_exception.ThrottlingException: <p>The request was denied due to request throttling. Please reduce the number of requests and try again.</p>
        capo_kendra_ranking.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints set by the Amazon Kendra Intelligent Ranking service. Please provide the correct input and try again.</p>
        capo_kendra_ranking.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_kendra_ranking.types.create_rescore_execution_plan_request.CreateRescoreExecutionPlanRequest]",
    ) -> OperationResponse[
        "capo_kendra_ranking.types.create_rescore_execution_plan_response.CreateRescoreExecutionPlanResponse"
    ]:
        import capo_kendra_ranking._operations.aws_kendra_reranking_frontend_service.create_rescore_execution_plan

        output, http_response = (
            capo_kendra_ranking._operations.aws_kendra_reranking_frontend_service.create_rescore_execution_plan.create_rescore_execution_plan(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateRescoreExecutionPlan")
    )
    input_: capo_kendra_ranking.types.create_rescore_execution_plan_request.CreateRescoreExecutionPlanRequest = {
        "name": name
    }
    if description is not None:
        input_["description"] = description
    if capacity_units is not None:
        input_["capacity_units"] = capacity_units
    if tags is not None:
        input_["tags"] = tags
    if client_token is None:
        client_token = str(uuid.uuid4())
    input_["client_token"] = client_token

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output