Spaces:
Runtime error
Runtime error
File size: 2,078 Bytes
3571bad 2ecc574 3571bad 2ecc574 19cfb7e 3571bad |
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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
import gradio as gr
import spacy
import pandas as pd
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 főzni fog, ha haza ért.",
"Jéghideg narancslevet fogok kortyolni Mallorca homokos partján.",
"Júliska fagyit fog árulni.",
"Einstein megmutatta, hogy hogyan kell házat építeni.",
"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[4])
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,
)
|