Генеративный AI
Text-to-Speech и Voice Cloning
В 2022 году ElevenLabs клонировал голос Джо Байдена по нескольким минутам аудио - и разгорелся скандал о дипфейках. Через год у компании было 1 млн платных пользователей. Технология, которая стоила миллионы в 2018-м, теперь доступна за API-запрос.
- **Аудиокниги по требованию:** издательства генерируют озвучку книг на десятках языков без студийной записи - Storytel и аналоги тестируют массовое AI-озвучивание
- **Голосовые ассистенты:** GPT-4o voice mode использует end-to-end речевую модель с TTFB под 300 мс - это граница воспринимаемой задержки
- **Доступность:** люди с дислексией и нарушениями зрения получают доступ к любому тексту через персонализированный TTS без ожидания ручной озвучки
От WaveNet к мгновенному клонированию голоса
Современный нейросетевой синтез речи начался в 2016 году, когда команда DeepMind во главе с Aaron van den Oord представила WaveNet - авторегрессионную модель, генерирующую звук пословно по сэмплам и впервые звучащую почти как человек. В 2017 году Google показала Tacotron и Tacotron 2, перейдя от текста сразу к мел-спектрограмме плюс вокодер, что упростило весь конвейер. Прорыв в клонировании случился в 2023 году: Microsoft представила VALL-E, синтезирующую речь незнакомого голоса по трёхсекундному образцу за счёт нейроcодеков и языкового моделирования аудиотокенов. Параллельно стартап ElevenLabs (основан в 2022 году) сделал качественное клонирование голоса доступным через API.
Предварительные знания
- Трансформеры и авторегрессионная генерация
- Идея спектрограмм и аудио как последовательности
- Диффузия как один из подходов к генерации
Text-to-Speech: архитектуры
Современный TTS прошёл путь от конкатенативного синтеза (склеивание записанных фрагментов) к нейросетевому end-to-end. Tacotron 2 + WaveNet - первый прорыв 2018 года: Tacotron конвертирует текст в мел-спектрограмму, WaveNet восстанавливает аудио. FastSpeech 2 убрал авторегрессию и стал в 38 раз быстрее при сопоставимом качестве. VALL-E от Microsoft (2023) идёт дальше - это языковая модель для аудиотокенов, а не специализированный TTS.
Мел-спектрограмма - промежуточное представление: 2D-матрица (частота x время) с логарифмической шкалой частот. Вокодер (WaveNet, HiFi-GAN, Vocos) восстанавливает аудио из спектрограммы. HiFi-GAN на порядок быстрее WaveNet с сопоставимым качеством.
Почему FastSpeech 2 работает в 38 раз быстрее Tacotron 2 при схожем качестве?
Voice Cloning
Voice cloning - синтез речи с характеристиками конкретного человека по короткому аудиосэмплу. XTTS v2 клонирует голос по 3 секундам аудио. VALL-E Microsoft показал клонирование по 3-секундному сэмплу с сохранением даже акустической среды (эха, шума). ElevenLabs в 2022 году поднял Series A в 19 млн долларов именно на этой технологии - рынок озвучки оказался под давлением.
Технически клонирование работает через speaker embedding - числовой вектор, кодирующий акустические характеристики голоса. Энкодер-диктора (speaker encoder) обучается различать голоса, его выход подаётся как условие в TTS-декодер.
Что такое speaker embedding в контексте клонирования голоса?
Управление просодией
Просодия - ритм, темп, ударение и интонация речи. Без её контроля TTS звучит монотонно. Современные модели управляют просодией через: (1) явные параметры (pitch, speed, energy), (2) style tokens - векторы из референс-аудио, (3) разметку SSML (Speech Synthesis Markup Language), (4) натуральные инструкции на естественном языке - новый подход InstructTTS.
SSML - XML-подобный язык разметки для TTS. Поддерживается Google Cloud TTS, Azure, Amazon Polly. Позволяет задавать паузы, ударения, скорость и pitch на уровне отдельных слов. InstructTTS (2023) принимает текстовые описания стиля: 'говори радостно с небольшим акцентом'.
Что такое SSML и для чего он используется в TTS?
Real-time TTS и стриминг
Real-time TTS требует первый аудиочанк за 200-300 мс - иначе разговор с AI-ассистентом ощущается неестественным. Это диктует особые архитектурные решения: чанковая генерация (синтез начинается до окончания текста), streaming API, latency-оптимизированные модели. OpenAI Realtime API с GPT-4o audio даёт end-to-end voice диалог с задержкой менее 320 мс.
Метрика Time-to-First-Byte (TTFB) для TTS - время от начала запроса до первого аудиочанка. Целевые значения: под 300 мс для разговорных ботов, под 100 мс для live-транслируемых систем. Buffering strategy: накопить 0.5 с аудио перед воспроизведением - убирает джиттер.
Более качественная TTS-модель всегда лучше для voice-ассистентов
Для разговорных систем latency важнее качества - пользователи замечают паузу в 500 мс сильнее, чем небольшое снижение натуральности звучания
Психоакустические исследования показывают: в диалоге паузы свыше 300 мс воспринимаются как 'зависание'. Модель tts-1 (быстрая) часто предпочтительнее tts-1-hd (качественная) для интерактивных систем именно из-за TTFB
Что такое Time-to-First-Byte (TTFB) в контексте streaming TTS?
Ключевые идеи
- **FastSpeech 2 vs Tacotron 2:** параллельная генерация спектрограммы vs авторегрессия - 38x прирост скорости при схожем качестве
- **Клонирование голоса:** speaker embedding кодирует акустические характеристики, XTTS v2 клонирует по 3 секундам аудио
- **Latency = UX:** TTFB под 300 мс критичен для разговорных систем - streaming + буферизация позволяют воспроизводить аудио до завершения генерации
Связанные темы
TTS и voice cloning пересекаются с несколькими областями генеративного AI:
- Генерация аудио и музыки — Общие архитектуры (вокодеры, диффузия) и задача синтеза аудиосигнала из латентного пространства
- Диффузные модели — Diffusion-based TTS (VoiceBox, Matcha-TTS) применяет диффузию к мел-спектрограммам
Вопросы для размышления
- VALL-E клонирует голос по 3-секундному сэмплу с сохранением акустической среды. Какие этические рамки необходимы для deployment такой технологии - и достаточны ли текущие watermarking-решения?
- SSML позволяет задавать просодию явно, InstructTTS принимает текстовые описания. Какой подход масштабируется лучше для задач с нестандартными требованиями к интонации?
- Streaming TTS с TTFB 200 мс создаёт иллюзию мгновенного ответа. Как это меняет ожидания пользователей от AI-ассистентов - и что происходит, когда модель 'не знает ответа' но уже начала говорить?
Связанные уроки
- gai-09 — Современный TTS использует диффузионный синтез аудио
- gai-13 — Техники TTS обобщаются на музыку и аудио
- aie-24-text-to-speech — Продакшен-интеграция TTS и API
- nlp-06 — Контроль просодии - моделирование последовательностей фонем
- aie-43-realtime-ai — Потоковый TTS в реальном времени - задача задержек
- dl-01