TTS. Руководство пользователя: различия между версиями
Материал из Флора AI
KorolkovS (обсуждение | вклад) Нет описания правки |
KorolkovS (обсуждение | вклад) Нет описания правки |
||
| (не показаны 3 промежуточные версии этого же участника) | |||
| Строка 31: | Строка 31: | ||
| colspan="2" style="width: 50%" | | | colspan="2" style="width: 50%" | | ||
*<small>'''path''' - путь к аудиофайлу относительно папки /opt/tts/cache/</small> | *<small>'''path''' - путь к аудиофайлу относительно папки /opt/tts/cache/</small> | ||
| style="width: 50%" |<small> | | style="width: 50%" |<small>аудиофайл</small> | ||
|- | |- | ||
! style="color:blue;width: 15%" |'''GET/tts/dictionary/export''' | ! style="color:blue;width: 15%" |'''GET/tts/dictionary/export''' | ||
| Строка 37: | Строка 37: | ||
|- | |- | ||
| colspan="2" style="width: 50%" |<small>Входные параметры отсутствуют</small> | | colspan="2" style="width: 50%" |<small>Входные параметры отсутствуют</small> | ||
| style="width: 50%" |<small>простой текст - строки с словом и его | | style="width: 50%" |<small>простой текст - строки с словом и его интерпретацией с ударением</small> | ||
|- | |- | ||
! style="color:blue;width: 15%" |'''GET/tts/dictionary/get''' | ! style="color:blue;width: 15%" |'''GET/tts/dictionary/get''' | ||
| Строка 86: | Строка 86: | ||
<small><code>}</code></small> | <small><code>}</code></small> | ||
|- | |||
! style="color:blue;width: 15%" |'''GET/tts/models''' | |||
! colspan="2" style="width: 85%" |<small>Перечень моделей синтеза речи. Модели поставляются только в составе дистрибутива.</small> | |||
|- | |||
| colspan="2" style="width: 50%" |<small>Входные параметры отсутствуют</small> | |||
| style="width: 50%" | | |||
<small><code>{"models": ["Аля","Жанна","Дима","Елена"]}</code></small> | |||
|- | |- | ||
! style="color:green;width: 15%" |'''POST/tts/normalize''' | ! style="color:green;width: 15%" |'''POST/tts/normalize''' | ||
| Строка 99: | Строка 106: | ||
<small><code> "text": "нормализованный текст"</code></small> | <small><code> "text": "нормализованный текст"</code></small> | ||
<small><code>}</code></small> | |||
|- | |||
! style="color:green;width: 15%" |'''POST/tts/phonemes''' | |||
! colspan="2" style="width: 85%" |<small>Конвертация текста в последовательность фонем.</small> | |||
|- | |||
| colspan="2" style="width: 50%" | | |||
* <small>'''text''' — фраза для фонемизации.</small> | |||
| style="width: 50%" |<small><code>{</code></small> | |||
<small><code> "error": 0,</code></small> | |||
<small><code> "message": "success",</code></small> | |||
<small><code> "text": "последовательность фонем"</code></small> | |||
<small><code>}</code></small> | <small><code>}</code></small> | ||
Текущая версия от 10:20, 14 января 2026
Общее описание
Сервис предназначен для преобразования текста в речь. Входными данными для сервиса является текст, результатом работы будет аудиофайл.
Термины и определения
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/cache/{path} | Выгрузка аудиофайла из кэша. | |
|---|---|---|
|
аудиофайл | |
| GET/tts/dictionary/export | Выгрузка пользовательского словаря ударений. | |
| Входные параметры отсутствуют | простой текст - строки с словом и его интерпретацией с ударением | |
| GET/tts/dictionary/get | Выгрузка пользовательского словаря ударений в виде json. | |
| Входные параметры отсутствуют | [ [ "слово", "замена слова с удар+ением"],
| |
| POST/tts/dictionary/import | Загрузка пользовательского словаря ударений. Текущий словарь будет переписан. | |
|
{
| |
| POST/tts/dictionary/put | Загрузка пользовательского словаря ударений в виде json. Текущий словарь будет переписан. | |
|
{
| |
| GET/tts/models | Перечень моделей синтеза речи. Модели поставляются только в составе дистрибутива. | |
| Входные параметры отсутствуют |
| |
| POST/tts/normalize | Нормализация текста — перевод цифр в слова и расстановка ударений (ударения только в нормализованной части фразы), например «в понедельник 10.10.2025» -> «в понедельник дес+ятого октябр+я две т+ысячи дв+адцать п+ятого г+ода». | |
|
{
| |
| POST/tts/phonemes | Конвертация текста в последовательность фонем. | |
|
{
| |
| 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 теперь отсутствует. | |
|
файл с синтезированой фразой | |
| GET/license/check | Проверка лицензии | |
| Входные параметры отсутствуют | Пример неограниченной лицензии:
Пример ограниченной лицензии:
|
|