Действия

TTS. Руководство пользователя

Материал из Флора AI

Общее описание

Сервис предназначен для преобразования текста в речь. Входными данными для сервиса является текст, результатом работы будет аудио файл в формате *.wav.


Термины и определения

Text To Speech Server (TTS)– сервис синтеза речи.

Модель (голос) - модель нейронной сети, отвечающую за синтез спектрограммы из текста. От модели зависит каким голосом будет синтезирован текст.

Вокодер - модель нейронной сети, отвечающую за синтез аудиоданных из спектрограммы


Swagger UI – интерактивная веб-консоль с кратким описанием методов АPI и возможностью выполнять запросы к сервису TTS в реальном времени



Описание методов API

Запросы осуществляются по протоколу HTTP 1.1 на адрес сервера с доступным сервисом TTS. По умолчанию используется порт 6186/tcp.

Авторизация запросов не требуется. HTTP-запросы должны содержать заголовок "accept: application/json"

Ответ сервиса представляет собой JSON или текстовый документ в кодировке UTF-8, или двоичный файл.

Содержимое документа зависит от результата выполнения запроса. При наличии ошибки в качестве ответа вернется переменная error=1 и описание в переменной message. Для удобства проверки методов по ссылке http://АДРЕС:6186 будет отображен интерфейс swagger со всеми методами с возможностью их проверки.


Метод Тип Описание Входные параметры Ответ
/tts/ GET Вывод списка моделей - { models: [model1,...,modelN] }
/tts/dictionary/export GET выгрузка пользовательского словаря ударений - простой текст - строки с словом и его интерперетацией с ударением
/tts/dictionary/get GET выгрузка пользовательского словаря ударений в виде json - [
 [
   "слово",
   "замена слова с удар+ением"
 ],
 [
   "слово2",
   "замена слова2 с удар+ением"
 ],
 ...
 ...


]

/tts/dictionary/import POST загрузка пользовательского словаря ударений
  • csv file - файл строк со словом и его интерперетацией с ударением
{

  "error": 0,

  "message": "сообщение о статусе результата"

}

/tts/dictionary/put POST загрузка пользовательского словаря ударений в виде json [
 [
   "слово",
   "замена слова с удар+ением"
 ],
 [
   "слово2",
   "замена слова2 с удар+ением"
 ],
 ...
 ...


]

{

  "error": 0,

  "message": "сообщение о статусе результата"

}

/tts/normalize POST Нормализация текста - перевод цифр в слова и расстановка ударений (ударения только в нормализованной части фразы) например "в понедельник 10.10.2025" -> "в понедельник дес+ятого октябр+я дв+е т+ысячи дв+адцать п+ятого г+ода"
  • text - фраза для нормалимзации
{

  "error": 0,

  "message": "success",

  "text": "нормализованный текст"

}

POST

/tts/synthesize/{id}

POST

/tts/synthesize/{id}

Синтез звукового файла из текста для фраз большого размера - тип запроса "POST" позволяет отправку больших текстов
  • ID - имя модели
  • text - текст синтезируемой фразы
  • rate - скорость речи
  • pitch - высота (тон)
  • volume - громкость
wav файл с синтезированой фразой
/tts/synthesize/{id} GET Синтез звукового файла из текста небольшого размера - для совместимости с предыдущими версями
  • ID - имя модели
  • text - текст синтезируемой фразы
  • rate - скорость речи
  • pitch - высота (тон)
  • volume - громкость
wav файл с синтезированой фразой


Методы POST заменяют пользовательский словарь, а не дополняют его