Год назад для собственных нужд я написал обертку Yandex SpeechKit на Python, она получилась настолько простая и универсальная, что грех не поделиться : ) Кстати, вот она: Yandex SpeechKit Python SDK! Для того, чтобы начать распознавать и синтезировать речь нам понадобится Python 3.6 или выше. Установить модуль можно из PyPI: Прежде чем писать код, стоит сказать пару слов про то, как устроена платформа Yandex Cloud. Первым делом, Вам нужно зайти в консоль cloud.yandex.ru c помощью акаунта яндекса или создать такой. Затем, создать платежный аккаунт, активировав пробный период. В итоге получится что-то такое: Получить идентификатор каталога можно из URL страницы каталога в консоли управления: https://console.cloud.yandex.ru/folders/b1gd129pp9ha0vnvf5g7 , где b1gd129pp9ha0vnvf5g7 — это идентификатор каталога. Он нам скоро понадобиться.  Для запроса к API SpeechKit нужно получить IAM-токен, Вам об этом беспокоиться не нужно, это уже "вшито" в библиотеку, нужно лишь передать исходные данные для создания сессии. Проще всего получить IAM-токен из OAuth-токена, Вашего аккаунта на яндексе, для этого перейдите по ссылке, нажмите Разрешить и скопируйте полученный OAuth-токен. В серьезных проектах лучше использовать авторизацию по JWT-токену или API-ключу для сервисного аккаунта. Итак, у нас есть все, чтобы программа обрела голос, осталось лишь написать несколько строчек: Вот так просто! Значение и полный список параметров можно посмотреть в документации яндекса или в документации библиотеки.  Теперь этот аудиофайл можно проиграть с помощью плеера или, например, с помощью библиотеки PyAudio. Кстати, в этом случае разумнее будет передавать объект с данными, а не сохранять их в файл, вот так: Теперь мы можем проговорить голосом яндекса что-нибудь прямо из программы, осталось научиться распознавать команды и можно прикручивать голосовое управление к чайнику, кофеварке, утюгу и пылесосу!  Яндекс предоставляет три способа распознавания: потоковое распознавание, синхронное распознавание и асинхронное распознавание. О том чем они отличаются и зачем нужны можно почитать на официальной страничке.  Если вкратце, потоковое распознавание нужно для того, чтобы получать текст прямо во время записи и стриминга аудио, и обрабатывать результаты на лету. Например, умная колонка может начать задумываться как ей ответить, в то время, как пользователь еще не закончил фразу. Пример использования потокового распознавания в гитхабе библиотеки, еще подробнее можно почитать в документации.  Асинхронное распознавание нужно для перевода в текстовый формат очень длинных аудиозаписей, оно дешевле остальных методов, но для получения результата придется немного подождать. Вот пример использования и описание класса.  Мы же будем использовать самый простой способ — синхронное распознавание. Для этого запишем сообщение в файл и сохраним в формате WAV.  Ура! Теперь можно прикрутить голосовые команды к чему угодно. Вот ссылка на полное описание метода, если Вы хотите передавать файл в формате, отличном от WAV, например.  Напоследок покажу, как с помощью PyAudio записать голос, который можно будет потом передать в спичкит для распознавания: На этом все. Надеюсь, вам пригодилась библиотека : ) Буду рад пул-реквестам! Спасибо за внимание!