Azure Percept Audioでカスタムコマンドを試す

この記事では、Azure Percept Audioでカスタマイズしたキーワード・コマンドを使用する方法を紹介します。カスタムコマンドを作成することで、任意の指示を与え認識されることができるようになります。

※先にAzure Percept Audioで音声アシスタント作成の記事を読んでいただくと、より理解しやすい内容になっています。

使用リソース

  • Azure Percept DK
  • Azure Percept Audio
  • Azure IoT Hub
  • Azure Speech Services
  • Language Understanding(LUIS)

概要

今回は以下のようなカスタムキーワード、カスタムコマンドを作成します。

カスタムキーワード:Custom カスタムコマンド:This is a custom command.

シナリオ概要

カスタムキーワードの作成

まずは、①のカスタムキーワード"Custom"を作成します。

カスタムキーワードの作成は、Azure Percept StudioまたはSpeech Studioから行うことが可能です。

Azure Percept Studio

キーワードに設定したいワードを入力し、利用している音声リソースと言語を選択します。言語は現在英語のみ選択可能です。入力後、作成を選択するとトレーニングを開始します。

カスタムキーワード一覧

トレーニングが完了すると状態が、Succeededになり"割り当て"が可能になります。トレーニング完了まで、最大30分ほどかかることがあるみたいです(私が試した時は、1時間以上かかりました)。

カスタムコマンドの作成

次に③の"This is a custom command."をコマンドとして認識し、そのアクションとして④の"Yes, it is customized command you created."と返答するカスタムコマンドを作成します。

カスタムコマンドの作成もAzure Percept Studio、Speech Studioから行うことができます。Azure Percept Studioからカスタムコマンドの作成を行った場合も、トレーニングを完了するにはSpeech Studioで操作を行う必要があります。

Azure Percept Studio

音声アシスタントのテンプレートを試したことがある場合は、すでにプロジェクトが存在しています。新たなカスタムコマンドのプロジェクトを作成するときは、"追加"を選択し必要な情報を入力・選択します。

カスタムコマンド一覧

カスタムコマンドのプロジェクトを作成すると、一覧に表示されます。作成したプロジェクトをクリックすると、Speech Studioが開かれカスタムコマンドの開発を進めることができます。

コマンド追加

Speech Studioが開かれると、選択したカスタムコマンドプロジェクトの開発画面が開かれます。初めてプロジェクトを開いた場合、左のCommandsには"FallbackCommand"のみ表示されます。

左上の"+ Command"をクリックし、名前を入力することで新たなコマンドを追加します。今回はcustomという名前で追加しました。

Example sentencesを追加

作成したコマンドを選択します。"Example sentences"からコマンドの編集、"Done"からコマンドへの対応を修正することが可能です。Example sentencesに This is a custom command. と入力します。

Doneを編集

"Done"をクリックすると以下の編集が可能です。

  • Name → Doneをほかの名称へ変更
  • Conditions → アクションを行う条件
  • Actions → どのようなアクションを行うか

Actionsの"+ Add an action"を選択し、アクションの追加を行います。アクションは2種類用意されています。

  1. Send speech response → 特定の返答を行う
  2. Send activity to client → クライアントアプリケーションへアクティビティペイロードを送る

Send speech resposeを選択し、返答内容の変更を行います。

Speech response編集

Speech responseのエディターが開かれるので、右上のtypeから"Simple response"を選択し、任意の返答を追加しSaveをクリックします。

コマンド内容の編集が完了したら、Trainをクリックします。トレーニングが完了するとコマンドのテストが可能になります。

テスト画面では、先ほどExample sentencesに追加したコマンドを入力し、設定した返答が返されるかを確かめます。正常に動くことが確認できたら、publishを行いAzure Perceptでプロジェクトの割り当てを可能にします。

LUIS Predictionリソース設定

左のSettingsからLUIS recourcesの設定を行います。Prediction resourceを設定することで、アプリケーションの実行時に入力を認識するようになります。

カスタムキーワード/カスタムコマンド割り当て

カスタムキーワード・カスタムコマンドの割り当てはAzure Percept Studioから行います。キーワード・コマンドの割り当て方法は、同じ流れで行うことができます。

左のAIプロジェクトから"音声"を選択し、作成したカスタムキーワード(コマンド)プロジェクトを選択した状態で"割り当て"をクリックします。IoTハブ、デバイスを選択し保存をクリックすることで、カスタムキーワード(コマンド)がAzure Perceptで認識可能になります。

カスタムキーワード/カスタムコマンド確認

割り当てられているプロジェクトは、デバイスから登録したAzure Perceptの名前を選択し、音声のセクションから確認することができます。

デモ動画

実際にAzure Percept Audioがカスタムコマンドを認識するか試してみました。

投稿者プロフィール
寺澤 駿

寺澤 駿

IoTやAzure Cognitive ServicesのAIを活用したデモ環境・ソリューション作成を担当。

執筆記事一覧