How sinchana-gowda26/nlp-model-foe-sentiment-analysis-to-classify-text-tweets-comments-and-reviews works
This is a Streamlit sentiment-analysis application. Users provide text directly or through URL, PDF, or CSV input; the app extracts text where needed, translates it to English, analyzes it with the selected VADER or BiLSTM model, and displays sentence-level results. A separate training script prepares sample data and saves the BiLSTM model and tokenizer used at runtime. The README documents these input and analysis capabilities; the sampled app source shows their implementation in one module.
Main entry points: app.py Streamlit interface · artifacts Model and tokenizer files · train_bilstm.py BiLSTM training · text_utils.py Training text cleaning
Components 15
Input and UI
- Streamlit interface
sentiment_project_full/app.py - Text input
sentiment_project_full/app.py - URL extraction
sentiment_project_full/app.py - PDF extraction
sentiment_project_full/app.py - CSV extraction
sentiment_project_full/app.py
Analysis
- Analysis selection
sentiment_project_full/app.py - VADER analysis
sentiment_project_full/app.py - BiLSTM inference
sentiment_project_full/app.py - Results display
sentiment_project_full/app.py
Model lifecycle
- BiLSTM training
sentiment_project_full/training/train_bilstm.py - Training text cleaning
sentiment_project_full/utils/text_utils.py - Model and tokenizer files
sentiment_project_full/artifacts
Other components
- User
- Web page
- Translation service
Connections 17
- User → Streamlit interface: uses
- Streamlit interface → Text input: accepts text
- Streamlit interface → URL extraction: selects URL
- Streamlit interface → PDF extraction: selects PDF
- Streamlit interface → CSV extraction: selects CSV
- URL extraction → Web page: fetches page
- Streamlit interface → Analysis selection: submits text
- Analysis selection → Translation service: translates text
- Analysis selection → VADER analysis: selects VADER
- Analysis selection → BiLSTM inference: selects BiLSTM
- VADER analysis → Results display: returns scores
- BiLSTM inference → Results display: returns predictions
- Results display → User: shows results
- BiLSTM training → Training text cleaning: cleans samples
- BiLSTM training → Model and tokenizer files: saves model
- Streamlit interface → Model and tokenizer files: loads model
- BiLSTM inference → Model and tokenizer files: uses tokenizer