Raspberry Pi: Самоучитель по Alexa

Amazon Alexa, или просто Alexa, — это языковой помощник, разработанный компанией Amazon, который используется в умных колонках, таких как Amazon Echo или Echo Dot, например. В этих устройствах Alexa служит центральным блоком управления, который отвечает на голосовые команды пользователя. Например, можно прослушивать песни из Amazon Music или Spotify, аудиокниги из Audible, получать новости и информацию о погоде. При необходимости программное обеспечение также помогает организовать повседневные дела: можно надиктовать список покупок и дел, а также забронировать встречи в нужном календаре (включая Apple, Google и Outlook).

А поскольку речевое программное обеспечение Amazon совместимо с тысячами устройств «умного дома», таких как лампы, розетки, термостаты и многое другое, это также делает возможной автоматизацию домашнего хозяйства.

Примечание

Alexa автоматически обновляется через облако. Кроме того, Amazon регулярно снабжает речевое программное обеспечение новыми функциями, которые также известны как Amazon Alexa Skills и могут быть добавлены через магазин Alexa Skills.

Благодаря голосовому сервису Alexa Voice Service вы можете пользоваться всеми возможностями Alexa, не имея устройства Amazon, интегрировав языкового помощника в собственное устройство. Популярный Raspberry Pi оказался особенно подходящим. По сравнению с Amazon Echo и другими устройствами, он не только имеет ценовые преимущества, но и может быть адаптирован и индивидуализирован по вашему желанию.

Настройка Alexa на Raspberry Pi: Требования к AlexaPi

Raspberry Pi присутствует на рынке с 2012 года. С тех пор производители постоянно работают над дальнейшим развитием мини-компьютера и выпустили различные преемственные версии, такие как Raspberry Pi 2 и 3 и Raspberry Pi Zero. Однако не все версии одноплатного компьютера отвечают необходимым требованиям для интеграции Alexa: Для оптимального использования языкового помощника рекомендуется использовать как минимум один Raspberry Pi 2 (модель B). Поскольку Alexa требует существующего подключения к Интернету, вам также понадобится адаптер WLAN, если вы не хотите постоянно подключать свой мини-компьютер к Интернету через сетевой кабель.

Вы также можете выбрать Raspberry Pi 3, так как он имеет встроенный адаптер Wi-Fi в стандартной комплектации.

В целях защиты вашей конфиденциальности видео не будет загружаться, пока вы не нажмете на него.

Для использования Alexa на Raspberry Pi вам также понадобятся следующие аксессуары:

  • Карта памяти MicroSD объемом не менее 8 ГБ (оптимально: 16 ГБ или более)
  • USB-блок питания емкостью не менее 2 000 мАч
  • USB-микрофон
  • USB или Bluetooth колонки (если Raspberry Pi 3).

Для лучшего звучания вы можете подключить к Raspberry звуковую карту USB. Если вы не хотите устанавливать и настраивать операционную систему и Alexa полностью удаленно с компьютера (режим headless), необходимо также подключить к мини-компьютеру экран, клавиатуру и мышь.

Самоучитель AlexaPi: Как Raspberry Pi становится голосом Alexa

Перед настройкой языкового мастера необходимо сначала установить операционную систему на Raspberry или на выбранную SD-карту. Мы рекомендуем Raspbian, официально поддерживаемую Raspberry Pi Foundation, которую вы можете загрузить в виде файла образа непосредственно с сайта Foundation. Распакуйте файл на SD-карту и используйте его для загрузки Raspberry Pi и установки операционной системы. В следующем видеоролике вы найдете подробные инструкции:

В целях защиты вашей конфиденциальности видео не будет загружаться, пока вы не нажмете на него.

Если вы не хотите устанавливать операционную систему, вы также можете купить готовую SD-карту — например, в интернет-магазине «The Pi Hut» — на которой уже предустановлена Raspbian.

Как запустить Alexa после установки Raspbian, описано в следующем пошаговом руководстве.

Шаг 1: Создайте учетную запись Amazon Developer

Чтобы получить доступ к голосовому сервису Amazon Voice Service, вам необходим аккаунт разработчика Amazon. Вы можете создать его, посетив веб-сайт Amazon Developer Services and Technologies и нажав на «Sign In», а затем на «Create your account». Вы также можете войти в систему через свою обычную учетную запись Amazon, если таковая имеется.

Введите необходимую информацию для входа (имя, адрес электронной почты и пароль) и нажмите «Создать учетную запись разработчика Amazon».

После этого вы автоматически войдете в раздел для разработчиков. Однако прежде чем вы сможете использовать такие инструменты, как голосовой сервис Alexa, вам необходимо предоставить дополнительную информацию о себе, что вы можете сделать, нажав на кнопку «Завершить регистрацию» в верхней панели меню.

Шаг 2: Регистрация Raspberry Pi для голосового сервиса Alexa Voice Service

