Zac Stryker Home Projects Blog Resume About Contact GitHub
← Projects

Text Summarization

Transform long texts into concise summaries using advanced AI algorithms

Input Text

Summary

Your summary will appear here...

Generating summary...

0
Original Words
0
Summary Words
0%
Compression Ratio
0s
Time Taken

README.md

Transform long texts into concise summaries using four different AI algorithms -- both extractive and abstractive methods. Paste text or upload a file, pick a method, and compare results with compression metrics.

Summarization Methods

MethodTypeHow It Works
TextRankExtractiveGraph-based sentence ranking (similar to PageRank)
LSAExtractiveLatent Semantic Analysis via singular value decomposition
LuhnExtractiveKeyword frequency scoring
BARTAbstractivefacebook/bart-large-cnn generates new summary sentences using beam search

Extractive methods select and return existing sentences from the source. The abstractive method generates entirely new text.

Metrics

  • Original and summary word counts
  • Compression ratio (percentage reduction)
  • Processing time

Tech Stack

  • Flask -- API backend (POST /api/summarize)
  • Hugging Face Transformers -- BART model for abstractive summarization
  • Sumy -- LSA, TextRank, and Luhn extractive algorithms
  • NLTK -- sentence tokenization
  • PyTorch -- model inference runtime

API

MethodPathDescription
GET/text-summary/Main page
POST/text-summary/api/summarizeSummarize text