Text-to-Speech
Преобразование текста в речь (TTS) превращает письменный текст в естественную речь с помощью нейросетевых акустических моделей, вокодеров и моделей аудиотокенов для ассистентов и вспомогательных технологий.
Преобразование текста в речь (TTS), также называемое синтезом речи, превращает письменный текст в звучащую речь. Система TTS определяет, как произносить каждое слово, сколько длится каждый звук и как меняются высота тона и ударение в предложении, а затем генерирует звуковую волну. В старых системах либо склеивались записанные фрагменты речи, либо звук генерировался на основе статистических моделей и был заметно искусственным. Всё изменило глубокое обучение: в 2016 году WaveNet от DeepMind генерировала необработанный звук по одному отсчёту за раз, а в 2017 году средняя оценка Google Tacotron 2 составила 4.53 из 5 против 4.58 у профессиональных записей. Современные системы говорят на многих языках разными голосами, клонируют голос по нескольким секундам аудио и следуют инструкциям о тоне речи. Они используются в программах экранного доступа, голосовых помощниках, аудиокнигах и разговорном ИИ. TTS — это обратная задача по отношению к преобразованию речи в текст.
Как работает преобразование текста в речь#
Любая система начинается с текстового фронтенда. Нормализация текста преобразует числа, даты, валюты и сокращения в слова: например, «Dr. Lee paid $3.50» превращается в «Doctor Lee paid three dollars and fifty cents». Преобразование графем в фонемы выбирает произношение, в том числе для таких слов, как «read», звучание которых зависит от времени глагола. Многие модели также предсказывают просодию — длительность, высоту тона и энергию каждого звука. Затем аудио создаётся одним из двух основных способов:
- Акустическая модель и вокодер: акустическая модель предсказывает мел-спектрограмму — компактное представление распределения энергии по частотам во времени, — а нейросетевой вокодер преобразует её в звуковую волну. Tacotron 2 предсказывала спектрограммы авторегрессионно, кадр за кадром. FastSpeech предсказывает их параллельно по длительности каждой фонемы и генерирует мел-спектрограммы в 270 раз быстрее авторегрессионного трансформера. Вокодер HiFi-GAN синтезирует звук с частотой 22.05 kHz в 167.9 раза быстрее реального времени на одном GPU V100. Voicebox и F5-TTS также неавторегрессионно предсказывают мел-спектрограммы с помощью сопоставления потоков, а затем передают их вокодеру.
- Языковые модели с аудиотокенами: VALL-E от Microsoft VALL-E представляет речь в виде дискретных токенов нейросетевого аудиокодека и генерирует их с помощью языковой модели на основе трансформера, подобно тому как LLM генерирует текст. Если дать модели трёхсекундную запись незнакомого ей говорящего, она продолжит речь его голосом.
Сквозные модели, например VITS, объединяют акустическую модель и вокодер в одну сеть, обучаемую в один этап. Мультимодальные модели, например GPT-4o, генерируют речь непосредственно в составе ответа, без отдельного этапа TTS.
Преобразование текста в речь и родственные термины#
- Преобразование речи в текст: обратная задача — расшифровка звучащей речи в текст. Голосовые помощники объединяют обе задачи в цепочку: преобразование речи в текст расшифровывает слова пользователя, большая языковая модель составляет ответ, а TTS озвучивает его.
- Клонирование голоса: TTS воспроизводит голос конкретного человека по короткому образцу или после дообучения на записях его речи. При использовании без согласия человека такая технология создаёт аудио-дипфейки.
- Преобразование голоса: принимает записанную речь и меняет личность говорящего, сохраняя слова и манеру произношения. TTS начинает работу с текста.
Примеры применения в реальных условиях#
- Доступность: программы экранного доступа озвучивают элементы интерфейса и документы для слепых и слабовидящих пользователей, а люди, потерявшие голос, набирают сообщения, которые озвучивает синтезированный голос.
- Голосовые помощники и агенты: агенты службы поддержки, автомобильные помощники и умные колонки озвучивают сгенерированные ответы. Часто первая фраза передаётся потоком, пока остальная часть ответа ещё формируется.
- Аудиокниги, дубляж и электронное обучение: издатели и авторы учебных курсов озвучивают длинные тексты единообразными голосами на многих языках.
- Навигация: пошаговые указания помогают водителям не отрывать глаз от дороги.
В сочетании с компьютерным зрением TTS устно описывает физический мир, например на вспомогательных устройствах, которые сообщают незрячему пользователю, что находится перед ним. Этот код запускает детекцию объектов с помощью Ultralytics YOLO26 на фотографии улицы и озвучивает результат через gTTS — библиотеку Python для сервиса преобразования текста в речь Google Translate:
from collections import Counter
from gtts import gTTS
from ultralytics import YOLO
# Detect objects in a street photo with YOLO26
model = YOLO("yolo26n.pt")
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]
# Count detections per class and turn them into a sentence
counts = Counter(result.names[int(c)] for c in result.boxes.cls)
sentence = "I can see " + ", ".join(f"{n} {name}" for name, n in counts.items())
# Synthesize the sentence and save it as an MP3 file
gTTS(text=sentence, lang="en").save("detections.mp3")Сохранённый файл detections.mp3 озвучивает предложение, в котором перечислены обнаруженные классы и количество объектов каждого класса. gTTS отправляет текст на серверы Google, поэтому скрипту нужно подключение к интернету.
Оценка качества речи#
- Средняя оценка слушателей (MOS): слушатели оценивают естественность речи по шкале от 1 до 5, а записи реальных голосов задают верхнюю границу оценки.
- Разборчивость: модель распознавания речи транскрибирует синтезированное аудио, а доля ошибок в словах относительно исходного текста показывает, как часто слова произносятся неправильно, пропускаются или повторяются. В режиме TTS с нулевым обучением Voicebox достиг доли ошибок в словах 1,9% против 5,9% у VALL-E.
- Сходство голосов: для клонированных голосов косинусное сходство между эмбеддингами говорящего для сгенерированного аудио и аудио-образца показывает, насколько точно совпадают голоса.
- Коэффициент реального времени (RTF): время синтеза, делённое на длительность аудио. Для F5-TTS заявлено значение RTF 0.15: 10 секунд речи генерируются за 1.5 секунды.










