ソリューションのアイデア 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
- ユーザーが音声を使用して、家の外のライトを付けるように音声アシスタント アプリに頼みます。Using voice, the user asks the voice assistant app to turn on the exterior house lights.
- アプリは 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.
- 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.
- 要求がデバイスにリレーされます。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.
- Bot は、音声用のテキストを含む応答を生成して、ユーザーにコマンドの結果を返します。The Bot returns the results of the command to the user by generating a response that includes the text to speak.
- 応答はテキスト読み上げサービスを使用して音声に変換され、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.
- Application Insights がランタイム テレメトリを収集して、ボットのパフォーマンスと使用状況の情報によって開発を支援します。Application Insights gathers runtime telemetry to help development with bot performance and usage
- Azure App Service は Bot Service アプリケーションをホストします。Azure App Service hosts the Bot Service application.
ComponentsComponents
- 音声アシスタントのドキュメントVoice assistants documentation
- チュートリアル:Speech SDK を使用して音声でボットを有効にするTutorial: Voice-enable your bot using the Speech SDK
- Direct Line Speech とはWhat is Direct Line Speech
- Azure Bot ServiceAzure Bot Service
- 音声テキスト変換Speech to Text
- テキスト読み上げText to Speech
- カスタム キーワードCustom Keywords
- Language Understanding サービス (LUIS)Language Understanding Service (LUIS)
- Azure IoT HubAzure IoT Hub
次のステップNext steps
- LUIS アプリを作成してアプリに意図を追加する方法については、以下の記事を参照してください。To learn how to create a LUIS app and add intents to your app, see these articles:
- LUIS アプリをボットに追加する方法の詳細については、以下を参照してください。Learn more about adding a LUIS app to a bot, including:
- Azure Bot Service を使用してボットを作成する方法How to create a bot by using the Azure Bot Service
- 自然言語の理解 (LUIS) をボットに追加する方法How to add natural language understanding (LUIS) to a bot
- Azure IoT Hub を使用して IoT デバイスにコマンドを送信するために使用できるさまざまな方法については、以下を参照してください。Learn about various methods you can use to send commands to an IoT device by using Azure IoT Hub, including:
- cloud-to-device コマンドの送信Sending cloud-to-device commands
- デバイス ツインの使用Using device twins
- ダイレクト メソッドの使用Using direct methods
- Azure Bot Service を使用してエンタープライズ グレードの会話型ボットを作成する方法を確認します。Learn how to build an enterprise-grade conversational bot by using the Azure Bot Service.
- IoT Hub を使用したソリューションの開発に関する詳細については、Azure Iot Hub 開発者ガイドを参照してください。To learn more about developing solutions by using IoT Hub, see the Azure Iot Hub developer guide.