import streamlit as st | |
from transformers import AutoModelForSequenceClassification, AutoTokenizer | |
import torch | |
# Задайте название модели | |
model_name = "demail/News_bert" # Замените на ваше имя пользователя и название модели | |
# Загрузка модели и токенизатора | |
model = AutoModelForSequenceClassification.from_pretrained(model_name) | |
tokenizer = AutoTokenizer.from_pretrained('DeepPavlov/rubert-base-cased') | |
# Интерфейс Streamlit | |
st.title("Модель Hugging Face в Streamlit") | |
input_text = st.text_area("Введите текст для классификации:") | |
if st.button("Классифицировать"): | |
inputs = tokenizer(input_text, return_tensors="pt", padding=True, truncation=True) | |
with torch.no_grad(): | |
outputs = model(**inputs) | |
# Получаем предсказанные логиты и применяем softmax для получения вероятностей | |
probs = torch.nn.functional.softmax(outputs.logits, dim=-1) | |
predicted_class = probs.argmax().item() | |
# Выводим результат | |
st.write(f"Предсказанный класс: {predicted_class}") | |
st.write(f"Вероятности классов: {probs.numpy()}") |