Идея дистилляции — переложить знания и навыки из дорогой модели в более компактную. Это особенно важно для боевой эксплуатации, где важны скорость, стоимость и иногда работа без интернета.
Как работает
- Берётся большая обученная модель-учитель.
- Готовится набор запросов, желательно близких к реальной задаче.
- Учитель отвечает на каждый запрос, иногда несколькими вариантами.
- Маленькая модель-ученик обучается воспроизводить ответы и распределения вероятностей учителя.
Что получается
- Модель в 5–50 раз меньше по числу параметров.
- Заметно дешевле и быстрее в эксплуатации.
- На целевых задачах качество близкое к учителю; на задачах за пределами обучающего набора часто заметно хуже.
- Нужна модель для массовой эксплуатации с низкой стоимостью запроса
- Хотите запускать модель на собственной инфраструктуре или на устройстве клиента
- Задача узкая и хорошо описывается набором запросов
- Требуется универсальный ассистент по любым темам — дистиллированная модель обычно проигрывает учителю на широком наборе задач
- Учитель и ученик принадлежат разным поставщикам и лицензии не позволяют такой перенос
Команда поддержки запускает чат-бота, который обрабатывает тысячи запросов в день. Использовать самую сильную модель напрямую слишком дорого. Они собирают набор реальных вопросов клиентов, прогоняют их через большую модель и затем обучают маленькую модель повторять её ответы. На конкретной задаче поддержки качество получается почти такое же, а стоимость одного диалога падает в десять раз.
Качество дистилляции напрямую зависит от того, насколько хорошо набор обучающих запросов покрывает реальные сценарии. Если в работе начинают появляться новые типы вопросов, дистиллированная модель быстро деградирует. Поэтому такие модели имеет смысл регулярно переобучать на свежих данных.