SPR. Руководство пользователя
Материал из Флора AI
Общее описание
Сервис Short phrase recognizer предназначен для преобразования речи в текст. Принимает на вход аудиофайл в формате wav и возвращает структурированные данные в формате JSON.
Термины и определения
Short Phrase Recognizer (SPR) - сервис распознавания речи.
Модель — предварительно обученная специализированная нейронная сеть для распознавания естественной речи в аудиозаписях.
Swagger UI – интерактивная веб-консоль с кратким описанием методов АPI и возможностью выполнять запросы к сервису SPR в реальном времени
Описание методов API SPR
Запросы осуществляются по протоколу HTTP 1.1 на адрес сервера с доступным сервисом SPR. По умолчанию используется порт 6183/tcp.
Авторизация запросов не требуется. HTTP-запросы должны содержать заголовок "accept: application/json"
Ответ сервиса представляет собой JSON-документ в кодировке UTF-8 или двоичный файл. Содержимое документа зависит от результата выполнения запроса. При наличии ошибки в качестве ответа вернется переменная error=1 и описание в переменной message. Для удобства проверки методов по ссылке http://АДРЕС:6183 будет отображен интерфейс swagger со всеми методами с возможностью их проверки.
| Метод | Тип | Описание | Входные параметры | Ответ |
|---|---|---|---|---|
| /spr/ | GET | Вывод списка моделей | - | { models: [model1,...,modelN] }
|
| /spr/audio/{taskID} | GET | получение файла аудиозаписи отложенного задания | taskID - идентификатор задания | Файл аудиозаписи или { error: INT , message: DESCRIPTION }
|
| /spr/data/{id} | GET | Получение архива модели | id - идентификатор модели | ZIP-файл с моделью, либо { error: INT , message: DESCRIPTION }
|
| /spr/data/{id} | POST | Добавление модели. Может быть добавлена как из файла архива, так и переименованием существующей модели, если указана переменная from-existing-model. В данном случае происходит переименование модели на сервере from-existing-model -> id. | id - идентификатор модели
zip-model - zip-архив с файлами модели from-existing-model - название модели, которое до |
{ error: INT, message: DESCRIPTION }
|
| /spr/data/{id} | DELETE | Удаление модели | id - идентификатор модели | { error: INT, message: DESCRIPTION }
|
| /spr/queue | GET | Получение очереди отложенных заданий на распознавание | - | {
ready - готово waiting - ожидание failed - сбой |
| /spr/queue/{taskID} | DELETE | Удаление отложенных заданий на распознавание | taskID - идентификатор задания в очереди | {
"error": 0, "message": "success" } |
| /spr/stt/{id} | POST | Отправка файла на распознавание речи. Моно-файлы до 30 секунд распознаются без разбивки на фрагменты. Многоканальные файлы и файлы длиннее 30 секунд предварительно разбиваются на фрагменты по отсутствию речи. Настройка данных параметров описана в руководстве администратора. В случае отправки переменной speakers=1, дополнительно производится поиск говорящих и получение метаданных по каждому говорящему. (используется сервис sbs с предварительно обученными слепками метаданных говорящих) В случае отправки переменной punctuation=1, дополнительно вызывает метод punctuate в SMC, и расставляет знаки препинания в распознанном тексте (значение по умолчанию берётся из файлы конфигурации). normalization=1 для обратной нормализации текста. В случае использования модели big параметры punctuation и normalization игнорируются - модель всегда расставляет знаки препинания и нормализует текст. | id - идентификатор моделиdenoise - уровень шумоподавления
wav - файл для распознавания speakers - опция разделения по говорящим punctuation - опция для расставления знаков препинания normalization - опция обратной нормализации текста vad - используемый VAD preset - используемая модель для vad = neuro speaker_counter - количество докладчиков, по умолчанию - 0, автоматическое определение количества async - отложенный запуск распознавания |
в случае async=1 возвращается только taskID, для метода /spr/result.
text заполняется только для файлов менее 60 секунд. speakers, speaker, confidence (вероятность правильности определения говорящего) возвращаются только при отправке speakers=1.
|
| /spr/result/{taskID} | GET | Получение результата отложенного распознавания | taskID - идентификатор задания | Вывод по окончанию распознавания аналогичен выводу метода stt + добавлено поле status, которое содержит информацию о статусе отложенной задачи:
ready - готово waiting - ожидание not found - не найдена failed - сбой |
| /spr/waveform/{taskID} | GET | Служебный метод для отображения аудио в графическом виде, содержит пики сигнала | taskID - идентификатор задания | {
<"error": 0, "waveform": [ 0.016, .......... .......... 0.015, 0.01 ] } |