CoolFace
Apppublic

alpertml/TopicModelingForSummarization

sourceHugging Facecreativeml-openrail-mupdated 3y agoView on Hugging Face
0likes
stanza_utilities.py59 linesDownload Raw Back to src
1### Imports2import stanza3import pandas as pd4import traceback5 6class StanzaSegmentizer:7    ##==========================================================================================================8    """9    Definition of attributes10    """11    __nlp_stanza = None12    ##==========================================================================================================13    """14    Function: __init__15    """16    def __init__(self):17        try:18            if self.__nlp_stanza == None:19                print("Initializing stanza")20                self.initialize_stanza()21        except Exception as excMsg:22            print(excMsg)23    ##==========================================================================================================24    """25    Function: initialize_stanza26    """27    def initialize_stanza(self):28        try:            29            self.__nlp_stanza = stanza.Pipeline('en')30        except Exception as excmsg:31            print(f"An error happens in initialize_spacy(...) {traceback.format_exc()}.")32            self.__nlp_stanza = None33        return self.__nlp_stanza34    ##==========================================================================================================35    """36    Function: segment_into_sentences37    """38    def segment_into_sentences(self, src_text="", _format="str"):39        intermediate_result = None40 41        if isinstance(src_text, str):42            intermediate_result = [s for s in (self.__nlp_stanza(src_text)).sentences]43        elif isinstance(src_text, list):44            intermediate_result = list()45 46            for sent in src_text:47                intermediate_result.extend([s for s in (self.__nlp_stanza(sent)).sentences])48 49        if _format == "str":50            sentences_new_doc = list()51    52            for intsent in intermediate_result:53                sentences_new_doc.append(intsent.text)54            return sentences_new_doc55        else:56            return intermediate_result57    ##==========================================================================================================58 59##==========================================================================================================