После предоставления необходимой информации и согласия с условиями использования и руководствами вы получите доступ к панели разработчика, которая позволяет просматривать и управлять различными проектами Amazon. Под заголовком «Amazon Alexa» вы найдете «Alexa Voice Service», который запускает активацию вашей Raspberry для языкового помощника:

В следующем меню нажмите на кнопку «GET STARTED», и Amazon задаст вам несколько вопросов о планируемом проекте.

В графах «Product name» и «Product ID» вы можете ввести, например, «AlexaPi» или «RaspberryPiAlexa».

В качестве «Тип продукта» выберите вариант «Устройство со встроенной Alexa». Нажмите «Нет» для вопроса об использовании приложения-компаньона.

В качестве «Категория продукта» выберите «Беспроводные колонки». В описании продукта не обязательно использовать большие слова, достаточно записи типа «Raspberry Pi Alexa Speaker».

Поскольку вы хотите управлять Raspberry Pi, как классическим динамиком Alexa, исключительно с помощью голосовой команды, отметьте «Hands-free» (голосовая команда с близкого расстояния) и «Far-field» (голосовая команда с расстояния) как запланированные типы взаимодействия.

На заключительные вопросы о коммерческом использовании или использовании протокола Raspberry для Alexa for Business и Alexa Mobile Accessory следует ответить «нет», как и на вопрос о том, предназначен ли ваш проект специально для детей.

Шаг 3: Создание профиля безопасности LWA

Следующим шагом будет создание профиля безопасности LWA (Login With Amazon) для Raspberry Pi, чтобы он мог верифицировать себя с Amazon. Поскольку у вас еще нет такого профиля, нажмите на «CREATE NEW PROFILE», а затем введите подходящее имя и краткое описание профиля:

После нажатия на «NEXT» появится еще одно меню, в котором вы укажете URL-адреса для аутентификации LWS. Введите здесь следующие адреса (и сохраните их с помощью «ADD»):

  • Разрешенные исходные адреса: localhost
  • Разрешенные URL-адреса возврата: localhost/authresponse

Затем установите флажок, чтобы дать свое согласие на соглашения о предоставлении услуг Amazon и Alexa Voice, и завершите процесс профилирования, нажав кнопку «FINISH»:

Если настройка прошла успешно, Amazon отправит вам всплывающее уведомление.

Шаг 4: Запишите информацию о продукте и клиенте

Профиль, который вы создали для своего AlexaPi, теперь доступен для выбора в любое время в разделе «Продукты». Однако прежде чем приступить к установке Alexa, необходимо вызвать и записать информацию о продукте и клиенте, необходимую для настройки языкового помощника. Для этого нажмите на профиль Raspberry в обзоре продукта и обратите внимание на то, что написано в разделе «ID клиента» и «Секрет клиента». Решающей информацией о продукте является «ID продукта», который совпадает с назначенным именем продукта (в данном руководстве «AlexaPi»).

Шаг 5: Установите Alexa на Raspberry Pi

Самый простой способ установить Alexa на Raspberry Pi — через платформу для разработчиков GitHub. Там вы найдете Alexa AVS Sample App, который можно использовать для установки языкового программного обеспечения на ваш мини-компьютер. Потребуется Git-клиент, который можно загрузить после быстрого обновления системы, если он не установлен по умолчанию. Сначала введите следующие команды в терминале Raspbian, чтобы обновить системное программное обеспечение:

sudo apt-get update

sudo apt-get upgrade -y

Затем следует проверка Git-клиента:

sudo apt-get install git

Используя клиент, загрузите AVS Sample App или клонируйте репозиторий GitHub:

sudo git clone https://github.com/jbnunn/alexa-avs-sample-app.git
Примечание

Образец приложения AVS в настоящее время находится в режиме обслуживания, поэтому он не включает последние функции Alexa. С AVS-Device-SDK доступно альтернативное решение, которое также предлагает более новые функции языкового помощника.

После переноса репозитория GitHub на ваш Raspberry Pi перенесите информацию, сохраненную в шаге 4, в установочный файл automated_install.sh. Вы можете открыть его с помощью текстового редактора по вашему выбору, например, nano.

Сохраните изменения и запустите установку Alexa на вашем Raspberry Pi с помощью следующей команды:

. automated_install.sh

Шаг 6: Первые шаги по настройке во время установки

Во время установки языкового программного обеспечения необходимо выполнить первые настройки и ответить на вопросы. Таким образом, когда вы соглашаетесь с правилами и условиями и на использование указанных сторонних приложений (если требуется), это действует с самого начала всего процесса. В следующем вопросе вы подтверждаете, что у вас уже есть учетная запись Amazon Developer, прежде чем подтвердить данные для «ID продукта», «ID клиента» и «секрета клиента» в третьем вопросе. Во всех трех случаях введите «y», а затем нажмите клавишу [Enter].

