Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added TextSummarization Model, Continuation to PR #785 #858

Merged
merged 2 commits into from
Oct 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions Project-Structure.md
Original file line number Diff line number Diff line change
Expand Up @@ -683,6 +683,8 @@
* [Info](Web_Development/Movie_Recommendation/info.py)
* [Pythonapplication](Web_Development/Movie_Recommendation/pythonApplication.py)
* [Test](Web_Development/Movie_Recommendation/test.py)
* Test Sumarrization Nlp
* [Textsummary](Web_Development/Test_Sumarrization_NLP/textsummary.py)
* Chatbot
* [App](Web_Development/chatbot/app.py)
* [Chat](Web_Development/chatbot/chat.py)
Expand Down
28 changes: 28 additions & 0 deletions Web_Development/Test_Sumarrization_NLP/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
## **Text Summarization NLP MOdel**

A text summarization NLP model where user and type their huge paragraphs and the model will summarize it


### 🎯 **Goal**

Python Project - People do face issues to summarize huge texts or students do face issues to learn huge texts. this model helps users to summarize those texts and use it according to their need, for example a learner can easily learn faster and understand the summarized text instead of going through huge paragraphs

Modules Used:
1. Transformers
2. Streamlit
3. tf-keras


# MOdel Deployment with Streamlit
How to deploy:
- Deploy with Streamlit

## Deployment:

streamlit run textsummarizer.py


### ✒ *Your Signature*

Ankan Mukhopadhyay
[GitHub Profile](https://github.com/Peart-Guy) | [LinkedIn](https://www.linkedin.com/in/ankan-mukhopadhyaypeartguy/)
31 changes: 31 additions & 0 deletions Web_Development/Test_Sumarrization_NLP/textsummary.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
import streamlit as st
from transformers import pipeline

# Title of the web app
st.title("Text Summarization Tool")

# Load the summarization model
@st.cache_resource(show_spinner=True) # Cache the model loading for faster performance
def load_summarizer():
return pipeline("summarization", model="t5-small")

summarizer = load_summarizer()

# Instructions for users
st.write("Enter the text you'd like to summarize (minimum 50 words).")

# Create a text area for the user to input text
user_input = st.text_area("Input Text", height=200)

# A button to initiate the summarization process
if st.button("Summarize"):
if len(user_input.split()) < 50:
st.warning("Please enter at least 50 words for summarization.")
else:
# Show a spinner while the summarization is being processed
with st.spinner("Summarizing..."):
# Generate the summary
summary = summarizer(user_input, max_length=150, min_length=30, do_sample=False)
# Display the summarized text
st.subheader("Summary:")
st.write(summary[0]['summary_text'])
Loading