Szabó Gergő
ci: from lg model to trf changed
08879de
raw
history blame
No virus
1.86 kB
import gradio as gr
import spacy
import pandas as pd
from spacy import displacy
from resources import triples
nlp = spacy.load("hu_core_news_trf")
def process(text: str) -> pd.DataFrame:
doc = nlp(text)
tuples_to_list = list()
tuples = triples.subject_verb_object_triples(doc)
if tuples:
tuples_to_list = list(tuples)
subject = ""
verb = ""
object = ""
if len(tuples_to_list) == 0:
return pd.DataFrame([["-", "-", "-"]], columns=['Subject', 'Verb', 'Object'])
for sub_multiple in tuples_to_list[0][0]:
subject += str(sub_multiple) + ", "
subject = subject[:-2]
for verb_multiple in tuples_to_list[0][1]:
verb += str(verb_multiple) + ", "
verb = verb[:-2]
for obj_multiple in tuples_to_list[0][2]:
object += str(obj_multiple) + ", "
object = object[:-2]
relation_list = [[subject,
verb,
object]]
return pd.DataFrame(relation_list, columns=['Subject', 'Verb', 'Object'])
EXAMPLES = ["Anna éppen most házat épít magának.",
"Noémi gulyáslevest szeret főzni, ha éhes.",
"Balázs Jéghideg helyi ananászlevet ivott Hawaii fehér homokos partján.",
"Júliska fagyit árul a nyáron teljes állásban.",
"Einstein megmutatta a házát építés közben.",
"Hawking nyilatkozott egy levelet, miszerint a felfedezései az élete legizgalmasabb eseményei voltak."]
# process(EXAMPLES[0])
# displacy checker
# text = nlp(EXAMPLES[1])
# displacy.serve(text, style="dep")
# alma = 41
demo = gr.Interface(
fn=process,
inputs=gr.Textbox(value=EXAMPLES[0], lines=10, label="Input text", show_label=True),
outputs=gr.DataFrame(label="Keywords", show_label=False, max_cols=3, max_rows=1),
examples=EXAMPLES,
# cache_examples=True,
)