Personalize the customer experience through customer feedback analysis powered by machine learning
This Guidance helps you collect and democratize customer feedback provided in unstructured data formats such as forms, reviews, emails, and chatbots. It uses natural language processing (NLP) services such as Amazon Comprehend to extract text and perform entity parsing and sentiment analysis. This Guidance also notifies internal teams of feedback using event-based services, including AWS Lambda, Amazon Simple Notification Service (Amazon SNS), and Amazon Simple Queue Service (Amazon SQS).
Please note: [Disclaimer]
Architecture Diagram

[Architecture diagram description]
Step 1
Source applications collect feedback from emails, feedback forms, customer support call recordings, and chatbot transcripts in databases or file systems.
Step 2
Amazon Transcribe creates transcripts of customer call recordings. AWS Transfer Family transfers files to AWS and AWS Database Migration Service (AWS DMS) and connects and replicates data from different databases to AWS. Amazon Simple Storage Service (Amazon S3) provides an intermediate landing zone for raw data at any velocity, volume, or variety.
Step 3
A new feedback event pushes text files to Amazon S3. The event-based architecture invokes the respective AWS Lambda function to start feedback inference.
Step 4
Lambda translates the data to English in near real-time using the neural machine on Amazon Translate.
Step 5
Lambda extracts and processes the text using Amazon Comprehend, which processes the extracted text and performs clustered data and feedback, CSAT report, feedback summary, sentiment analysis, and product performance. For better accuracy, we leverage a custom classifier within Amazon Comprehend.
Step 6
Lambda uses a large language model (LLM) on Amazon SageMaker to identify the right department to be notified and routing rule for urgent feedback. Amazon Simple Notification Service (Amazon SNS) sends these notifications. Lambda pushes the final data to store in an open search index.
Step 7
Amazon Open Search Service performs custom querying data for near real-time search, big data analytics, and custom dashboards.
Step 8
SageMaker LLM summarizes non-urgent feedback, such as a feature suggestion, which is then stored in Open Search Service using a different index.
Step 9
Amazon QuickSight provides a comprehensive view of all customer feedback with a summary to drill down capabilities and analyze feedback.
Step 10
AWS security services secure and monitor this Guidance.
Well-Architected Pillars

The AWS Well-Architected Framework helps you understand the pros and cons of the decisions you make when building systems in the cloud. The six pillars of the Framework allow you to learn architectural best practices for designing and operating reliable, secure, efficient, cost-effective, and sustainable systems. Using the AWS Well-Architected Tool, available at no charge in the AWS Management Console, you can review your workloads against these best practices by answering a set of questions for each pillar.
The architecture diagram above is an example of a Solution created with Well-Architected best practices in mind. To be fully Well-Architected, you should follow as many Well-Architected best practices as possible.
-
Operational Excellence
The event-driven architecture allows near real-time feedback communication to respective teams. Once customer feedback is received, Amazon S3 invokes a Lambda function that derives inference from feedback. Critical feedback is communicated to users in near real-time using Amazon SNS. Amazon S3 provides reliable, scalable storage and kicks off subsequent processing. Open Search Service captures near real-time updates to the records and feedback in indexes.
-
Security
Enabling encryption by default for the S3 bucket and Open Search Service keeps data protected from unauthorized access in case of a security breach or accidental exposure. This helps maintain the confidentiality and integrity of the stored data. IAM configures granular permissions based on roles, including permissions for accessing resources on other resources, such as S3 buckets and Open Search Service indexes. Configuring the SNS topics to only accept encrypted communication helps ensure secure transmission, reducing the risk of eavesdropping or tampering during communication.
-
Reliability
Amazon S3 provides high reliability and fault tolerance while also being cost effective. You can apply custom business logic to determine when to redirect requests to other AWS Regions. QuickSight and Amazon SNS are serverless services that store data, visualize insights, and notify events at scale.
-
Performance Efficiency
Lambda is a serverless compute service that automatically scales depending on demand. The distributed nature of Open Search Service enables it to process large volumes of data in parallel, quickly finding the best matches for your queries. Serverless services help ensure that services can accommodate to demand.
-
Cost Optimization
Lambda is an event-driven mechanism used to process the event of new customer feedback and start feedback events and the inference process. This removes the need for a server to be running continuously. By using Lambda functions, you can use compute capacity only when required. Amazon SNS users pay per SNS notification request, and Amazon SNS Free Tier offers the first 100,000 notifications over HTTP for free.
-
Sustainability
Amazon S3, Lambda, and Amazon SNS are all serverless services that work on demand and can accommodate for the compute capacity required. This maximizes the performance and usage of resources. Additionally, the efficient use of serverless resources reduces the overall energy required to operate the workload. SageMaker batch inference jobs are executed using the right instance size for optimal utilization of the resources while being cost-efficient.
Implementation Resources

A detailed guide is provided to experiment and use within your AWS account. Each stage of building the Guidance, including deployment, usage, and cleanup, is examined to prepare it for deployment.
The sample code is a starting point. It is industry validated, prescriptive but not definitive, and a peek under the hood to help you begin.
Related Content

[Title]
Disclaimer
The sample code; software libraries; command line tools; proofs of concept; templates; or other related technology (including any of the foregoing that are provided by our personnel) is provided to you as AWS Content under the AWS Customer Agreement, or the relevant written agreement between you and AWS (whichever applies). You should not use this AWS Content in your production accounts, or on production or other critical data. You are responsible for testing, securing, and optimizing the AWS Content, such as sample code, as appropriate for production grade use based on your specific quality control practices and standards. Deploying AWS Content may incur AWS charges for creating or using AWS chargeable resources, such as running Amazon EC2 instances or using Amazon S3 storage.
References to third-party services or organizations in this Guidance do not imply an endorsement, sponsorship, or affiliation between Amazon or AWS and the third party. Guidance from AWS is a technical starting point, and you can customize your integration with third-party services when you deploy the architecture.