We were very frustrated that there weren't any good tools to properly summarize long articles and pieces of text.

What it does

Our web application takes in either a URL or piece of text, and uses the Pegasus model to make an abstractive summary(takes main ideas, but not chunks of text)

How we built it

We built our project using Python's Flask framework to connect our Python backend to our HTML, CSS, and JS frontend. For the abstractive summarization, we use the Pegasus model.

Challenges we ran into

A main challenge we ran into was finding a good model for abstractive summarization. We had found plenty of models for extractive summarization, but we didn't want our application to simply take chunks from the text and output that. After a few hours of searching, we found the Pegasus model, a model where it can take chunks of text and abstractly summarizes it, taking main ideas and putting it into simpler words. Another challenge we ran into was that the Pegasus model only accepts up to 512 tokens(phrases), but many of our articles were longer than that limit. To fix this, we adjusted our backend to split the text into smaller chunks if it was longer than 512 tokens.

Accomplishments that we're proud of

We are really proud of being able to finish this on time, as we didn't have much experience in machine learning, and weren't sure if we would be able to get anything working. We are also proud of being able to make a clean, user friendly UI in the time limit we were given

What we learned

We learned about different summarization methods, and machine learning using PyTorch. We also gained experience using the Flask framework, and the newspaper3k library.

What's next for Briefify

Right now, it is hosted locally, but in the future, we plan to use a hosting service to make it available to everyone.

Built With

Share this project: