Вопросы и ответы про SpeechKit

Общие вопросы

Я могу получить логи моей работы в сервисах?

Да, вы можете запросить информацию о работе с вашими ресурсами из логов сервисов Yandex Cloud. Для этого обратитесь в техническую поддержку.

Как посмотреть статистику запросов к API

Вы можете посмотреть статистику в консоли управления в разделе SpeechKitMonitoring.

Когда вы используете сервис, баланс автоматически уменьшается. Подробнее об оплате ресурсов в Yandex Cloud.

Как увеличить квоты / Что делать при ошибке «429 Too Many Requests»

Ошибка 429 Too Many Requests означает, что превышены квоты, установленные для вашего каталога. Значения квот по умолчанию указаны в таблице.

Чтобы увеличить квоты, обратитесь в поддержку. В обращении обязательно укажите идентификатор каталога и желаемые квоты в формате «Название — Значение».

Для чего используется идентификатор каталога (folderId)

В сервисе SpeechKit folderId нужен для авторизации (проверки прав доступа) и оплаты ресурсов.

При выполнении запроса от имени сервисного аккаунта не нужно указывать folderId, потому что по умолчанию используется идентификатор каталога, в котором создан этот аккаунт. Если указать другой каталог, то сервис вернет ошибку.

При авторизации от имени пользовательского аккаунта указание идентификатора каталога folderId обязательно.

В зависимости от используемого API передавать идентификатор каталога нужно в заголовках или в теле запроса. Подробнее об аутентификации в SpeechKit см. в разделе Аутентификация в API SpeechKit.

Что делать при ошибке авторизации «401 Unauthorized»

Если в ответ на запрос сервер SpeechKit возвращает ошибку 401 Unauthorized, проверьте, есть ли у аккаунта, от имени которого вы отправляете запросы, необходимые роли. Также проверьте способ авторизации и ключ или токен для авторизации: возможно, вы получили его для одного аккаунта, а запрос выполняете от имени другого.

При использовании сервисного аккаунта не указывайте в запросах идентификатор каталога — сервис использует каталог, в котором был создан сервисный аккаунт.

На каких условиях можно использовать результаты работы сервиса SpeechKit

  1. Мы не налагаем ограничений на использование результатов работы сервиса SpeechKit. Вы можете использовать их по вашему усмотрению в рамках законодательства Российской Федерации.
  2. Вы можете работать со SpeechKit через API или веб-интерфейс Playground.

Правила использования сервиса определены в документе Условия использования сервиса Yandex SpeechKit.

Распознавание речи (STT)

Некорректные ударения и произношение

Создайте обращение и приложите примеры, чтобы разработчики могли внести корректировки к следующим релизам модели синтеза.

Плохое качество распознавания при 8кГц

Если проблема систематическая (десятки процентов от общей доли запросов), создайте обращение и приложите примеры для исследования. Чем больше примеров вы пришлете, тем вероятнее разработчики обнаружат проблему.

Форма обратной связи по качеству распознавания

При систематическом возникновении проблем обратитесь в службу поддержки с файлами и описанием.

Два канала распознались как один. Как распознать каждый канал отдельно

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

Проверьте формат вашей записи:

  • Для LPCM используйте параметр config.specification.audioChannelCount, равный 2.
  • Для MP3 и OggOpus указывать параметр не нужно, поскольку информация о количестве каналов уже содержится в файле. Файл автоматически распределится на нужное количество записей.

Распознанный текст в ответе разделяется параметром channelTag.

Можно ли распознавать 2 и более голосов с разделением на дикторов?

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

Во время распознавания текст не разделяется по голосу, но вы можете разместить голоса в разных каналах и разделить распознанный текст в ответе параметром channelTag.

Количество каналов можно указать в запросе с помощью параметра config.specification.audioChannelCount.

Файл короче чем лимит, но при распознавании возникает ошибка

Если файл многоканальный, то учитывайте суммарное время записи всех каналов. Список ограничений см. в разделе Квоты и лимиты в SpeechKit.

Ошибка Internal Server Error

