TTS. Руководство пользователя
Материал из Флора AI
Общее описание
Сервис предназначен для преобразования текста в речь. Входными данными для сервиса является текст, результатом работы будет аудио файл в формате *.wav.
Термины и определения
Text To Speech Server (TTS)– сервис синтеза речи.
Модель (голос) - модель нейронной сети, отвечающую за синтез спектрограммы из текста. От модели зависит каким голосом будет синтезирован текст.
Вокодер - модель нейронной сети, отвечающую за синтез аудиоданных из спектрограммы
Swagger UI – интерактивная веб-консоль с кратким описанием методов API и возможностью выполнять запросы к сервису TTS в реальном времени
Описание методов API
Запросы осуществляются по протоколу HTTP 1.1 на адрес сервера с доступным сервисом TTS. По умолчанию используется порт 6186/tcp.
Авторизация запросов не требуется. HTTP-запросы должны содержать заголовок "accept: application/json"
Ответ сервиса представляет собой JSON или текстовый документ в кодировке UTF-8, или двоичный файл.
Содержимое документа зависит от результата выполнения запроса. При наличии ошибки в качестве ответа вернется переменная error=1 и описание в переменной message. Для удобства проверки методов по ссылке http://АДРЕС:6186 будет отображен интерфейс swagger со всеми методами с возможностью их проверки.
| GET/tts/ | Вывод списка моделей (голосов синтеза). | ||
|---|---|---|---|
| Входные параметры отсутствуют | { models: [model1,...,modelN] }
| ||
| GET/tts/dictionary/export | Выгрузка пользовательского словаря ударений. | ||
| Входные параметры отсутствуют | простой текст - строки с словом и его интерперетацией с ударением | ||
| GET/tts/dictionary/get | Выгрузка пользовательского словаря ударений в виде json. | ||
| Входные параметры отсутствуют | [ [ "слово", "замена слова с удар+ением"],
| ||
| POST/tts/dictionary/import | Загрузка пользовательского словаря ударений. Текущий словарь будет переписан. | ||
|
{
| ||
| POST/tts/dictionary/put | Загрузка пользовательского словаря ударений в виде json. Текущий словарь будет переписан. | ||
|
{
| ||
| POST/tts/normalize | Нормализация текста - перевод цифр в слова и расстановка ударений (ударения только в нормализованной части фразы), например "в понедельник 10.10.2025" -> "в понедельник дес+ятого октябр+я дв+е т+ысячи дв+адцать п+ятого г+ода". | ||
|
{
| ||
| POST/tts/revoice/{revoicer} | Модификация или искажение голоса | ||
|
wav файл с модифицированным (искаженным) голосом | ||
| GET/tts/revoicers | Перечень моделей модификации или искажения голоса. Модели поставляются только в составе дистрибутива. Модель distortion - искажение голоса, делает голос неузнаваемым и речь неразборчивой. | ||
| Входные параметры отсутствуют | [ "distortion" ] | ||
| GET/tts/split | Разбивка текста на фразы. Текст из нескольких предложений разбивает на отдельные фразы. Фразы отдаёт списком. | ||
|
{ "error": 0,
"message": "success", "phrases": [ "фраза 1", "фраза 2", .... "фраза N" ] } | ||
| POST/tts/synthesize/{id} | Синтез звукового файла из текста для фраз большого размера - тип запроса "POST" позволяет отправку больших текстов.ВНИМАНИЕ аналогичный метод GET теперь отсутствует. | ||
|
wav файл с синтезированой фразой | ||