Botを定義し、1つ以上のタスクを設定したら、NLP対応のBotを公開する前に設定をテストする必要があります。Botオーナーと開発者は、Botとリアルタイムでチャットを行い、ライブセッションのように認識、パフォーマンス、フローをテストすることができます。
Botのテスト
メッセージングウィンドウでタスクをテストするには、Botビルダーの右下隅にあるBotとの会話アイコンをクリックします。
次のフライト管理Botの図に示すように、Botのメッセージングウィンドウが表示され、NLPインタープリターに接続されます。
最初にウィンドウを開くと、Botの設定確認メッセージフィールドが、定義されている場合は表示されます。メッセージセクションにテキストを入力して、フライトの予約するなどのBotとの対話やテストを開始します。
NLPインタープリターはタスクの処理を開始し、ユーザーとウェブサービスによる認証を確認してから、必要なタスクフィールド情報の入力を求めます。必要なタスクフィールドがすべて収集されるとタスクが実行されます。
Botをテストしている間に、さまざまな種類のユーザープロンプトを試してみて、NLPインタープリターが同義語(または同義語の欠如)を適切に処理していることを確認してください。Botが予期しない結果を返す場合は、必要に応じてタスクやタスクフィールド名に同義語を追加または修正することを検討してください。詳細については、自然言語処理を参照してください。
トラブルシューティング
デバッグウィンドウを開いて、チャットの自然言語処理、ログ、セッションのコンテキスト、変数を表示することができます。デバッグを開くには、Botとの会話チャットウィンドウの右上にあるデバッグアイコンをクリックします。デバッグウィンドウは以下のタブで設定されています。デバッグログ、NL解析、セッションコンテキストおよび変数です。
- NL分析:Botタスクの読み込みステータスを説明し、発話ごとにタスク名の分析と認識スコアを表示します。
- デバッグログ: 処理中または処理済みのダイアログタスクのコンポーネントを日付のタイムスタンプと共に一覧表示します。
- セッションコンテキストおよび変数: ダイアログタスクの処理で使用されたコンテキストオブジェクトおよびセッション変数の両方を表示します。
デバッグログ
デバッグログは、それぞれのノードでキャプチャされたダイアログタスクとコンテキストおよびセッション変数の連続的な進行を行います。デバッグログは次のステータスをサポートします。
- プロセス中:Botプラットフォームはノードの処理を開始します。
- プロセス後: ノードとノードの接続が処理され、次のノードが見つかりましたが、ダイアログはまだそのノードに移動していません。
- waitingForUserInput: ユーザーは入力を求められます。
- 一時停止:別のタスクが開始されている間、現在のダイアログタスクは一時停止されます。
- 再開:一時停止状態の現在のダイアログは、開始された別のタスクが完了した後、フロー内の同じポイントで続行されます。
- waitingForServerResponse:サーバーへのリクエストは非同期応答を保留されています。
- エラー:ループ制限に達した、サーバーまたはスクリプトノードの実行に失敗したなどのエラーが発生しました。
- 終了:ダイアログがダイアログフローの最後に到達しました。
NL分析
NL分析タブには、各ユーザーの発話のタスク名分析と認識スコアが表示されます。 これは、Kore.ai NLPエンジンによって実行されたトーン分析、インテント検出、エンティティ検出の詳細な結果を示します。インテント検出の一部として、NL分析タブには、機械学習、ファンダメンタルミーニング、ナレッジグラフエンジンの結果が表示されます。スコアの詳細については、Botをトレーニングするトピックを参照してください。
セッションコンテキストおよび変数
セッションコンテキストおよび変数タブは、ダイアログビルダーで処理された各コンポーネントで更新されたContext
オブジェクトとセッション変数を動的に表示します。以下は、デバッグログのセッションおよびコンテキスト変数パネルの例です。パラメータの詳細については、タスクのセッションとコンテキスト変数の使用およびコンテキストオブジェクトを参照してください。
システムコマンド
システムコマンドを使用すると、評価中にユーザーとBotの会話を制御できます。これらは、JavaScriptコードを使用してBotに挿入することもできます。詳細はこちらをご覧ください。