import gradio as gr import os os.system('python -m spacy download en_core_web_sm') import spacy from spacy import displacy import pandas as pd nlp = spacy.load("en_core_web_sm") def text_analysis(text): doc = nlp(text) dependency_parsing = displacy.render(doc, style="dep", page=True) visual1 = ( "
" + dependency_parsing + "
" ) rows = [] for token in doc: rows.append((token.text, token.lemma_, token.pos_, token.tag_, token.dep_, token.shape_, token.is_alpha, token.is_stop)) table = pd.DataFrame(rows, columns = ["TEXT", "LEMMA","POS","TAG","DEP","SHAPE","ALPHA","STOP"]) return table, visual1 with gr.Blocks() as demo: with gr.Row(): inp = gr.Textbox(placeholder="Enter text to analyze...", label="Input") btn = gr.Button("Analyze Text") gr.Markdown(""" # Analysis""") with gr.Row(): table = gr.Dataframe() gr.Markdown("""## Dependency Parsing""") with gr.Row(): visual1 = gr.HTML() with gr.Row(): gr.Examples( examples=[ ["Data Science Dojo is the leading platform providing training in data science, data analytics, and machine learning."], ["It's the best time to execute the plan."], ], fn=text_analysis, inputs=inp, outputs=[table, visual1], cache_examples=True) btn.click(fn=text_analysis, inputs=inp, outputs=[table, visual1]) demo.launch()