CoolFace
Modelpublic

eternalGenius/rubert_level2_v2

sourceHugging Faceupdated 6mo agoView on Hugging Face
0likes7downloads
Model Card

rubertlevel2v2

This model is a fine-tuned version of DeepPavlov/rubert-base-cased for multilabel classification of non-functional software requirements in Russian (Level 2).

It achieves the following results on the evaluation set:

  • F1 Micro: 0.9110
  • F1 Macro: 0.9110
  • F1 Weighted: 0.9120

Model description

Level 2 classifier in a cascaded requirements classification pipeline. Applied only to fragments classified as IsNonFunctional by Level 1. Classifies into 11 non-functional requirement subcategories:

LabelDescription
Availability (A)Uptime, SLA, availability percentage
Fault Tolerance (FT)Failover, recovery, redundancy
Legal (L)Regulatory compliance, standards, licenses
Look & Feel (LF)Visual style, UI design
Maintainability (MN)Code quality, documentation, tech debt
Operability (O)Monitoring, administration, observability
Performance (PE)Response time, throughput, latency
Portability (PO)Platform and OS compatibility
Scalability (SC)Load scaling, growth capacity
Security (SE)Authentication, authorization, encryption
Usability (US)UX, ease of use, learnability

The model is part of a cascaded pipeline: Audio → GigaAM-v3 (ASR) → rubert_level1_v2 (L1) → rubert_level2_v2 (L2) → Report

Per-class thresholds are stored in thresholds.json in the eternalGenius/rubert_level1_v2 repository.

Intended uses & limitations

Intended for subclassification of non-functional requirements in Russian extracted from meeting audio recordings. Should only be applied to fragments already classified as IsNonFunctional by Level 1.

Training and evaluation data

Same dataset as Level 1, filtered to IsNonFunctional=1 rows only.

Train: 772 examples | Test: 191 examples per class (11 classes, ~500 examples each).

Training procedure

Training hyperparameters

  • learning_rate: 5e-06
  • trainbatchsize: 16
  • evalbatchsize: 16
  • seed: 42
  • optimizer: AdamW with betas=(0.9, 0.999), epsilon=1e-08
  • lrschedulertype: linear
  • lrschedulerwarmup_ratio: 0.06
  • num_epochs: 15 (early stopping patience=3)
  • max_length: 96

Per-class results (test set)

ClassPrecisionRecallF1Support
Availability (A)1.0000.9390.96898
Fault Tolerance (FT)0.9810.9200.949112
Legal (L)0.8600.9250.891106
Look & Feel (LF)0.9570.9180.93898
Maintainability (MN)0.8160.8530.834109
Operability (O)0.9760.8830.92794
Performance (PE)0.8830.9580.919118
Portability (PO)0.9110.9440.927108
Scalability (SC)0.9710.9520.962105
Security (SE)0.8580.8750.867104
Usability (US)0.8310.8410.83682
micro avg0.9100.9120.9111134

Framework versions

  • Transformers 4.57.1
  • PyTorch 2.8.0+cu128
  • Datasets 4.0.0
  • Tokenizers 0.22.2