File size: 2,329 Bytes
5eeab19 7c9006b 5eeab19 d3cf57e 5eeab19 |
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 |
import gradio as gr
from transformers import pipeline
# Initialize the pipeline
pipe = pipeline(task="ner",
model='Mykes/rubert_ner_SDDCS',
tokenizer='Mykes/rubert_ner_SDDCS',
aggregation_strategy='first')
def process_text(text):
# Convert input to lowercase as in your example
results = pipe(text.lower())
# Format the output
output = []
for entity in results:
formatted_result = f"Type: {entity['entity_group']}\nWord: {entity['word']}\nScore: {entity['score']:.4f}\n"
output.append(formatted_result)
return "\n".join(output)
# Create Gradio interface
iface = gr.Interface(
fn=process_text,
inputs=gr.Textbox(lines=3, placeholder="Enter your text here..."),
outputs=gr.Textbox(lines=10),
title="Medical NER for Russian Text",
description="This model identifies medical entities (diseases, symptoms, drugs, etc.) in Russian text.",
examples=[
["У ребенка треога и норушения сна, потеря сознания, раньше ставили паническое расстройство. по назначению психиатра принимал атаракс без эффекта."],
["У женщины треога и норушения сна, потеря сознания, раньше ставили паническое расстройство. Подскажи хорошего психотервта в районе метро Октбрьской."],
["Моя дочка 14 лет и у нее начались месячные. Хотелось бы показать ее гиекологу женщине, живущей недалеко от мет шоссе энтузиастов?"],
["У меня болит живот, слабость, высокая температура. Что мне делать?"],
["У ребенка треога и норушения сна, потеря сознания, раньше ставили паническое расстройство. по назначению психиатра принимал атаракс без эффекта. Подскажи психиатра в районе метро Октбрьской."],
]
)
# Launch the interface
iface.launch() |