インテントの検出と解決
ビジュアル・フロー・デザイナで設計されたダイアログ・フローでは、アクティブなフローがない場合、インテントは検出(および解決)されますautomatically。
これは、次の場合に、ダイアログ・エンジンがユーザー・メッセージでインテント解決を実行することを意味します:
- セッションはユーザー・メッセージで開始されます。
- 前のトップレベル・タスク・フローが終了しました。終了フロー・コンポーネントで指定されたアクションは、別のイベント(デフォルトの遷移)と一致しません。
ノート:
これは、ダイアログ・フローにSystem.Intent
コンポーネントを明示的に追加する必要があるYAMLベースのダイアログ・フローとは異なります。 ビジュアル・フロー・デザイナには、System.Intent
コンポーネントがありません。
ダイアログ・エンジンは、インテント解決を実行するときに、system.nlpresult
という事前定義変数(式${skill.system.nlpresult.value}
を使用してアクセスできます)に結果を格納します。 また、見つかったインテント一致に対してsystem.intent.<IntentName>
というイベント、またはインテント一致が見つからない場合にsystem.intent.unresolvedIntent
というイベントが発生します。 メイン・フローでは、インテントとそれらのインテントに対して起動する必要があるフロー間のマッピングを作成します。
ノート:
ビジュアル・フロー・デザイナでのインテントの自動検出は、デジタル・アシスタントがすでに機能している方法と似ていますが、主な違いは、ユーザー入力が未解決の場合にデジタル・アシスタントがアクティブなスキル内の非シーケンサをサポートすることです。