📚 A Streamlit-based NLP app that summarizes large text documents using both extractive (TextRank) and abstractive (BART) techniques.
- ✂️ Extractive Summarization using TextRank algorithm via Sumy
- 🧠 Abstractive Summarization using Hugging Face's BART model
- 💡 Intuitive Streamlit UI for input and output
- 📝 Handles custom inputs such as news articles, reports, and essays
- 📏 Adjustable summary length for tailored outputs
Component | Tool/Library |
---|---|
Extractive Model | TextRank (Sumy) |
Abstractive Model | BART (facebook/bart-large-cnn ) |
NLP Utilities | NLTK, Transformers |
Web UI | Streamlit |
Language | Python 3.10+ |
git clone https://github.com/akasha456/TextSummarizer-NLP-based-Text-Summarization-Tool
cd TextSummarizer-NLP-based-Text-Summarization-Tool
pip install -r requirements.txt
streamlit run app.py
flowchart TD
A[User Inputs Text] --> B[Choose Summary Type]
B --> C{Summary Type?}
C -->|Extractive| D[TextRank via Sumy]
C -->|Abstractive| E[BART via Hugging Face]
D --> F[Return Summary]
E --> F[Return Summary]
F --> G[Display in Streamlit]
Sentiment | Count |
---|---|
👍 Good | 52 |
👎 Bad | 27 |
😐 Neutral | 21 |
- 🗃️ Save comment history and results to CSV
- 🧠 Upgrade to deep learning-based sentiment models
- 📱 Deploy as mobile-friendly PWA
- 🌍 Multilingual comment support (translation + sentiment)
This project is licensed under the MIT License.
Type | Original Text | Summary |
---|---|---|
Extractive | News article about AI | First 3 ranked sentences |
Abstractive | 500-word blog post | Condensed abstract overview |
- 🗂️ File upload for summarizing PDFs and DOCX
- 🎙️ Speech-to-text support
- 🌍 Language detection and multilingual support
- 🔗 Summarization of URLs or web content
- 📊 Evaluation using ROUGE, BLEU metrics
This project is licensed under the MIT License.