Убедитесь, что формат, указываемый в запросе, и реальный формат файла соответствуют друг другу. Если ошибку исправить не получается, пришлите нам примеры аудиофайлов, которые не удается распознать.

Где найти пример для распознавания речи с микрофона?

Пример потокового распознавания речи, продиктованной на микрофон.

Можно ли использовать POST для потокового распознавания?

Потоковое распознавание использует механизм удаленного вызова процедур gRPC и не поддерживается в REST API, поэтому использовать метод POST не получится.

Обрывается / завершается сессия потокового распознавания

При использовании API v2 для потокового распознавания сервис ожидает аудиоинформацию. Если в течение 5 секунд данные не приходят, сессия завершается. Этот параметр нельзя изменить в API v2.

Потоковое распознавание работает в режиме реального времени. Вы можете отправлять на распознавание «тишину», чтобы сервис не закрыл соединение.

Мы рекомендуем использовать API v3 для потокового распознавания. Для отправки «тишины» в API v3 есть специальный тип сообщений, поэтому ее не придется имитировать в аудиозаписи самостоятельно.

Как определяется конец фразы и длительность сессии распознавания?

Конец фразы определяется по «тишине» после фразы автоматически. Подробнее об определении конца фразы читайте в разделе Определение конца фразы.

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

Что делать, если SpeechKit не дослушивает или, наоборот, слишком долго ждет окончания разговора?

Перебивание и задержки при потоковом распознавании могут быть связаны с определением конца фразы. Рекомендации для настройки EOU читайте в разделе Определение конца фразы.

Ошибка OutOfRange desc = Exceeded maximum allowed stream duration

Эта ошибка означает, что превышена максимально допустимая длительность сессии распознавания. В этом случае вам нужно заново открыть сессию.

Для потокового распознавания максимальная длительность сессии составляет 5 минут. Это техническое ограничение, обусловленное особенностями архитектуры Yandex Cloud, изменить его нельзя.

Ошибка use SA for s3 file recognition

Ошибка use SA for s3 file recognition возникает при попытке распознавания аудиофайлов из Object Storage не от имени сервисного аккаунта.

Создайте API-ключ. Сервис автоматически создаст сервисный аккаунт с ролями для работы со SpeechKit и API-ключ для него. После этого добавьте созданному сервисному аккаунту роль storage.uploader на бакет, в который вы загружаете аудиофайлы для распознавания.

Из чего складывается стоимость использования?

Примеры расчета стоимости использования, правила тарификации и актуальные цены смотрите в разделе Правила тарификации для SpeechKit.

Синтез речи (TTS)

Как озвучивать длинные тексты?

Чтобы озвучить большой текст, разбейте его на части любым удобным для вас способом. Максимальный размер запросов на синтез речи составляет 5000 символов.

Как настроить ударения и произношение?

Чтобы скорректировать произношение отдельных слов и текста в целом, воспользуйтесь разметкой SSML или TTS.

Как добавить паузу в тексте?

Чтобы поставить паузу в тексте, используйте TTS-разметку. В скобках укажите длительность паузы в миллисекундах. Пауза появится в тех местах, где вы поставите тег. Например: Начало sil<[3000]> продолжение через 3 секунды. Максимальное значение — 7 000.

Обратите внимание, что указание паузы носит лишь рекомендательный характер. Сервис SpeechKit предназначен для генерации естественной речи.

Запрос cURL не работает в Windows PowerShell

В терминале Windows PowerShell команда curl является псевдонимом системного вызова Invoke-WebRequest.

В документации Yandex Cloud примеры вызовов API даны в синтаксисе командной оболочки Bash. Вы можете запустить эти примеры без изменений в консоли Linux, терминале macOS или терминале WSL Windows 10 и выше. Чтобы запустить примеры в Windows PowerShell, потребуется их переработать самостоятельно. Подробнее о соответствии команд Bash и PowerShell и советы см. в разделе Работа с Yandex Cloud CLI и API в Microsoft Windows.

Из чего складывается стоимость синтеза?

Примеры расчета стоимости использования, правила тарификации и актуальные цены смотрите в разделе Правила тарификации для SpeechKit.

Предыдущая