Действия

TTS. Руководство пользователя: различия между версиями

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

Нет описания правки
Строка 61: Строка 61:
   ...
   ...
   ...
   ...
]</code>
]</code>
|-
|-
Строка 66: Строка 67:
|POST
|POST
|загрузка пользовательского словаря ударений
|загрузка пользовательского словаря ударений
|текст - строки с словом и его интерперетацией с ударением
|
| -
* '''csv file''' - файл строк со словом и его интерперетацией с ударением
|{
 
  "error": 0,
 
  "message": "сообщение о статусе результата"
 
}
|-
|-
|-
|/tts/dictionary/put
|/tts/dictionary/get
|POST
|POST
|загрузка пользовательского словаря ударений в виде json
|загрузка пользовательского словаря ударений в виде json
Строка 84: Строка 91:
   ...
   ...
   ...
   ...
]</code>
]</code>
| -
|{
 
  "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}
|/tts/synthesize/{id}
|GET
|GET
|Синтез звукового файла из текста
|Синтез звукового файла из текста небольшого размера - для совместимости с предыдущими версями
|  
|
  ID - имя модели
* '''ID''' - имя модели
  text - текст синтезируемой фразы
* '''text''' - текст синтезируемой фразы
  rate - скорость речи
  pitch - высота (тон)
* '''rate''' - скорость речи
  volume - громкость
* '''pitch''' - высота (тон)
* '''volume''' - громкость
|wav файл с синтезированой фразой
|wav файл с синтезированой фразой
|-
|-

Версия от 10:49, 14 октября 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 со всеми методами с возможностью их проверки.


Метод Тип Описание Входные параметры Ответ
/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 заменяют пользовательский словарь, а не дополняют его