AWS Machine Learning Blog

Quickly build custom search applications without writing code using Amazon Kendra Experience Builder

Amazon Kendra is an intelligent search service powered by machine learning (ML). Amazon Kendra reimagines search for your websites and applications so your employees and customers can easily find the content they’re looking for, even when it’s scattered across multiple locations and content repositories within your organization. With Amazon Kendra, you don’t need to click through multiple documents to find the answer you’re looking for. It gives you the exact answer to your query.

Getting started with Amazon Kendra is quick and simple; you can index and start searching your content from the Amazon Kendra console in less than 10 minutes. You now have multiple ways to deploy your search application. You can use APIs to integrate with an existing search application. You can also use the downloadable React code snippets to build your own experience. Or you can use the out-of-the-box search interface with the Amazon Kendra Experience Builder to quickly configure your own custom search experience and make it available to your users.

With the new Experience Builder, you can deploy a fully functional and customizable search experience with Amazon Kendra in a few clicks, without any coding or ML experience. Experience Builder delivers an intuitive visual workflow to quickly build, customize, and launch your Amazon Kendra-powered search application, securely on the cloud. You can start with the ready-to-use search experience template in the builder, which you can customize by simply dragging and dropping the components you want, such as filters or sorting. You can invite others to collaborate or test your application for feedback, and then share the project with all users when you’re ready to deploy the experience. The Experience Builder comes with AWS Single Sign-On (AWS SSO) integration, which supports popular identity providers (IdPs) such as Azure AD and Okta, so you can deliver secure end user SSO authentication while accessing the search experience.

In this post, we discuss how to build a custom search application quickly with the Amazon Kendra Experience Builder.

Solution overview

Below are the steps to build your own custom search interface using Experience builder.

Configure your index

To build your custom search application using Amazon Kendra Experience Builder, first sign in to the Amazon Kendra console and create an index. After you create an index, add data sources to your index, such as Amazon Simple Storage Service (Amazon S3), SharePoint, or Confluence. You can skip these steps if you already have an index and data sources set up.

Create your experience

To create your experience, complete the following steps:

  1. On the Amazon Kendra console, navigate to your index.
  2. Choose Create experience.

  1. For Experience name, enter a name.
  2. Under Content sources, select the data sources you want to search.
  3. For IAM role, choose your AWS Identity and Access Management (IAM) role to grant Amazon Kendra access permissions.
  4. Choose Next.

The Experience Builder comes with AWS SSO integration, supporting popular IdPs such as Azure AD and Okta, and automatically detects AWS SSO directories in your account.

  1. In the Confirm your identity from an AWS SSO directory section, select your identity.
  2. Choose Next.

If you don’t have AWS SSO, Amazon Kendra provides an easy step to enable it and add yourself as an owner. You can then add additional lists of users or groups to your directory and assign access permissions. For example, you can assign owner or viewer permissions to users and groups as you add them to your experience. Users with viewer permissions are your end users; they’re authorized to load your search application and perform searches. Users with owner permissions are authorized to configure, design, tune, manage access, and share search experiences.

  1. After you configure your SSO and assign yourself as owner, review the settings, and choose Create experience and open Experience Builder.

After you launch the Experience Builder, you’re redirected to the URL that was generated for your experience. Here, the experience verifies if you have a valid authenticated session. If you do, you’re redirected to the Experience Builder; if not, you’re redirected to your IdP via AWS SSO to authenticate you. After authentication is successful, the IdP redirects you back to the Experience Builder.

Customize, tune, and share your experience

Now, inside the Experience Builder, you can start customizing the default template, which already comes preconfigured with most key features, such as the search box, Amazon Kendra suggested answers, FAQ matches, and recommended documents. You can customize the experience by dragging and dropping these components from the components panel onto your page canvas. You can also configure the content rendered inside each component.

For example, if you want to customize filters, choose Filter in the Design pane.

You can customize which fields you want your application to facet search results on, and assign display labels if needed.

Similarly, you can customize other UI components, including the search bar, sort, suggested answers, FAQ, and document ranking.

Optionally, you can further improve relevancy by boosting the search results using relevancy tuning.

Choose Preview to visualize your search experience without any editor tool distractions. When you’re happy with the changes, choose Publish to push the changes you made to the live or production version of the search experience.

You have successfully built and deployed a custom search application. Users with viewers permissions can now start searching by going to the search experience URL that was generated when you first created the search experience.

Conclusion

The Amazon Kendra Experience Builder enables you to configure your own custom search experience and make it available to your users in a few clicks, without any coding or ML experience.

You can use Experience Builder today in the following Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Europe (Ireland), and Canada (Central). For the most up-to-date information about Amazon Kendra Region availability, see AWS Regional Services.  You can configure Experience Builder using the AWS Command Line Interface (AWS CLI), AWS SDKs, and the AWS Management Console. There is no additional charge for using Experience Builder. For more information about pricing, see Amazon Kendra pricing.

To learn more about Experience Builder, visit Amazon Kendra Developer Guide


About the Authors

Jean-Pierre Dodel leads product management for Amazon Kendra, a new ML-powered enterprise search service from AWS. He brings 15 years of Enterprise Search and ML solutions experience to the team, having worked at Autonomy, HP, and search startups for many years prior to joining Amazon four years ago. JP has led the Amazon Kendra team from its inception, defining vision, roadmaps, and delivering transformative semantic search capabilities to customers like Dow Jones, Liberty Mutual, 3M, and PwC.

Vikas Shah is an Enterprise Solutions Architect at Amazon Web Services. He is a technology enthusiast who enjoys helping customers find innovative solutions to complex business challenges. His areas of interest are ML, IoT, robotics and storage. In his spare time, Vikas enjoys building robots, hiking, and traveling.