How md-abrar-hossain/critix works
Critix is a Gradio movie-review analyzer. A submitted review enters the app workflow, receives sentiment classification, then drives sentiment-matched review retrieval, aspect extraction and a community verdict, alongside movie recommendations; the app presents the results in chat history. The sampled implementation uses an MLP with TF-IDF and metadata features, despite the README’s broader deep-learning description. Some documented datasets and indexes are absent from the tree, so their runtime use is shown only where sampled code supports it.
Main entry points: app.py Review workflow · sentiment.py Sentiment prediction · retrieval.py Similar-review retrieval · recommendation.py Movie recommendations
Components 15
Chat interface
- Gradio interface
app.py - Review workflow
app.py - Chat transcript
app.py
Review analysis
- Sentiment prediction
src/sentiment.py - Text preprocessing
src/preprocessing.py
Review and movie search
- Similar-review retrieval
src/retrieval.py - Aspect extraction
src/retrieval.py - Community verdict
src/retrieval.py - Movie recommendations
src/recommendation.py - Sentence embedder
src/retrieval.py
Models and data
- Classifier resources
models - Review indexes and pools
indexes - Movie metadata
data/movie_metadata.csv - Project path helper
src/utils.py
Other components
- Reviewer
Connections 18
- Reviewer → Gradio interface: submits review
README.md - Gradio interface → Review workflow: dispatches
app.py - Review workflow → Sentiment prediction: predicts sentiment
app.py - Sentiment prediction → Text preprocessing: cleans text
src/sentiment.py - Sentiment prediction → Classifier resources: loads model features
src/sentiment.py - Review workflow → Similar-review retrieval: retrieves reviews
app.py - Similar-review retrieval → Sentence embedder: encodes query
src/retrieval.py - Similar-review retrieval → Review indexes and pools: searches sentiment pool
src/retrieval.py - Review workflow → Aspect extraction: extracts aspects
app.py - Review workflow → Community verdict: builds verdict
app.py - Review workflow → Movie recommendations: recommends movies
app.py - Movie recommendations → Sentence embedder: encodes query
src/recommendation.py - Movie recommendations → Movie metadata: loads metadata
src/recommendation.py - Review workflow → Chat transcript: renders results
app.py - Gradio interface → Chat transcript: displays history
app.py - Sentiment prediction → Project path helper: resolves resource paths
src/sentiment.py - Similar-review retrieval → Project path helper: resolves resource paths
src/retrieval.py - Movie recommendations → Project path helper: resolves resource paths
src/recommendation.py