Три работы о том, как сделать речь полноценной модальностью для LLM

В сегодняшней подборке — три любопытные идеи: от генерации голосового ответа с ризонингом без лишней задержки до более компактных речевых представлений и подготовки аудиоданных для мультимодального претрейна.

STITCH: Simultaneous Thinking and Talking with Chunked Reasoning for Spoken Language Models

Статья Microsoft о том, как добавить ризонинг в speech или audio LLM, не увеличивая задержку ответа. Предлагают генерировать ризонинг-токены параллельно с аудиоответом. Модель чередует генерацию аудиотокенов и текстовых thinking-токенов: сначала выдаёт звуковой фрагмент, потом — кусок ризонинга, снова продолжает аудиоответ и так далее. В результате ризонинг интерливится с генерацией речи.

Идея строится на том, что модель генерирует аудиотокены быстрее, чем пользователь успевает их прослушать. Например, за 0,5 секунды она может нагенерить аудио, которое будет звучать примерно 2 секунды. Остаётся свободное время, в которое модель может генерировать ризонинг-токены, почти не увеличивая задержку ответа.

Авторы сравнивают несколько режимов: бейзлайн без ризонинга, который даёт минимальную задержку; режим с ризонингом перед аудиоответом, где качество выше, но latency сильно растет; и STITCH — предложенный подход, в котором ризонинг встраивается прямо в генерацию речи. STITCH сохраняет задержку почти на уровне бейзлайна, при этом даёт качество, близкое к режиму с предварительным ризонингом.

Latent Speech-Text Transformer

Аудио обычно менее компактно, чем текст. Условно, модель видит три текстовых токена в секунду, но при этом — десятки аудиотокенов. Из-за этого сложно нормально связать их семантические составляющие.

Авторы пытаются сделать аудио компактнее и понятнее для LLM. Для этого используют идею патчинга из CV: несколько аудиотокенов объединяют в один latent patch. Но делают это не фиксированным сжатием по типу «каждые четыре токена в один», а так, чтобы патч покрывал осмысленный фрагмент речи — например, слово целиком, — чтобы внутри сохранялась цельная семантика.

Для этого обучают отдельный patch encoder в несколько этапов — авторы называют это curriculum patching. Сначала границы патчей задаются довольно жёстко через force alignment: модель получает подсказку, какие аудиотокены соответствуют словам. Затем эти границы постепенно делают менее строгими, чтобы encoder учился не просто повторять разметку, а находить более гибкие группировки. На финальной стадии модель уже самостоятельно решает, как объединять аудиотокены в латентные патчи.

Data-Centric Lessons To Improve Speech-Language Pretraining

Работа от Apple о том, как добавлять аудиоданные в текстовые LLM. Предлагают interleaved-обучать модель на цепочках, где последовательности текста и аудио чередуются.

Данные чистят, делают диаризацию, режут длинные записи на небольшие чанки и стараются оставлять фрагменты с одним спикером. Экспериментируют с размером чанков и делают вывод, что маленькие работают лучше. Скорее всего, когда текст и аудио тесно переплетены, модель лучше связывает модальности между собой.

Также данные пытаются балансировать по доменам: используют отдельную модель, которая классифицирует тематики и подмешивают аудиоданные так, чтобы распределение было похоже на текстовый претрейн.

Авторы показывают улучшения даже на текстовых метриках после аудиопретрейна. Правда, модель довольно маленькая (3.8B), внутренняя и, возможно, просто недоучена.

Ярослав Ведерников Специально для Speech Info