File size: 1,057 Bytes
da88570 56abaa1 da88570 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# -*- coding: utf-8 -*-
from __future__ import absolute_import
from __future__ import division, print_function, unicode_literals
import psutil
from sumy.parsers.html import HtmlParser
from sumy.parsers.plaintext import PlaintextParser
from sumy.nlp.tokenizers import Tokenizer
from sumy.summarizers.lsa import LsaSummarizer as Summarizer
from sumy.nlp.stemmers import Stemmer
from sumy.utils import get_stop_words
import nltk
import streamlit as st
class SumySummarizer:
LANGUAGE = "german"
SENTENCES_COUNT = 10
def __init__(self):
nltk.download('punkt_tab')
def summarize(self, text: str):
parser = PlaintextParser.from_string(text, Tokenizer(self.LANGUAGE))
stemmer = Stemmer(self.LANGUAGE)
summarizer = Summarizer(stemmer)
st.info("Using Textsummarization Model Sumy Summarizer")
summarizer.stop_words = get_stop_words(self.LANGUAGE)
summary = summarizer(parser.document, self.SENTENCES_COUNT)
summary = [str(sentence) for sentence in summary]
return summary |