この文書では、バンキングボットのサンプルを作成する手順を詳しく説明しています。このボットは、開発者向け文書の「ハウツー」セクションで紹介されているさまざまなユースケースシナリオで使用されます。
必要条件:
- Kore.aiボットプラットフォームにサインアップしている必要があります
- ボット構築の基本を認識している必要があります(このリンクをご参照ください)
- 簡単なボットを作成したことがある必要があります(例としてはこちらをご参照ください)
- バンキングボットを作成したことがある必要があります(例としてはこちらをご参照ください)
ボットの概要
これから構築しようとするボットは、基本的な銀行取引を行うものです。このボットは以下のことを行います。
- ユーザーが入力した口座番号と口座の種類に基づいて、口座残高を手に入れます( こちらで見えます)。
- こちらで見えるように、口座残高を更新します。
- ユーザーアカウントから受取人アカウントへ、指定した金額を送金します。
資金移動タスクを追加しましょう。
ステップ1: ダイアログタスク
ボットにおける最初のステップとして、インテントダイアログを追加する必要があります。インテントダイアログは、ユーザーとボットの会話フローの最初のステップです。
- 事前設定されている2つのタスク残高取得と残高更新で、バンキングボットを開きます。
- トップメニューから、構築タブが選択されていることを確認します。
- 左側メニューから、会話スキル->ダイアログタスクのページへ移動します。
- 右上から、ダイアログの作成をクリックします。
- ダイアログの作成の画面が開きます。
- 以下の詳細を入力します。
- インテント名-インテント名を入力します。これは、ダイアログをトリガーするフレーズです。インテント名はシンプルにして、3~4語を超えないようにする必要があります。例:「資金の移動」
- その他のオプションで、説明やその他のダイアログ関連の詳細を追加できます。デフォルトの設定のままにしておきましょう。
- また、このインテントをトレーニングするために、発話を入れることもできます。
- 会話駆動型ダイアログビルダーの試行 オプションを選択します。
- 続行をクリック。
- ユーザーインテントのプロパティパネルが表示されます。デフォルトのプロパティを保持します。
- メモ:旧ダイアログビルダーの操作方法については こちらをご参照ください。
- ユーザーインテントプロパティパネルを終了します。
ステップ2: エンティティノード
エンティティノードは、通常、ユーザーから情報を収集するために使用されます。ここでは、ユーザーが入力した「受取人と支払人の口座番号」と「送金額」をキャプチャするために使用します。
- 下の+をクリックすると、ユーザーインテントノードに移動します。
- エンティティオプションを選択します
- +新規作成をクリックします
- エンティティノードのプロパティパネルが表示されます。そうでない場合、新規追加されたエンティティノードをクリックして、開きます
- 以下の詳細を入力します。
- 名前:PayerAccount
- 表示名:支払人口座
- タイプ:番号
- ユーザープロンプト:以下のテキストを入力します。
Enter the Account from where you want to transfer funds.
- 支払人口座エンティティプロパティパネルを終了します。
- 以下の詳細から、上記の手順を繰り返して、別のエンティティを追加します。
- 名前:受取人口座
- 表示名:受取人口座
- タイプ:番号
- ユーザープロンプト:以下のテキストを入力します。
Enter the Account to which you want to transfer funds.
- 受取人口座エンティティプロパティパネルを終了します。
- 以下の詳細から、上記の手順を繰り返して、別のエンティティを追加します。
- 名前:送金額
- 表示名:送金額
- タイプ:番号
- ユーザープロンプト:以下のテキストを入力し、Enterキーを押して保存:
Enter the amount to transfer.
- 金額エンティティプロパティパネルを終了します。
次のステップでは、支払人と受取人の両方の口座残高を更新します。残高更新タスクはすでにありますので、現在のタスクから実行する方法を見てみましょう。
ステップ3: ダイアログタスクの実行
事前定義済みのダイアログタスクは、他のタスクの中からトリガーすることができます。その方法を見てみましょう。
- 下の+をクリックすると、金額エンティティノードに移動します。
- ダイアログタスクを選択します
- 与えられたタスクリストから、必要なタスクであるUpdateBalanceを選択します。
- ダイアログノードのプロパティパネルが表示されます。そうならない場合、新規追加されたダイアログノードをクリックして、開きます
- インスタンスプロパティタブに移動し、以下の詳細を入力します。
- エンティティ事前割り当てセクション – これらは、ダイアログタスクで必要とされるエンティティの値であり、ここに入力されていない場合は、ユーザーは同じ値を入力するように指示されることになります。前のステップで定義したエンティティを通じてすでに情報を収集ましたので、それらのユーザー入力値をUpdateBalanceタスクに渡すことになっています。
- UpdateBalanceダイアログのプロパティパネルを終了します。
- 同じ手順を繰り返して、受取人口座を以下の値で更新します。
- エンティティ事前割り当てセクション
- AccountType:普通預金
- 口座番号:context.entities.PayeeAccount
- 金額:context.entities.Amount
- TransactionType: クレジット
- UpdateBalanceダイアログのプロパティパネルを終了します。
ステップ4: メッセージノード
メッセージノードは、ボットからユーザーへのメッセージを表示するのに使用します。ここでは、メッセージノードを使用して残高を表示します。
- UpdateBalance [2] サービスノードの下の+をクリックします。
- メッセージを選択し、「+ 新規メッセージ」をクリックします。
- メッセージノードのプロパティパネルが表示されます。そうならない場合、新規追加されたダイアログノードをクリックして、開きます
- 以下の詳細を入力します。
-
- 名前:FinalMessage
- 表示名:最終メッセージ
- ボットレスポンス
The amount {{context.entities.AmountToTransfer}} has been transferred from {{context.entities.PayerAccount}} to {{context.entities.PayeeAccount}}
-
- ボットレスポンスのプロパティパネルで、「接続」アイコンをクリックして[接続]タブを開きます。
- デフォルトの接続を「未接続」から「ダイアログの終了」に変更します。
- 保存をクリック。
- プロパティパネルを終了します。
テスト
ダイアログタスクをテストするには、右下の「ボットと会話」を使用します。次の発話(インテント名)「資金移動」入力します ボットの指示に従います。
- 支払人口座 – 02929664を入力します。
- 受取人口座 – 44994354を入力します。
- 送金額 – 200を入力します
- 成功メッセージを確認します。