音声アシスタントを使用した IoT デバイスの制御

ボット サービス
音声
IoT Hub
Language Understanding

ソリューションのアイデア Solution Idea

さらなる情報、実装の詳細、価格ガイダンス、コード例を追加してこの記事を拡張することをお望みの場合は、GitHub のフィードバックでご連絡ください。If you'd like to see us expand this article with more information, implementation details, pricing guidance, or code examples, let us know with GitHub Feedback!

接続されたテレビや冷蔵庫から、接続された発電所のデバイスまで、インターネットにアクセス可能なすべてのデバイスとのシームレスな会話型インターフェイスを作成できます。Create seamless conversational interfaces with all of your internet-accessible devices-from your connected television or fridge to devices in a connected power plant. 開発者は、Azure 音声サービスLanguage Understanding Service (LUIS) と Azure Bot Framework を組み合わせることにより、人間に似た自然な会話インターフェイスを作成して、Azure IoT Hub を使用してスマート デバイスを制御することができます。By combining Azure Speech Service, Language Understanding Service (LUIS) and Azure Bot Framework, developers can create natural, human-like conversational interfaces to control smart devices using Azure IoT Hub.

ArchitectureArchitecture

アーキテクチャの図

データ フローData flow

  1. ユーザーが音声を使用して、家の外のライトを付けるように音声アシスタント アプリに頼みます。Using voice, the user asks the voice assistant app to turn on the exterior house lights.
  2. アプリは Speech SDK を使用して Direct Line Speech に接続します。Using the Speech SDK, the app connects to Direct Line Speech. キーワード検証によってキーワードが確定されたら、音声がテキストに書き起こされ、Bot Service に送信されます。If keywords are confirmed by Keyword Verification, the speech is transcribed to text and sent to the Bot Service.
  3. Bot Service は Language Understanding サービス (LUIS) に接続します。The Bot Service connects to Language Understanding service (LUIS). LUIS を使用すると、アプリケーションが人の発言の意図を認識できるようになります。LUIS allows an application to understand what a person wants in their own words. ユーザーの要求の意図 (例:TurnOnLight) が Bot Service に返されます。The intent of the user's request (example: TurnOnLight) is returned to the Bot Service.
  4. 要求がデバイスにリレーされます。The request is relayed to the device.
    • デバイスが Azure IoT Hub に接続されている場合、Bot Service は Azure IoT Hub Service API に接続して、ダイレクト メソッド、デバイス ツインの必要なプロパティへの更新、Cloud to Device メッセージのいずれかを使用してデバイスにコマンドを送信します。If the device is connected to Azure IoT Hub, Bot Service connects to Azure IoT Hub Service API and sends the command to the device using either a Direct Method, an update to the device twin's Desired Property, or a Cloud to Device message.
    • デバイスがサード パーティの IoT クラウドに接続されている場合、Bot Service はサード パーティのサービス API に接続して、デバイスにコマンドを送信します。If the device is connected to a third party IoT cloud, Bot Service connects to the third-party service API and sends a command to the device.
  5. Bot は、音声用のテキストを含む応答を生成して、ユーザーにコマンドの結果を返します。The Bot returns the results of the command to the user by generating a response that includes the text to speak.
  6. 応答はテキスト読み上げサービスを使用して音声に変換され、Direct Line Speech により、音声アシスタント アプリに渡されます。The response is turned into audio using the Text-to-speech service and passed back to the voice assistant app by Direct Line Speech.
  7. Application Insights がランタイム テレメトリを収集して、ボットのパフォーマンスと使用状況の情報によって開発を支援します。Application Insights gathers runtime telemetry to help development with bot performance and usage
  8. Azure App Service は Bot Service アプリケーションをホストします。Azure App Service hosts the Bot Service application.

ComponentsComponents

  1. 音声アシスタントのドキュメントVoice assistants documentation
  2. チュートリアル:Speech SDK を使用して音声でボットを有効にするTutorial: Voice-enable your bot using the Speech SDK
  3. Direct Line Speech とはWhat is Direct Line Speech
  4. Azure Bot ServiceAzure Bot Service
  5. 音声テキスト変換Speech to Text
  6. テキスト読み上げText to Speech
  7. カスタム キーワードCustom Keywords
  8. Language Understanding サービス (LUIS)Language Understanding Service (LUIS)
  9. Azure IoT HubAzure IoT Hub

次のステップNext steps