oroszgy's picture
feat: disabled cache and refactored dbpepdia spotlight
2256c91
raw
history blame
1.63 kB
import gradio as gr
import pandas as pd
from examples.common import NLP
from resources import triples
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."
]
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=False,
)