import spacy import gradio as gr from spacy import displacy # Load your trained spaCy model nlp = spacy.load("sr_Spacy_Serbian_Model_SrpKor4Tagging_BERTICOVO") # Define a function to display the tags and lemmas def display_tags_and_lemmas(text): doc = nlp(text) html = displacy.render(doc, style="ent", page=True, minify=True) # We'll also create a custom HTML to display lemmas nicely lemma_html = "
" lemma_html += "" for token in doc: lemma_html += f"" lemma_html += "
TokenLemmaPOS Tag
{token.text}{token.lemma_}{token.pos_}
" # Return both the displaCy HTML and our custom lemma table return html, lemma_html # Define Gradio interface iface = gr.Interface( fn=display_tags_and_lemmas, inputs=gr.Textbox(lines=5, placeholder="Unesite rečenicu ovde..."), outputs=gr.HTML(label="Leme i POS oznake"), title="spaCy Tagger i Lemmatizer", description="Unesite rečenicu da biste videli njene imenovane entitete, POS oznake i leme.", examples=["Lep dan, danas."] ) iface.launch()