QnABot on AWS is a multi-channel, multi-language conversational interface (chatbot) that responds to your customer’s questions, answers, and feedback. It allows you to deploy a fully functional chatbot across multiple channels including chat, voice, SMS, and Amazon Alexa.
Provide personalized tutorials and question and answer support with intelligent multi-part interaction. Use the Command Line Interface (CLI) to import and export questions from your QnABot setup. Use Amazon Kendra natural language processing (NLP) capabilities to better understand human questions. Import questions and answers and session attributes from an Excel file.
Automate customer support workflows.
Create engaging, human-like interactions for chatbots. Use intent and slot matching to implement different types of question-and-answer workflows.
AWS Solution overview
The diagram below presents the architecture you can automatically deploy using the AWS Solution's implementation guide and accompanying AWS CloudFormation template.
QnABot on AWS solution architecture
The AWS CloudFormation template deploys the following workflows and services:
- The admin deploys the guidance into their AWS account, opens the Content Designer UI, and uses Amazon Cognito to authenticate.
- After authentication, Amazon CloudFront and Amazon Simple Storage Service (Amazon S3) deliver the contents of the Content Designer UI.
- The admin configures questions and answers in the Content Designer and the UI sends requests to Amazon API Gateway to save the questions and answers.
- The Content Designer AWS Lambda function saves the input in Amazon OpenSearch Service in a questions bank index.
- Users of the chatbot interact with Amazon Lex via the Web Client UI or Amazon Connect.
- Amazon Lex forwards requests to the AWS Lambda (Bot Fulfillment) function. Users can also send requests to this Lambda function via Amazon Alexa devices.
- The Bot Fulfillment function takes the users input and uses Amazon Comprehend and Amazon Translate (if necessary) to translate non-English requests to English and then looks up the answer in Amazon OpenSearch Service. If Amazon Kendra index is configured and provided at the time of deployment, the Bot Fulfillment function also sends a request to the Amazon Kendra index.
- User interactions with Bot Fulfillment functions generate logs and metrics data, which is sent to Amazon Kinesis Data Firehose then to Amazon S3 for later data analysis.
You can add Amazon Connect and Amazon Kendra to this solution’s architecture.
Browse our library of AWS Solutions to get answers to common architectural problems.
Find AWS Partners to help you get started.
Find prescriptive architectural diagrams, sample code, and technical content for common use cases.