Как улучшить распознавание речи
Акустические модели
В зависимости от частоты дискретизации звука загруженного аудио при распознавании будет использоваться одна из акустических моделей:
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. Также уточните в письме тип ошибок:- Удаления — многие слова не распознаны.
- Замены — многие слова распознаны неверно.
- Вставки — в результатах распознавания много лишних слов, которых не было в аудио.