Case study
EZ Review, an Amazon review sentiment analyzer
Reading hundreds of reviews to decide whether a product is any good takes too long. Paste an Amazon product link into this web app, and it fetches the latest reviews, scores each one, and shows the overall split with a short summary of what reviewers praise and complain about.
- Sentiment versions compared
- 3
- Review pages per product
- 10
- Summary length
- 4 sentences
How it works
- A React front end, built with Vite, takes an Amazon product URL.
- A Flask API finds the product's ASIN and pulls up to 10 pages of reviews with requests and BeautifulSoup.
- Each review gets a sentiment score, and the app reports the share of positive and negative reviews.
- OpenAI's GPT-3.5 writes a four-sentence summary of recurring praise and complaints.
The key decision: a hybrid sentiment model
VADER, a fast rule-based scorer, labels clear-cut reviews. When its compound score is close to zero, a DistilBERT model fine-tuned on SST-2 decides instead. That keeps a transformer's nuance for ambiguous language without running it on every review.
How the model was chosen
Three working versions were compared side by side: TextBlob polarity, DistilBERT on its own, and VADER with BERT for ambiguous reviews. The app uses the hybrid. Earlier experiments trained classic models on the Amazon Reviews 2023 dataset from Hugging Face.