Далее следует один из основных вариантов установки — выбор желаемого языка, будь то английский, испанский, немецкий и т.д. Во время установки вы также можете определить, через какой звуковой выход колонки Raspberry Pi-Alexa следует выводить звук — через порт jack (3,5 мм) или через выход HDMI. Наконец, укажите, хотите ли вы оставить слово активации по умолчанию «Alexa» или использовать другую голосовую команду для запуска языкового мастера.

Шаг 7: Аутентификация динамиков Raspberry Pi Alexa

Для аутентификации Raspberry вам понадобится служба Alexa companion, которая представляет собой своего рода интерфейс или шлюз для соединения между мини-компьютером и серверами AVS. Чтобы воспользоваться сервисом, перейдите в соответствующий каталог через терминал, а затем запустите приложение с помощью службы пакетов npm. Для этого введите последовательно следующие команды:

cd ~/alexa-avs-sample-app/samples/companionService

npm start

Если запуск прошел успешно, в вашем терминале появится сообщение «Listening on Port 3000». Сверните окно терминала и откройте новый экземпляр командной строки.

Примечание .

Важно, чтобы вы только свернули, а не закрыли окно терминала, в котором вы запустили службу Alexa companion. Эта служба должна работать в фоновом режиме, чтобы ваш Raspberry Pi мог общаться с серверами Alexa Voice.

На следующем этапе перейдите в каталог клиента-компаньона и откройте его. Поскольку он написан на языке Java, для этого используется менеджер сборки Java Maven (mvn):

cd ~/alexa-avs-sample-app/samples/javaclient

mvn exec:exec

Через несколько мгновений после ввода команды откроется всплывающее диалоговое окно с предложением обратиться к определенному URL-адресу в браузере для регистрации Raspberry. Следуйте инструкциям, нажав на «OK». После этого ссылка будет автоматически открыта в вашем браузере по умолчанию.

Примечание

После нажатия на кнопку «OK» в Java-клиенте откроется еще одно диалоговое окно, на которое в данный момент не нужно обращать особого внимания.

Теперь в браузере вы увидите либо страницу входа в Amazon, либо, в некоторых случаях, сообщение о том, что сайт недоступен. Однако последнее не является серьезной проблемой: просто нажмите на «Advanced» в левом нижнем углу, а затем на «Proceed to localhost», чтобы перейти к окну регистрации. Войдите в систему под своей учетной записью Amazon Developer и подтвердите, что динамику Raspberry Pi Alexa разрешен доступ к вашей учетной записи Amazon.

После успешной аутентификации браузер отправляет сообщение «маркеры устройства готовы». Теперь вы можете нажать «OK» в окне Java-клиента, на которое вы до сих пор не обращали особого внимания, чтобы окончательно завершить аутентификацию.

Шаг 8: Включите распознавание слов активации

Теперь Alexa готова к использованию, и вы можете в любое время взаимодействовать с речевым программным обеспечением через клиент AVS, нажав на значок микрофона и задав нужный вам вопрос. Для того чтобы Alexa стала активной, когда вы произносите выбранное слово активации, например «Alexa», теперь необходимо запустить агент слова пробуждения. В новом окне терминала зайдите в каталог агента (KITT AI), чтобы запустить его:

cd ~/alexa-avs-sample-app/samples/wakeWordAgent/src

./wakeWordAgent -e kitt_ai

Если на терминале появится сообщение «Подключен к клиенту AVS», вы можете управлять Alexa обычным способом с помощью голосового управления.

Шаг 9: Создание скрипта автозапуска для мастера языка Alexa на Raspberry Pi

Чтобы не запускать Alexa вручную при каждом включении Raspberry Pi, создайте сценарий запуска, который будет запускаться автоматически при загрузке мини-компьютера. Для этого сначала создайте файл скрипта с помощью следующей команды терминала:

sudo nano alexa.sh

Затем вставьте в скрипт следующие строки кода:

#!/bin/bash
lxterminal -l -e "cd ~/alexa-avs-sample-app/samples/companionService && npm start;" &

sleep 10s

lxterminal -l -e "cd ~/alexa-avs-sample-app/samples/javaclient && mvn exec:exec;" &

sleep 30s

lxterminal -l -e "cd ~/alexa-avs-sample-app/samples/wakeWordAgent/src && ./wakeWordAgent -e kitt_ai;" &

Сценарий автоматизирует процесс аутентификации, описанный в шаге 7, сначала запуская службу Alexa companion, а затем Java-клиент. Затем следует отложенный запуск агента wake word, описанный в шаге 8.

Сохраните сценарий и дайте системе необходимые права доступа с помощью chmod:

sudo chmod +x alexa.sh

Теперь создайте файл автозапуска для скрипта:

sudo nano /home/pi/.config/autostart

Заполните этот файл следующим содержимым, чтобы созданный скрипт выполнялся автоматически при каждом запуске динамика Raspberry Pi-Alexa:

[Desktop Entry]
Comment=Comment
Exec=/home/pi/alexa.sh
Name=alexa.sh
Path=/home/pi/alexa.sh
Type=Shell

Оцените статью
cdelat.ru
Добавить комментарий