[Документация Yandex Cloud](../../index.md) > [speechkit](../index.md) > Решение проблем > Все вопросы на одной странице

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

## Общие вопросы {#general}

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

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

Да, вы можете запросить информацию о работе с вашими ресурсами из логов сервисов Yandex Cloud. Для этого обратитесь в [техническую поддержку](https://kz.center.yandex.cloud/support).

#### Как посмотреть статистику запросов к API {#api-stat}

Вы можете посмотреть статистику в [консоли управления](https://kz.console.yandex.cloud) в разделе **SpeechKit** → **Monitoring**.

Когда вы используете сервис, баланс автоматически уменьшается. Подробнее об [оплате ресурсов](../../billing/payment/index.md) в Yandex Cloud.

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

Ошибка `429 Too Many Requests` означает, что превышены квоты, установленные для вашего каталога. Значения квот по умолчанию указаны в [таблице](../concepts/limits.md#speechkit-quotas).

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

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

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

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

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

В зависимости от используемого API передавать идентификатор каталога нужно в заголовках или в теле запроса. Подробнее об аутентификации в SpeechKit смотрите в разделе [Аутентификация в API SpeechKit](../concepts/auth.md).


#### Как сгенерировать IAM-токен {#iam-token}

Вы можете сгенерировать IAM-токен, например, воспользовавшись интерфейсом командной строки Yandex Cloud. Все способы получения IAM-токена описаны для [аккаунта на Яндексе](../../iam/operations/iam-token/create.md), [федеративного аккаунта](../../iam/operations/iam-token/create-for-federation.md), [локального аккаунта](../../iam/operations/iam-token/create-for-federation.md) и [сервисного аккаунта](../../iam/operations/iam-token/create-for-local.md) в документации Yandex Identity and Access Management.

Срок жизни IAM-токена — не более 12 часов, поэтому мы рекомендуем использовать его для аутентификации в сервисах Yandex Cloud как наиболее безопасный способ.


#### Что делать при ошибке авторизации «401 Unauthorized» {#auth-err}

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

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

#### На каких условиях можно использовать результаты работы сервиса SpeechKit {#result-restrictions}

1. Мы не налагаем ограничений на использование результатов работы сервиса **SpeechKit**. Вы можете использовать их по вашему усмотрению в рамках законодательства Российской Федерации.
1. Вы можете работать со SpeechKit через API или веб-интерфейс [Playground](../quickstart/index.md).

Правила использования сервиса определены в документе [Условия использования сервиса Yandex SpeechKit](https://yandex.ru/legal/cloud_terms_speechkit).

## Распознавание речи (STT) {#stt}

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


{% note info %}

В [регионе Казахстан](../../overview/concepts/region.md) доступна только версия API v3.

{% endnote %}


#### Некорректные ударения и произношение {#stt-stress-pronunciation}

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

#### Плохое качество распознавания при 8кГц {#at-8khz}

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


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

При систематическом возникновении проблем обратитесь в [службу поддержки](https://kz.center.yandex.cloud/support) с файлами и описанием.


#### Два канала распознались как один. Как распознать каждый канал отдельно {#two-channels}

Распознавание многоканальных аудиофайлов доступно только при [асинхронном распознавании](../stt/transcribation.md).

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

* Для LPCM используйте параметр [config.specification.audioChannelCount](../stt/api/transcribation-api.md#sendfile-params), равный 2.
* Для MP3 и OggOpus указывать параметр не нужно, поскольку информация о количестве каналов уже содержится в файле. Файл автоматически распределится на нужное количество записей.

Распознанный текст в ответе разделяется параметром [channelTag](../stt/api/transcribation-api.md#get-result-response).

#### Можно ли распознавать 2 и более голосов с разделением на дикторов? {#separate-speaker}

Распознавание многоканальных аудиофайлов доступно только при [асинхронном распознавании](../stt/transcribation.md).

Во время распознавания текст не разделяется по голосу, но вы можете разместить голоса в разных каналах и разделить распознанный текст в ответе параметром [channelTag](../stt/api/transcribation-api.md#get-result-response).

Количество каналов можно указать в запросе с помощью параметра [config.specification.audioChannelCount](../stt/api/transcribation-api.md#sendfile-params).

#### Файл короче чем лимит, но при распознавании возникает ошибка {#multi-channel-limits}

Если файл многоканальный, то учитывайте суммарное время записи всех каналов. Список ограничений смотрите в разделе [Квоты и лимиты в SpeechKit](../concepts/limits.md#speechkit-limits).

#### Ошибка Internal Server Error {#internal-server-err}

Убедитесь, что [формат](../stt/api/request-api.md#body_params), указываемый в запросе, и реальный формат файла соответствуют друг другу. Если ошибку исправить не получается, пришлите нам примеры аудиофайлов, которые не удается распознать.

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

[Пример потокового распознавания речи, продиктованной на микрофон](../stt/api/microphone-streaming.md).

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

Потоковое распознавание использует механизм удаленного вызова процедур [gRPC](../../glossary/index.md) и не поддерживается в [REST API](../../glossary/rest-api.md), поэтому использовать метод POST не получится.

#### Обрывается / завершается сессия потокового распознавания {#broken-session}


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

Мы рекомендуем использовать API v3 для потокового распознавания. Для отправки «тишины» в API v3 есть [специальный тип сообщений](../stt-v3/api-ref/grpc/Recognizer/recognizeStreaming.md#speechkit.stt.v3.SilenceChunk), поэтому ее не придется имитировать в аудиозаписи самостоятельно.

#### Как определяется конец фразы и длительность сессии распознавания? {#utterance-end}

Конец фразы определяется по «тишине» после фразы автоматически. Подробнее об определении конца фразы читайте в разделе [Определение конца фразы](../stt/eou.md).

[Максимальная длительность сессии](../stt/streaming.md#session-restrictions) потокового распознавания составляет 5 минут.

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

Перебивание и задержки при [потоковом распознавании](../stt/streaming.md) могут быть связаны с определением конца фразы. Рекомендации для настройки EOU читайте в разделе [Определение конца фразы](../stt/eou.md).

#### Ошибка OutOfRange desc = Exceeded maximum allowed stream duration {#duration-exceeded}

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

Для потокового распознавания [максимальная длительность сессии](../concepts/limits.md#speechkit-limits) составляет 5 минут. Это техническое ограничение, обусловленное особенностями архитектуры Yandex Cloud, изменить его нельзя.

#### Ошибка use SA for s3 file recognition {#use-sa-err}

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


[Создайте](../../iam/operations/sa/create.md) сервисный аккаунт, получите для него [IAM-токен](../../iam/operations/iam-token/create-for-sa.md) или [API-ключ](../../iam/operations/authentication/manage-api-keys.md#create-api-key) и используйте их для аутентификации в запросах к API. Также проверьте способ авторизации и ключ или токен для авторизации: возможно, вы получили его для одного аккаунта, а запрос выполняете от имени другого.




#### Из чего складывается стоимость использования? {#stt-cost}

Примеры расчета стоимости использования, правила тарификации и актуальные цены смотрите в разделе [Правила тарификации для SpeechKit](../pricing.md).

## Синтез речи (TTS) {#tts}

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

#### Как озвучивать длинные тексты? {#long-texts}

Чтобы озвучить большой текст, разбейте его на части любым удобным для вас способом. [Максимальный размер](../concepts/limits.md#speechkit-limits) запросов на синтез речи составляет 5000 символов.

#### Как настроить ударения и произношение? {#tts-stress-pronunciation}

Чтобы скорректировать произношение отдельных слов и текста в целом, воспользуйтесь разметкой [SSML](../tts/markup/ssml.md) или [TTS](../tts/markup/tts-markup.md).

#### Как добавить паузу в тексте? {#add-pause}

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

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

#### Запрос cURL не работает в Windows PowerShell {#curl-powershell}

В терминале Windows PowerShell команда `curl` является псевдонимом системного вызова [Invoke-WebRequest](https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/invoke-webrequest). 

В документации Yandex Cloud примеры вызовов API даны в синтаксисе командной оболочки Bash. Вы можете запустить эти примеры без изменений в консоли Linux, терминале macOS или терминале WSL Windows 10 и выше. Чтобы запустить примеры в Windows PowerShell, потребуется их переработать самостоятельно. Подробнее о соответствии команд Bash и PowerShell и советы смотрите в разделе [Работа с Yandex Cloud CLI и API в Microsoft Windows](../../overview/concepts/console-syntax-guide.md).

#### Из чего складывается стоимость синтеза? {#tts-cost}

Примеры расчета стоимости использования, правила тарификации и актуальные цены смотрите в разделе [Правила тарификации для SpeechKit](../pricing.md).