Классификатор намерений для RAG на дообученном ruBERT-tiny2

Ссылка на работу
Задача: в RAG-боте каждый вопрос нужно правильно направить — искать в документах, ответить из общей модели или продолжить предыдущий диалог. Ошибка маршрутизации = лишние запросы к базе или потеря контекста. Гонять ради этого тяжёлую LLM — дорого и медленно. Что построил: классификатор намерений на дообученном ruBERT-tiny2. Определяет тип запроса (поиск по документам / свободный чат / уточнение) и отдаёт маршрут за миллисекунды на обычном CPU. Как работает: — Дообучение лёгкой модели ruBERT-tiny2 под три класса намерений на размеченном датасете. — Экспорт в ONNX: инференс ~3.7 мс на CPU, ~117 МБ — работает без GPU, дёшево в проде. — Полная воспроизводимость: пайплайн данные → обучение → метрики → экспорт задокументирован и повторяем, код и веса опубликованы. Результат: F1 = 0.90 на отложенной выборке. Маршрутизация запросов в RAG стала быстрой и предсказуемой — без обращения к большой LLM ради классификации. Стек: Python, ruBERT-tiny2, HuggingFace Transformers/Trainer, ONNX Runtime, Google Colab.
https://huggingface.co/Gleckus/intent-classifier-rubert-tiny2