home_work / app.py
arkmartov's picture
Update app.py
8cb1d65
raw
history blame
1.5 kB
import streamlit as st
import torch
@st.cache
def Model():
from transformers import BertTokenizer, BertForSequenceClassification
model_name = "google/bert_uncased_L-4_H-256_A-4"
tokenizer = BertTokenizer.from_pretrained(model_name)
model = BertForSequenceClassification.from_pretrained(model_name, num_labels=8)
bn_state_dict = torch.load('model_w.pt')
model.load_state_dict(bn_state_dict)
return model
st.title('Классификация статьи по названию и описанию')
# ^-- можно показывать пользователю текст, картинки, ограниченное подмножество html - всё как в jupyter
title = st.text_area("Введите название статьи:")
abstract = st.text_area("Введите описание статьи:")
# ^-- показать текстовое поле. В поле text лежит строка, которая находится там в данный момент
from transformers import pipeline
pipe = pipeline("ner", "Davlan/distilbert-base-multilingual-cased-ner-hrl")
raw_predictions = pipe(title)
# тут уже знакомый вам код с huggingface.transformers -- его можно заменить на что угодно от fairseq до catboost
st.markdown(f"{raw_predictions}")
model = Model()
st.markdown(f"{model}")
# выводим результаты модели в текстовое поле, на потеху пользователю