Сейчас загружается
×

Руководство по работе с Yandex SpeechKit для создания голосовых приложений

Руководство по работе с Yandex SpeechKit для создания голосовых приложений

Руководство по работе с Yandex SpeechKit для создания голосовых приложений

Пирожочки, если вы хотите создать современные и интерактивные голосовые приложения, то Yandex SpeechKit – это именно то, что вам нужно. Этот мощный сервис от Яндекса позволяет осуществлять как распознавание речи, так и синтез речи. Давайте углубимся в детали и посмотрим, как вы можете использовать Yandex SpeechKit для создания своих голосовых приложений.

Настройка и активация аккаунта

Перед тем как приступить к работе с Yandex SpeechKit, вам необходимо активировать свой аккаунт на Яндекс.Облако.

Шаг 1: Создание аккаунта

Если у вас еще нет почты на Яндексе, самое время завести ее. Я сам долго мучился с поисками надежного почтового сервиса, и решение завести Яндекс-почту оказалось одним из лучших в моем опыте. Поэтому перед вами стоит обязательный шаг — создать подтвержденный аккаунт.

Шаг 2: Активация пробного периода

Перейдите на сайт cloud.yandex.ru и активируйте пробный период пользования сервисом. Вам нужно будет привязать платежную карту, но не переживайте, это даст вам доступ к гранту на 60 дней — отличный шанс освоить инструмент и протестировать все его возможности!

Получение авторизационных данных

Чтобы использовать Yandex SpeechKit, вам необходимы авторизационные данные.

Шаг 1: Получение IAM-токена

Войдите в свой аккаунт на Яндексе или Яндекс.Коннекте и получите OAuth-токен в сервисе Яндекс.OAuth. Для этого перейдите по соответствующей ссылке, жмите "Разрешить" и скопируйте полученный токен. Уверен, вам понравится, как всё просто!

Шаг 2: Получение идентификатора каталога

Выполните шаги по авторизации в API для получения идентификатора каталога. Важно, чтобы у вас всё было правильно настроено, иначе не удастся подключить приложение.

Настройка Yandex SpeechKit

После получения авторизационных данных, приступайте к настройке Yandex SpeechKit.

Шаг 1: Ввод авторизационных данных

Перейдите в раздел "Администрирование" вашей системы и введите полученные значения OAuth-токена и идентификатора каталога в соответствующие поля. Нажмите "Сохранить". Могу сказать, что иногда именно такие простые действия очень важны!

Шаг 2: Настройка IVR-сценариев

Настройте IVR-сценарии, используя компонент "Распознавание речи" от Yandex SpeechKit. Это позволит вам, как разработчику, распознавать речь как из заранее записанного файла, так и непосредственно из линии абонента. Я помню, когда на одном из проектов нам это очень помогло!

Использование API Yandex SpeechKit

Yandex SpeechKit позволяет работать с мощным API для распознавания и синтеза речи.

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

Чтобы синтезировать речь, отправляйте HTTP POST-запросы на URL https://tts.api.cloud.yandex.net/speech/v1/tts:synthesize. В запросе укажите параметры, такие как язык текста, эмоциональный окрас голоса и голос, которым будет озвучен текст.

$ curl -X POST \
-H "Authorization: Bearer ${IAM_TOKEN}" \
-o speech.raw \
--data-urlencode "text=Привет, чувак! Назови-ка мне свои имя и фамилию?" \
-d "lang=ru-RU&folderId=${FOLDER_ID}&format=lpcm&sampleRateHertz=48000&emotion=good&voice=ermil" \
https://tts.api.cloud.yandex.net/speech/v1/tts:synthesize

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

Для распознавания речи отправляйте запросы на URL https://stt.api.cloud.yandex.net/speech/v1/stt:recognize. В запросе передавайте аудиофайл в бинарном виде и необходимые параметры.

import requests

URL = "https://stt.api.cloud.yandex.net/speech/v1/stt:recognize"
IAM_TOKEN = "CggaATEVAgA..."
ID_FOLDER = "b1gdt133kktmm89lr51l"

with open("name_guest.ogg", "rb") as f:
    name_guest = f.read()

response = requests.post(URL, headers={"Authorization": f"Bearer {IAM_TOKEN}"}, data=name_guest, params={"lang": "ru-RU", "folderId": ID_FOLDER})

Примеры использования

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

Автоматическое обслуживание клиентов

Создайте системы автоматического обслуживания клиентов, используя голосовое управление IVR-сценариями. Это помогает автоматизировать обработку входящих звонков и упрощает взаимодействие клиента с системой. Я не раз сталкивался с тем, что такие решения реально выручают!

Голосовые ассистенты

Попробуйте создать виртуальных дворецких или голосовых ассистентов, которые могут встречать гостей и выполнять различные задачи по голосовым командам. Это можно реализовать с помощью Python и API Yandex SpeechKit. У меня есть знакомый, который создал своего ассистента, и его успехи впечатляют!

Настройка генерации речи

Чтобы сделать голос вашего приложения более естественным, можно использовать TTS-разметку.

Использование TTS-разметки

Оформите текст с применением TTS-разметки, размещая ее в свойстве response.tts. Это позволяет отмечать ударения, разделять слова, менять написание слов и добавлять паузы.

"response": {
  "text": "Добро пожаловать в Атлас.",
  "tts": "Добро пожаловать в +атлас."
}

Конвертация форматов

После получения аудиофайлов от Yandex SpeechKit, может потребоваться их конвертация в другие форматы.

Конвертация lpcm в WAV

Используйте утилиту SoX для конвертации аудиофайлов из формата lpcm в WAV:

$ brew install sox
$ sox -r 48000 -b 16 -e signed-integer -c 1 speech.raw speech.wav

Заключение

Yandex SpeechKit – это мощный инструмент для создания современных голосовых приложений. С его помощью вы можете реализовать как распознавание речи, так и синтез речи, что делает его незаменимым для разработчиков. Не забывайте активировать свой аккаунт на Яндекс.Облако, получить необходимые авторизационные данные и настроить API для работы с вашим приложением.

Хотите быть в курсе последних новостей о нейросетях и автоматизации? Подпишитесь на наш Telegram-канал: Помни

Интересное