LoginSignup
8
4

More than 5 years have passed since last update.

ハンドメイド Alexa Festival! Serverless、IoT + Voice への誘い。ラズパイ + Alexa Voice Servce(Python)

Last updated at Posted at 2016-12-18

はじめに

この資料は、Serverless Advent Callender 2016 の 19日目の投稿です。

CheapなEchoでAlexa祭りをします。

IMAGE ALT TEXT HERE

用語

Alexa
Amazon が提供する音声認識プラットフォームです。

AVS(Alexa Voice Service)
Alexa の音声認識エンジンです。Amazon Echoに入っています。

Alexa の構成要素はふたつ。

  • AVS(Alexa Voice Service)
    Alexaの音声認識エンジンです。デバイス上で録音した音声をHTTPベースでやりとりします。

  • ASK(Alexa Skills Kit)
    独自の会話パターンを開発できるキットです。AWS Lambda が推奨されており、Serverless に開発ができます。
    昨日の記事はASKの記事でしたので参考に。
    Advent Callender 18日目

背景

この記事を書く背景には、未だに Amazon Echo の技適が通っておらず、日本では購入できない、という悲しい現実があります。Echosim.io のようにWebベースのテストツールなんてのもありますが、Echoが来ていないなら自作して、Serveless な スキル開発を楽しもうじゃないですか?

概要

  • デバイスはラズパイ3を使います。
  • AVSのインプリメントに使う言語はPython(ライズパイにプリイン)です。
  • Alexa のWake word("Alexa")に反応させます。

材料(ハードウェア)

材料(ライブラリ)

下準備

Amazon の公式リポジトリにRaspberryPI用のサンプルがあります。Let's get startedのSTEP3まで完了させます。

デバイスとAVSを接続するプロファイル(ProductID、ClientID、ClientSecret)が得られます。

ハードウェアのセットアップ

Raspberry PI 3 をセットアップします。
Installing operating system image

ソフトウェアのセットアップ

hyper

$ pip install hyper

snowboy

$ sudo apt-get install swig3.0 python-pyaudio python3-pyaudio sox pip install pyaudio
$ sudo apt-get install libatlas-base-dev
$ cd/swig
$ make

上のように自分でインストールしてもよいですが、プリコンパイルしたモジュールがあるので、そちらをラズパイにコピーするのが楽です。
Precompiled module

AVSの導入

セットアップが完了すると、Developper.amazon.com で取得したセキュリティプロファイルの記載されたcreds.pyが生成されます。

スクリーンショット 2016-12-18 11.07.53.png

起動

$ python wakeword_detector.py

デーモンとして登録すれば、起動時にwakeword待ち状態にすることも可能です。

デモ

さいごに

発音の悪さと中のマイクの位置で認識率悪すぎるのは、本当にすみませんm(_ _)m

8
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
4