Connect SmartHub to the Amazon Kendra Search Engine

Note: Search engines in SmartHub are often referred to as "backends." Consider these terms interchangeable.

Prerequisites

  • An Amazon Kendra index populated with documents
  • A set of IAM Access Keys (access key and secret) that can be used to access the AWS Kendra index

Limitations

  1. As Amazon Kendra doesn't support the XRANK operator the following features are unsupported:
    1. Relevancy tuning
    2. Other boosting-based functionalities
  2. Amazon Kendra can display up to 10 facet values per facet for a query. If you want to increase this limit, contact Amazon Kendra support. For more details, see https://docs.aws.amazon.com/kendra/latest/dg/API_Facet.html.
  3. Amazon Kendra doesn't provide an actual document ranking, instead it provides a relative ranking that indicates how confident Amazon Kendra is that the response matches the query. Therefore, the valid values for ScoreConfidence are: VERY_HIGH | HIGH | MEDIUM | LOW | NOT_AVAILABLE.
    •  SmartHub assigns threshold values as follows:
      • VERY_HIGH - 1.0
      • HIGH - 0.7
      • MEDIUM - 0.4
      • LOW - 0.1
      • NOT_AVAILABLE - 0
  4. SmartHub supports the following Amazon Kendra result types:
    • Document
    • Answer
    • Question_Answer

How to Create and Configure Your Kendra Search Engine

After you satisfy the prerequisites listed above, use the following steps to create and configure an Amazon Kendra search engine.

  1. Navigate to the SmartHub Administration page at http(s)://[web-app-url]/_admin.
    1. For example: http://smarthub.azurewebsites.net/_admin.
  2. Go to the General Settings page.
  3. Click the ADD SEARCH ENGINE link to add your new Amazon Kendra search engine.

  4. In the modal window add the corresponding information in the appropriate fields:
    1. Type: Select Regular.
    2. Search Engine: Select Amazon Kendra from the drop-down list.
    3. Name: Select a name for your search engine.
    4. Rank offset formula coefficients(optional): Enter these values only if you selected the Rank Based mixing algorithm that is set in the Additional Settings page:

      • BOOST: Enter the boost factor.

      • OFFSET: Enter the rank offset.

    5. Index name: The name of the AWS Kendra index to be used at search time. This name is located in the Kendra management page.



    6. Endpoint: the URL that is the entry point for the web service.
    7. Access Key: The IAM Access Key to be used at search time for authorization.

    8. Secret Key: The IAM Secret Key to be used at search time for authorization (see screenshot above).
    9. Region:
      1. The Region where the AWS Kendra instance is hosted.
      2. You can find this in the Kendra management page