TTS. Руководство пользователя: различия между версиями
Материал из Флора AI
Нет описания правки |
|||
| Строка 31: | Строка 31: | ||
|- | |- | ||
| colspan="2" style="width: 50%" |<small>Входные параметры отсутствуют</small> | | colspan="2" style="width: 50%" |<small>Входные параметры отсутствуют</small> | ||
| colspan="2" style="width: 50%" |<small>{ models: [model1,...,modelN] }</small> | | colspan="2" style="width: 50%" |<small><code>{ models: [model1,...,modelN] }</code></small> | ||
|- | |- | ||
! style="color:blue;width: 15%" |'''GET/tts/dictionary/export''' | ! style="color:blue;width: 15%" |'''GET/tts/dictionary/export''' | ||
! colspan="3" style="width: 85%" |Выгрузка пользовательского словаря ударений | ! colspan="3" style="width: 85%" |<small>Выгрузка пользовательского словаря ударений.</small> | ||
|- | |- | ||
| colspan="2" style="width: 50%" |<small>Входные параметры отсутствуют</small> | | colspan="2" style="width: 50%" |<small>Входные параметры отсутствуют</small> | ||
| Строка 40: | Строка 40: | ||
|- | |- | ||
! style="color:blue;width: 15%" |'''GET/tts/dictionary/get''' | ! style="color:blue;width: 15%" |'''GET/tts/dictionary/get''' | ||
! colspan="3" style="width: 85%" |Выгрузка пользовательского словаря ударений в виде json | ! colspan="3" style="width: 85%" |<small>Выгрузка пользовательского словаря ударений в виде json.</small> | ||
|- | |- | ||
| colspan="2" style="width: 50%" |<small>Входные параметры отсутствуют</small> | | colspan="2" style="width: 50%" |<small>Входные параметры отсутствуют</small> | ||
| colspan="2" style="width: 50%" |<small>[ [ "слово", "замена слова с удар+ением"],</small> | | colspan="2" style="width: 50%" |<small><code>[</code></small> <small><code>[ "слово", "замена слова с удар+ением"],</code></small> | ||
<small>[ "слово2", "замена слова2 с удар+ением"],</small> | <small><code>[ "слово2", "замена слова2 с удар+ением"],</code></small> | ||
<small>...</small> | <small><code>...</code></small> | ||
<small> | <small><code>]</code></small> | ||
|- | |- | ||
! style="color:green;width: 15%" |'''POST/tts/dictionary/import''' | ! style="color:green;width: 15%" |'''POST/tts/dictionary/import''' | ||
! colspan="3" style="width: 85%" |Загрузка пользовательского словаря ударений | ! colspan="3" style="width: 85%" |<small>Загрузка пользовательского словаря ударений. Текущий словарь будет переписан.</small> | ||
|- | |- | ||
| colspan="2" style="width: 50%" | | | colspan="2" style="width: 50%" | | ||
* <small>'''csv file''' - файл строк со словом и его интерперетацией с ударением</small> | * <small>'''csv file''' - файл строк со словом и его интерперетацией с ударением</small> | ||
| colspan="2" style="width: 50%" |<small>{</small> | | colspan="2" style="width: 50%" |<small><code>{</code></small> | ||
<small> "error": 0,</small> | <small><code> "error": 0,</code></small> | ||
<small> "message": "сообщение о статусе результата"</small> | <small><code> "message": "сообщение о статусе результата"</code></small> | ||
<small>}</small> | <small><code>}</code></small> | ||
|- | |- | ||
! style="color:green;width: 15%" |'''POST/tts/dictionary/put''' | ! style="color:green;width: 15%" |'''POST/tts/dictionary/put''' | ||
! colspan="3" style="width: 85%" |Загрузка пользовательского словаря ударений в виде json | ! colspan="3" style="width: 85%" |<small>Загрузка пользовательского словаря ударений в виде json. Текущий словарь будет переписан.</small> | ||
|- | |- | ||
| colspan="2" style="width: 50%" | | | colspan="2" style="width: 50%" | | ||
* <small>'''json''' -строка json следующего вида:</small> | * <small>'''json''' -строка json следующего вида:</small> | ||
<small>[ | <small><code>[</code></small> | ||
<small>[ " | <small><code>[ "слово", "замена слова с удар+ением" ],</code></small> | ||
<small> | <small><code>[ "слово2", "замена слова2 с удар+ением" ],</code></small> | ||
<small>... | <small><code>...</code></small> | ||
<small> | <small><code>]</code></small> | ||
| colspan="2" style="width: 50%" |<small><code>{</code></small> | |||
<small> " | <small><code> "error": 0,</code></small> | ||
<small>}</small> | <small><code> "message": "сообщение о статусе результата"</code></small> | ||
<small><code>}</code></small> | |||
|- | |- | ||
! style="color:green;width: 15%" |'''POST/tts/normalize''' | ! style="color:green;width: 15%" |'''POST/tts/normalize''' | ||
! colspan="3" style="width: 85%" |Нормализация текста - | ! colspan="3" style="width: 85%" |<small>Нормализация текста - перевод цифр в слова и расстановка ударений (ударения только в нормализованной части фразы), например "в понедельник 10.10.2025" -> "в понедельник дес+ятого октябр+я дв+е т+ысячи дв+адцать п+ятого г+ода".</small> | ||
|- | |- | ||
| colspan="2" style="width: 50%" | | | colspan="2" style="width: 50%" | | ||
* <small>'''text''' - фраза для нормалимзации</small> | * <small>'''text''' - фраза для нормалимзации</small> | ||
| style="width: 50%" |<small>{</small> | | style="width: 50%" |<small><code>{</code></small> | ||
<small> "error": 0,</small> | <small><code> "error": 0,</code></small> | ||
<small> "message": "success",</small> | <small><code> "message": "success",</code></small> | ||
<small> "text": "нормализованный текст"</small> | <small><code> "text": "нормализованный текст"</code></small> | ||
<small>}</small> | <small><code>}</code></small> | ||
| | | | ||
|-|- | |-|- | ||
! style="color:green;width: 15%" |'''POST/tts/synthesize/{id}''' | ! style="color:green;width: 15%" |'''POST/tts/synthesize/{id}''' | ||
! colspan="3" style="width: 85%" |Синтез звукового файла | ! colspan="3" style="width: 85%" |<small>Синтез звукового файла из текста для фраз большого размера - тип запроса "POST" позволяет отправку больших текстов.</small> | ||
|- | |- | ||
| colspan="2" style="width: 50%" | | | colspan="2" style="width: 50%" | | ||
| Строка 118: | Строка 120: | ||
|- | |- | ||
! style="color:blue;width: 15%" |'''GET/tts/synthesize/{id}''' | ! style="color:blue;width: 15%" |'''GET/tts/synthesize/{id}''' | ||
! colspan="3" style="width: 85%" |Синтез звукового файла | ! colspan="3" style="width: 85%" |<small>Синтез звукового файла из текста небольшого размера - для совместимости с предыдущими версиями.</small> | ||
|- | |- | ||
| colspan="2" style="width: 50%" | | | colspan="2" style="width: 50%" | | ||
Версия от 13:43, 22 октября 2024
Общее описание
Сервис предназначен для преобразования текста в речь. Входными данными для сервиса является текст, результатом работы будет аудио файл в формате *.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 со всеми методами с возможностью их проверки.
| 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/synthesize/{id} | Синтез звукового файла из текста для фраз большого размера - тип запроса "POST" позволяет отправку больших текстов. | ||
|
wav файл с синтезированой фразой | ||
| GET/tts/synthesize/{id} | Синтез звукового файла из текста небольшого размера - для совместимости с предыдущими версиями. | ||
|
wav файл с синтезированой фразой | ||