CoolFace
Modelpublic

Den4ikAI/ruBert-tiny-replicas-classifier

sourceHugging Facemitupdated 3y agoView on Hugging Face
2likes13downloads
README.md58 linesDownload Raw Back to root
1---2license: mit3language:4- ru5widget:6  - text: 'привет'7    example_title: example_18  - text: 'тебя как звать'9    example_title: example_210  - text: 'как приготовить рагу'11    example_title: example_312  - text: 'в чем смысл жизни'13    example_title: example_414  - text: 'у меня кот сбежал'15    example_title: example_516  - text: 'что такое спидометр'17    example_title: example_618  - text: 'меня артур зовут'19    example_title: example_720---21# Den4ikAI/ruBert-tiny-replicas-classifier22Описание классов:231. about_user - реагирует, когда пользователь говорит о себе. Например, "меня зовут андрей"242. question - реагирует на вопросы253. instruct - реагирует на вопросы, ответ на которые представляет собой инструкцию. Например, "как установить windows, как приготовить борщ"264. about_system - реагирует на вопросы о личности ассистента. Например, "как тебя зовут, ты кто такая"275. problem - реагирует на реплики, где пользователь рассказывает о своих проблемах. Например, "у меня болит зуб, мне проткнули колесо"286. dialogue - реагирует на диалоговые реплики. Например, "привет"29 30Примечание: модель обучалась без знаков '?'31 32# Использование33```python34import torch35from transformers import AutoTokenizer, AutoModelForSequenceClassification36 37 38device = torch.device("cuda" if torch.cuda.is_available() else "cpu")39tokenizer = AutoTokenizer.from_pretrained('Den4ikAI/ruBert-tiny-replicas-classifier')40model = AutoModelForSequenceClassification.from_pretrained('Den4ikAI/ruBert-tiny-replicas-classifier')41model.to(device)42model.eval()43 44classes = ['instruct', 'question', 'dialogue', 'problem', 'about_system', 'about_user']45 46 47def get_sentence_type(text):48    inputs = tokenizer(text, max_length=512, add_special_tokens=False, return_tensors='pt').to(device)49    with torch.no_grad():50        logits = model(**inputs).logits51        probas = list(torch.sigmoid(logits)[0].cpu().detach().numpy())52    out = classes[probas.index(max(probas))]53    return out54 55while 1:56  print(get_sentence_type(input(":> ")))57 58```