Руководство по работе с 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-канал: Помни