File size: 730 Bytes
f731deb
 
 
efde28f
 
f731deb
efde28f
 
 
 
f731deb
efde28f
 
 
 
 
 
 
f731deb
efde28f
f731deb
efde28f
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import gradio as gr
from transformers import pipeline

# Load the multilingual NER pipeline
ner = pipeline("ner", model="Davlan/xlm-roberta-base-ner-hrl", grouped_entities=True)

# Inference function
def extract_entities(text):
    results = ner(text)
    return [(ent['word'], ent['entity_group']) for ent in results]

# Gradio interface
with gr.Blocks() as demo:
    gr.Markdown(instructions)
    with gr.Row():
        inp = gr.Textbox(label="Enter Text", placeholder="Type a sentence in any language...", lines=3)
        out = gr.HighlightedText(label="Named Entities")
    btn = gr.Button("Extract Entities")

    btn.click(fn=extract_entities, inputs=inp, outputs=out)

# Launch
if __name__ == "__main__":
    demo.launch()