Классификация речевых режимов: от правил к гибридной архитектуре
Как мы прошли путь от 40% точности rule-based системы до 97% на SetFit + LLM арбитраже, и почему embedding-модели оказались надёжным fallback
Проблема
Речевой режим — это не тема высказывания и не его эмоциональная окраска. Это функциональное состояние речевого аппарата: строит ли человек новые смыслы (BUILD), ищет контакт (SEEK), вскрывает подавленное (UNSEAL) — или запечатывает уязвимость (SEAL), блокирует вход (LOCK), утекает энергией (DRAIN).
В онтологии Mindloom 10 режимов. Задача — определить режим каждого речевого акта с точностью, достаточной для клинического применения.
Эволюция подхода
Этап 1: Rule-based (40.8%)
Первая версия — набор keyword-детекторов и scoring-функций. Каждый режим имел свой набор маркеров. Работало на «чистых» примерах, но граничные случаи убивали точность. SEAL и VOID путались постоянно.
Этап 2: SetFit embeddings (73%)
SetFit — few-shot sentence transformer. Обучили на 2000 примерах по 10 режимам. OOD (out-of-distribution) точность выросла до 73%, но модель была уверена в неправильных ответах. R5-резольвер (confusion matrix-based) не помогал — модель не знала, когда она ошибается.
Этап 3: LLM арбитраж (93.5%)
Ключевой прорыв — structured LLM prompt с примерами граничных случаев. Claude Haiku получает top-2 кандидата от embedding модели и контекст. Три раунда prompt-tuning: 79.5% → 88.5% → 93.5%.
Этап 4: Финальная калибровка (97%)
Отдельный v4 prompt с boundary examples для каждой проблемной пары. SHIFT 28% → 100%. VOID 64% → 95%. Hard OOD-100: 87% exact, 93% top-2.
Архитектурный урок
Embedding-модель — это не «слабая версия LLM». Это другой тип знания: она видит семантическое пространство целиком, LLM видит конкретный контекст. Гибрид сильнее каждого по отдельности.
Pipeline: Keywords → SetFit → LLM (при низкой уверенности). Три слоя, каждый со своей компетенцией. Не каскад fallback'ов, а распределённая система экспертизы.