Как начать работать cо SpeechKit

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

В этом разделе вы научитесь использовать SpeechKit API. Сначала вы создадите аудиофайл из текста, а потом попробуете его распознать.

Перед началом

Чтобы воспользоваться примерами, установите cURL и получите данные вашего аккаунта для авторизации:

  1. На странице биллинга убедитесь, что платежный аккаунт находится в статусе ACTIVE или TRIAL_ACTIVE. Если платежного аккаунта нет, создайте его.
  2. Получите IAM-токен, необходимый для аутентификации.
  3. Получите идентификатор любого каталога, на который у вашего аккаунта есть роль editor или выше.
  1. Выберите способ аутентификации:

    • Получите IAM-токен, используемый в примерах.

    • Создайте API-ключ. Передайте API-ключ в заголовке Authorization в следующем формате:

      Authorization: Api-Key <API-ключ>
      
  2. Назначьте сервисному аккаунту роль editor или выше на каталог, в котором он был создан.

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

  1. Аутентифицируйтесь в CLI от имени федеративного пользователя.

  2. С помощью CLI получите IAM-токен, необходимый для аутентификации:

    $ yc iam create-token
    
  3. Получите идентификатор любого каталога, на который у вашего аккаунта есть роль editor или выше.

Преобразование текста в речь

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

Сервис поддерживает следующие языки:

  • ru-RU - русский;
  • en-US — английский;
  • tr-TR — турецкий.

Передайте текст в поле text в теле запроса, используя URL-кодирование. В параметре lang укажите язык текста, а в folderId — идентификатор каталога, полученный перед началом. Ответ запишите в файл:

$ export TEXT="Hello world!"
$ export FOLDER_ID=b1gvmob95yysaplct532
$ export IAM_TOKEN=CggaATEVAgA...
$ curl -X POST \
     -H "Authorization: Bearer ${IAM_TOKEN}" \
     --data-urlencode "text=Hello World" \
     -d "lang=en-US&folderId=${FOLDER_ID}" \
     "https://tts.api.cloud.yandex.net/speech/v1/tts:synthesize" > speech.ogg

Синтезированная речь будет записана в файл speech.ogg в директории, из которой вы выполнили эту команду.

По умолчанию аудио создается в формате OggOpus. Прослушать созданный файл можно в браузере, например в Яндекс.Браузере или Mozilla Firefox.

Подробнее про формат запроса на синтез речи.

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

Сервис позволяет распознавать речь тремя различными способами. В этом разделе используется распознавание коротких аудиозаписей.

Передайте двоичное содержимое аудиофайла в теле запроса. В Query-параметрах укажите язык распознавания (lang) и идентификатор каталога (folderId). В ответе сервис вернет распознанный текст:

$ curl -X POST \
     -H "Authorization: Bearer ${IAM_TOKEN}" \
     --data-binary "@speech.ogg" \
     "https://stt.api.cloud.yandex.net/speech/v1/stt:recognize?folderId=${FOLDER_ID}"

{"result":"Hello world"}

Что дальше