This is a web-based summarization app built with React and Bootstrap. The app allows users to input text and generate concise summaries using a custom-trained T5 model. The T5 model has been fine-tuned on the Gigaword dataset, which provides high-quality summarization results. The input and output sections are neatly arranged side by side for a user-friendly experience.
Video demo - https://youtu.be/L2xCct6soqM
Pretrained model -
- User-friendly interface for text summarization
- Input and output sections side by side
- Summarization using a custom-trained T5 model fine-tuned on the Gigaword dataset
- Ability to upload documents for summarization
- Clean UI built with Bootstrap
- React (Frontend)
- Django (Backend)
- Bootstrap (CSS Framework)
- Python for model training
- T5 model fine-tuned on the Gigaword dataset
This project uses the Gigaword dataset, which consists of pairs of long text articles and their corresponding summaries. The T5 model was fine-tuned on this dataset to improve summarization capabilities and generate concise summaries based on the user's input.
Dataset paper - Paper Link
Dataset download - Kaggle Dataset Link
To get started with the project:
-
Clone the repository:
git clone https://github.com/kazimahathir73/EssenceAI.git cd EssenceAI
-
Install frontend dependencies:
cd frontend npm install
-
Install backend dependencies:
cd ../backend pip install -r requirements.txt
-
Run the frontend and backend servers:
-
Frontend (React):
cd frontend npm start
-
Backend (Django):
cd backend python manage.py runserver
-
├── backend
│ ├── model.py
│ ├── admin.py
│ ├── views.py
│ ├── urls.py
│ └── ...
├── frontend
│ ├── public
│ │ └── images
│ │ └── videos
│ │ └── ....
│ ├── src
│ │ └── components
│ │ └── homepage.css
│ │ └── homepage.js
│ │ └── summary.js
│ │ └── summary.css
│ │ └── ....
│ │ └── Apps.js
│ │ └── index.js
│ └── ...
├── main
│ ├── asgi.py
│ ├── setting.py
│ ├── urls.py
│ ├── wsgi.py
│ └── ...
├── summarizer_model
│ ├── weights
│ ├── gigadata_corpus.csv
│ ├── response.py
│ ├── train_model.ipynb
│ └── ...
├── README.md
└── ...
Contributions are welcome! If you find any bugs or want to add a new feature:
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Make your changes and commit them (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature-branch
). - Open a Pull Request.