API v2 для потокового распознавания

Сервис потокового распознавания располагается по адресу: stt.api.cloud.yandex.net:443

Сообщение с настройками распознавания

Параметр Описание
config object
Поле с настройками распознавания и идентификатором каталога.
config
.specification
object
Настройки распознавания.
config
.specification
.languageCode
string
Язык, для которого будет выполнено распознавание.
Допустимые значения см. в описании модели. Значение по умолчанию — ru-RU  — русский язык.
config
.specification
.model
string
Языковая модель, которую следует использовать при распознавании.
Чем точнее выбрана модель, тем лучше результат распознавания. В одном запросе можно указать только одну модель.
Допустимые значения зависят от выбранного языка. Значение параметра по умолчанию: general.
config
.specification
.profanityFilter
boolean
Фильтр ненормативной лексики.
Допустимые значения:
  • true — исключать ненормативную лексику из результатов распознавания.
  • false (по умолчанию) — не исключать ненормативную лексику.
config
.specification
.partialResults
boolean
Фильтр промежуточных результатов.
Допустимые значения:
  • true — возвращать промежуточные результаты (часть распознанного высказывания). Для промежуточных результатов final равно false.
  • false (по умолчанию) — возвращать только финальные результаты (распознанное высказывание целиком).
config
.specification
.singleUtterance
boolean
Флаг, отключающий распознавание после первой фразы.
Допустимые значения:
  • true — распознать только первую фразу, прекратить распознавание и ожидать разрыва соединения пользователем.
  • false (по умолчанию) — продолжать распознавание до окончания сессии.
config
.specification
.audioEncoding
string
Формат передаваемого аудио.
Допустимые значения:
config
.specification
.sampleRateHertz
integer (int64)
Частота дискретизации передаваемого аудио.
Этот параметр обязателен, если значение format равно LINEAR16_PCM. Допустимые значения:
  • 48000 (по умолчанию) — частота дискретизации 48 кГц;
  • 16000 — частота дискретизации 16 кГц;
  • 8000 — частота дискретизации 8 кГц.
config.
specification.
rawResults
boolean
Флаг, указывающий, как писать числа. true — писать прописью, false (по умолчанию) — писать цифрами.
folderId string

Идентификатор каталога, к которому у вас есть доступ. Требуется для аутентификации с пользовательским аккаунтом (см. раздел Аутентификация в API SpeechKit). Не используйте это поле, если вы делаете запрос от имени сервисного аккаунта.

Максимальная длина строки в символах — 50.

Экспериментальные дополнительные настройки распознавания

Для моделей потокового распознавания поддерживаются новые настройки распознавания. Они передаются через метаданные к gRPC-процедуре.

Параметр Описание
x-normalize-partials boolean
Флаг, позволяющий получать промежуточные результаты распознавания (части распознанного высказывания) в нормализованном виде: числа передаются цифрами, включен фильтр ненормативной лексики и т. д.
Допустимые значения:
  • true — возвращать нормализованный результат.
  • false (по умолчанию) — возвращать ненормализованный результат.

Сообщение с аудиофрагментом

Параметр Описание
audio_content Фрагмент аудио в виде массива байт. Аудио должно быть в формате, указанном в сообщении с настройками распознавания.

Сообщение с результатами распознавания

При успешном распознавании фрагмента речи придет сообщение, содержащее список результатов распознавания chunks[]. Каждый результат содержит поля:

  • alternatives[] - список вариантов распознанного текста. Каждый вариант содержит поля:

    • text - распознанный текст.
    • confidence - это поле сейчас не поддерживается, не используйте его.
  • final - флаг, указывающий что этот результат распознавания финальный и больше меняться не будет. Если значение false, то результат распознавания промежуточный и может измениться при распознавании следующих фрагментов речи.

  • endOfUtterance — флаг, указывающий что этот результат содержит конец фразы. Если значение true, то со следующего полученного результата начнется новая фраза.

    Примечание

    Если в настройках вы указали singleUtterance=true, то будет распознана только одна фраза за всю сессию. После сообщения, в котором endOfUtterance имеет значение true, сервер не будет распознавать следующие фразы и будет ждать, когда вы разорвете соединение.

Коды ошибок, возвращаемые сервером

Соответствия gRPC-статусов с HTTP-кодами описаны в google.rpc.Code.

Список возможных gRPC-ошибок, возвращаемых сервисом:

Код Статус Описание
3 INVALID_ARGUMENT Клиент некорректно указал параметры запроса. Детальная информация представлена в поле details.
9 RESOURCE_EXHAUSTED Клиент превысил одну из квот.
16 UNAUTHENTICATED Для выполнения операции необходима аутентификация. Проверьте IAM-токен и идентификатор каталога, которые вы передали.
13 INTERNAL Внутренняя ошибка сервера. Ошибка означает, что операция не может быть выполнена из-за технического состояния сервера. Например, из-за нехватки вычислительных ресурсов.

Примеры использования