This project is a text summarization system with Word Sense Disambiguation (WSD) implemented using Python and various NLP libraries. The system takes a paragraph of text as input and performs Part-of-Speech tagging and Named Entity Recognition using the spaCy library. It then identifies repeating words with different POS tagging and creates a list of potential target words for WSD. The system generates summaries for each target word using the T5 transformer model from Hugging Face, and compares the results using the Rouge evaluation metric. The system also uses an n-gram model to predict the most appropriate word for each target word, based on the context. The output is the summary with the highest Rouge score.
The system is implemented as a Flask web application . The application allows users to input a paragraph of text and get a summary with the best Rouge score. The project includes a detailed README.txt file with instructions on how to run the application, a requirements.txt file with all the dependencies, and a license file. The code is well-documented and follows best practices for Python development.