Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| from transformers import pipeline | |
| ner_pipe = pipeline( | |
| 'ner', | |
| model='Gherman/bert-base-NER-Russian', | |
| aggregation_strategy="simple" | |
| ) | |
| def perform_ner(text: str) -> str: | |
| text = text.strip() | |
| text = tezt.translate() | |
| if not text: | |
| return 'Введите текст для анализа NER...' | |
| results = ner_pipe(text) | |
| if not results: | |
| return 'Именованные сущности не найдены.' | |
| output_lines = [] | |
| for result in results: | |
| line = ( | |
| f"Слово: {result['word']}, " | |
| f"Сущность: {result['entity_group']}, " | |
| f"Вероятность: {result['score']:.2%}" | |
| ) | |
| output_lines.append(line) | |
| return '\n'.join(output_lines) | |
| demo = gr.Interface( | |
| fn=perform_ner, | |
| inputs=gr.Textbox( | |
| lines=5, | |
| label='Введите текст для анализа NER...', | |
| placeholder='Например, "Меня зовут Сергей Иванович, я работаю в компании Google в Москве."' | |
| ), | |
| outputs=gr.Textbox( | |
| lines = 5, | |
| label='Результат анализа NER'), | |
| title='Анализ именованных сущностей (NER) RuBERT', | |
| description=( | |
| 'Приложение для извлечения именованных сущностей (Named Entity Recognition) из русского текста. ' | |
| 'Используется модель: Gherman/bert-base-NER-Russian.' | |
| ), | |
| ) | |
| if __name__ == '__main__': | |
| demo.launch() |