Spaces:
Runtime error
Runtime error
import gradio as gr | |
import spacy | |
import pandas as pd | |
from spacy import displacy | |
from resources import triples | |
nlp = spacy.load("hu_core_news_lg") | |
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.", | |
"András fog főzni, ha haza ért.", | |
"Balázs Jéghideg narancslevet fog kortyolni Mallorca homokos partján.", | |
# "Júliska fagyit fog árulni a nyáron teljes állásban.", | |
"Júliska árulni fog fagyit a nyáron teljes állásban.", | |
"Einstein megmutatta a házát építés közben.", | |
"Vespucci 1497 és 1504 között legalább két felfedező úton vett részt.", | |
"Einstein megállapította, hogy az atomokra hasonló energiaeloszlás lehet érvényes.", | |
"Hawking úgy nyilatkozott, hogy a felfedezései az élete legizgalmasabb eseményei voltak.", | |
"Einstein megmutatta, ha feltételezi, hogy a fény valóban csak diszkrét csomagokban terjed, akkor meg tudja magyarázni a fényelektromos jelenség furcsa tulajdonságait."] | |
# process(EXAMPLES[3]) | |
# displacy checker | |
# text = nlp(EXAMPLES[3]) | |
# displacy.serve(text, style="dep") | |
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, | |
) | |