Multi-Task Toxicity RU

Модель для классификации токсичных комментариев на русском языке. Модель использует архитектуру RuBERT-tiny2 с тремя независимыми «головами» классификации для одновременного выявления разных типов нарушений.

Метрики производительности

Модель была обучена и оптимизирована по порогам для каждого класса:

Класс Оптимальный порог Precision Recall F1-score
Ненормативная лексика 0.75 0.9402 0.9495 0.9448
Угрозы 0.80 0.8031 0.8421 0.8221
Запросы на нарушение закона 0.90 0.9242 0.9531 0.9385

Быстрый старт

import torch
from transformers import AutoTokenizer, AutoModel

REPO_ID = "pogram1st/multitask-toxicity-comments"  
DEVICE = torch.device("cuda" if torch.cuda.is_available() else "cpu")

tokenizer = AutoTokenizer.from_pretrained(REPO_ID)
model = AutoModel.from_pretrained(REPO_ID, trust_remote_code=True)

model.to(DEVICE)
model.eval()

def predict_toxicity(text):
    encoding = tokenizer(
        text,
        max_length=64,
        padding='max_length',
        truncation=True,
        return_tensors='pt'
    ).to(DEVICE)
    
    with torch.no_grad():
        out_prof, out_threat, out_ill = model(encoding['input_ids'], encoding['attention_mask'])
        
    prob_prof = torch.sigmoid(out_prof).item()
    prob_threat = torch.sigmoid(out_threat).item()
    prob_ill = torch.sigmoid(out_ill).item()
    
    print(f"Текст: '{text}'")
    print(f"Ненормативная лексика: {prob_prof:.0%} -> {'Запрещенный контент' if prob_prof >= 0.75 else 'Ок'}")
    print(f"Угроза: {prob_threat:.0%} -> {'Запрещенный контент' if prob_threat >= 0.80 else 'Ок'}")
    print(f"Запрос на нарушение закона: {prob_ill:.0%} -> {'Запрещенный контент' if prob_ill >= 0.90 else 'Ок'}\n")

predict_toxicity("Это приятно знать, но тем не менее.")
Downloads last month
56
Safetensors
Model size
29.2M params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for pogram1st/multitask-toxicity-comments

Finetuned
(81)
this model

Dataset used to train pogram1st/multitask-toxicity-comments