ym88659208ym87991671
HTTP API синхронного распознавания речи сервиса SaluteSpeech | Документация для разработчиков

API синхронного распознавания речи (HTTP)

Обновлено 20 октября 2023

Ответ выдается только после обработки всей аудиозаписи.

Максимальный размер аудио – 2 Мб, максимальная длина – одна минута.

Для многоканального аудио распознается только первый канал.

POST HTTP-запрос отправляется по адресу:

https://smartspeech.sber.ru/rest/v1/speech:recognize

Запрос

Заголовки запроса

Authorization
required
string <Bearer <Access token>>

Информация об аутентификации, переданная через OAuth 2.0.
Пример: Bearer eyJhbGciOi.cCI6IkpXVCJ9.eyJzd.1hcnRzcG.KUkw

Content-Type
required
string

Формат данных, передаваемых в теле запроса.
Возможные значения смотрите в разделе Доступные форматы аудио

{
  • "Authorization": "string",
  • "Content-Type": "string"
}

Параметры запроса

В теле запроса передается файл. Все параметры тела запроса опциональные:

language
string

Язык для распознавания речи.
Возможные значения:

  • ru-RU — русский. Значение по умолчанию.
  • en-US — английский.
  • kk-KZ — казахский. Доступно по отдельной заявке, напишите на почту SaluteSpeech@sberbank.ru
sample_rate
int32

Частота дискретизации.
Зависит от значения audio_encoding, подробнее читайте в разделе Доступные форматы аудио

enable_profanity_filter
boolean

Фильтр обсценной лексики.
Значение по умолчанию — false

channels_count
int32

Количество каналов в многоканальном аудио.
Об ограничениях читайте в разделе Доступные форматы аудио

{
  • "language": "string",
  • "sample_rate": null,
  • "enable_profanity_filter": true,
  • "channels_count": null
}

Пример запроса

curl -X POST \
-H "Authorization: Bearer {{token}}" \
-H "Content-Type: audio/x-pcm;bit=16;rate=16000" \
--data-binary @./audio.pcm \ https://smartspeech.sber.ru/rest/v1/speech:recognize

Ответ

Если запрос обработан успешно, в ответе возвращается код 200, а тело ответа содержит JSON с результатом распознавания речи.

Заголовки ответа

X-Request-ID
required
string

Уникальный ID запроса, генерируемый сервером. 36 символов.
Пример: 22345200-abe8-4f60-90c8-0d43c5f6c0f6

Content-Type
required
string

Формат тела ответа сервиса.
Пример: application/json

{
  • "X-Request-ID": "string",
  • "Content-Type": "string"
}

Параметры ответа

При успешном запросе вы получаете HTTP-код 200.

result
array

Список строк — предложений распознанного текста

emotions
array (составной тип, см. ниже — Emotions)

Список эмоций для каждой строки распознанного текста с соответствующим индексом. Например, emotions[8] соответствует result[8].
Значения эмоциональной окраски речи приходят в виде коэффициентов в диапазоне от 0 до 1, где 1 — наиболее вероятная эмоция ответа, а 0 — наименее вероятная

Emotions.negative
float

Вероятность негативной эмоциональной окраски речи — диапазон от 0 до 1

Emotions.neutral
float

Вероятность нейтральной эмоциональной окраски речи — диапазон от 0 до 1

Emotions.positive
float

Вероятность позитивной эмоциональной окраски речи — диапазон от 0 до 1

status
int32

HTTP-код.
При успешном запросе принимает значение 200

{
  • "result": [ ],
  • "emotions": null,
  • "Emotions.negative": null,
  • "Emotions.neutral": null,
  • "Emotions.positive": null,
  • "status": null
}

Пример ответа

{
"result":[
"1 2 3"
],
"emotions":[
{
"negative":0.8484364,
"neutral":0.13225403,
"positive":0.019309562
}
],
"status":200
}

Коды ошибок

КодОписание
400Ошибка в параметрах запроса.
Пример {"status": 400, "message": "Id must not be empty"}
401Не предоставлен токен для аутентификации.
Пример {"status": 401, "message": "Unauthorized"}
402Требуется оплатить сервис.
Пример {"status": 402, "message": "Payment Required"}
413Превышен максимальный размер входных данных.
Пример {"status": 413, "message": "Payload too large"}
429Слишком много запросов.
Пример {"status": 429, "message": "Too Many Requests"}
500Внутренняя ошибка сервиса.
Пример {"status": 500, "message": "Internal Server Error"}
ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.