OniXinO
commited on
Commit
·
a96c72f
1
Parent(s):
954ba49
init
Browse files- app.py +34 -0
- requirements.txt +2 -0
app.py
ADDED
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import streamlit as st
|
2 |
+
import spacy
|
3 |
+
|
4 |
+
# Завантаження моделі
|
5 |
+
try:
|
6 |
+
nlp = spacy.load("uk_core_news_sm")
|
7 |
+
except OSError:
|
8 |
+
st.text("Завантаження моделі...")
|
9 |
+
spacy.cli.download("uk_core_news_sm")
|
10 |
+
nlp = spacy.load("uk_core_news_sm")
|
11 |
+
st.text("Модель завантажена!")
|
12 |
+
|
13 |
+
def process_text(text):
|
14 |
+
doc = nlp(text)
|
15 |
+
results = []
|
16 |
+
for ent in doc.ents:
|
17 |
+
results.append({"text": ent.text, "label": ent.label_})
|
18 |
+
return results
|
19 |
+
|
20 |
+
st.title("Розпізнавання іменованих сутностей (NER) українською мовою")
|
21 |
+
|
22 |
+
text_input = st.text_area("Введіть текст для обробки:")
|
23 |
+
|
24 |
+
if st.button("Обробка тексту"):
|
25 |
+
if text_input:
|
26 |
+
results = process_text(text_input)
|
27 |
+
if results:
|
28 |
+
st.write("Результати:")
|
29 |
+
for result in results:
|
30 |
+
st.write(f"- {result['text']} ({result['label']})")
|
31 |
+
else:
|
32 |
+
st.write("Іменовані сутності не знайдено.")
|
33 |
+
else:
|
34 |
+
st.write("Будь ласка, введіть текст.")
|
requirements.txt
ADDED
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
1 |
+
streamlit
|
2 |
+
spacy
|