--- language: - ru pipeline_tag: text-classification tags: - toxicity - binary-classification base_model: ai-forever/ru-en-RoSBERTa datasets: - Izbebe/ru-toxicity-support-binary --- # Бинарный классификатор токсичности русскоязычных текстов Модель для детекции токсичных сообщений в переписке службы поддержки (учебный проект). Дообучена на базе `ai-forever/ru-en-RoSBERTa`: энкодер заморожен, обучалась только классификационная голова. ## Классы - `0` — нетоксичный текст - `1` — токсичный текст (грубость, оскорбления, сарказм, пассивная агрессия) ## Метрики на тестовой выборке | Метрика | Значение | |---------|----------| | Accuracy | 0.9610 | | Precision | 0.9646 | | Recall | 0.9571 | | F1 | 0.9608 | | ROC AUC | 0.9948 | | MCC | 0.9220 | ## Пример использования ```python import torch from transformers import AutoTokenizer, AutoModelForSequenceClassification tokenizer = AutoTokenizer.from_pretrained("Izbebe/ru-toxicity-classifier-rosberta") model = AutoModelForSequenceClassification.from_pretrained("Izbebe/ru-toxicity-classifier-rosberta") text = "Вы что, совсем тупой? Я же уже объяснял!" inputs = tokenizer(text, return_tensors="pt", truncation=True, max_length=128) with torch.no_grad(): probs = torch.softmax(model(**inputs).logits, dim=-1) print(f"Вероятность токсичности: {probs[0, 1].item():.3f}") ``` ## Обучающие данные Датасет: [Izbebe/ru-toxicity-support-binary](https://huggingface.co/datasets/Izbebe/ru-toxicity-support-binary)