Как улучшить распознавание речи
Акустические модели
В зависимости от частоты дискретизации звука загруженного аудио при распознавании будет использоваться одна из акустических моделей:
general
– общая модель, для звука больше 8 кГц.callcenter
– модель, предназначенная для телефонии. Частота – 8 кГц.
Чтобы самостоятельно выбрать модель, укажите ее в параметре model
при отправке аудио на распознавание.
Разделение спикеров
Если на аудиозаписи присутствуют голоса двух и более человек, вы можете активировать функцию разделения спикеров.
Доступно только для модели general
.
Для правильной интерпретации результатов диагностики речи важно учитывать значение поля speaker_id
, которое определяет принадлежность реплики определенному участнику разговора:
- Общий результат для обоих спикеров - ответ для оригинальной сессии (к ак без включенной диаризации) —
"speaker_id": -1
. - Результат для первого спикера —
"speaker_id": 1
. - Результат для второго спикера —
"speaker_id": 0
. - Результат для N спикера —
"speaker_id": N
.
Результат, пришедший последним, имеет признак "is_final": true
.
Описание параметров и примеры смотрите в разделах Потоковое распознавание (gRPC) и Асинхронное распознавание (HTTP и gRPC).
Хинты
Распознавание речи можно сильно улучшить использованием хинтов.
Хинты — это одноразовые подсказки для сервиса распознавания речи, помогающие правильно понять речь пользователя в определенный момент времени. Например, когда приложение ожидает от пользователя конкретный ответ, этот ответ заранее придет в сервис в виде хинтов.
Подсказка работает только для следующего ответа пользователя. После использования хинтов процесс распознавания речи пользователя возвращается к ее обработке без подсказок.
Подробнее об использовании хинтов вы можете прочитать в статье Хинты.
Добавить хинты вы можете при потоковом и асинхронном распознавании.
Возможность распознавания разных языков
Возможности распознавания разных языков зависят от способа интеграции, как показано в таблице ниже:
Cпособ интеграции | Доступные языки | Пример передачи параметра |
---|---|---|
ASR HTTP async ASR HTTP sync | ru-RU (русский)en-US (английский)kk-KZ (казахский)ky-KG (киргизский)uz-UZ (узбекский) | "language":"en-US" |
ASR gRPC v2 (потоковое ASR 2х каналов) ASR gRPC v1 async | ru-RU (русский)en-US (англи йский)kk-KZ (казахский)ky-KG (киргизский)uz-UZ (узбекский) | --language en-US |
Если что-то пошло не так
- Выбирайте акустическую модель, которая подходит для вашего аудио. Например, для распознавания телефонных разговоров используйте
callcenter
, аgeneral
лучше всего распознает запросы к виртуальному ассистенту. - Убедитесь, что в запросе верно указана кодировка аудиофайла.
- Если при асинхронном распознавании пришел пустой ответ, проверьте, что вы корректно загрузили файл для распознавания. Если вы загружаете файл с компьютера, добавьте в запрос @:
@./audio.pcm
- Если вы получили ошибку
8 ResourceExhausted
при распознавании через gRPC или429 Too Many Requests
при распознавании через HTTP, значит вы превысили лимит запросов. Напишите нам на SaluteSpeech@sberbank.ru для увеличения лимита. - Если вы получили много ошибок в результатах распознавания, пожалуйста, напишите нам на SaluteSpeech@sberbank.ru. В письме укажите свой
ClientID
, приложите аудиофайл, результаты распознавания, текст запроса и request-id. Также уточните в письме тип ошибок:- Удаления — многие слова не распознаны.
- Замены — многие слова распознаны неверно.
- Вставки — в результатах распознавания много лишних слов, которых не было в аудио.