はじめに
Watson Assistant(以下、WA)とWatson Discovery(以下、WD)を連携させて、よくある質問についてはWAで、あまりない(少量多品種の)質問についてはWDに問い合わせる、といった使い方をすることがあります。
従来だとWAとWDを連携させるためにはアプリを経由しなくてはなりませんが、Watson Assistant内のPlus Planの機能であるSearch skillを使うことで、Watson Discoveryとアプリを介すことなく直接連携できます。
イメージは以下です(IBM Cloud資料より抜粋)。WAで答えられなかった質問に対してWDを呼び出して回答します。
今回はSearch skillというWAの機能を使って,WAとWDの直接連携を試してみました。
前提
- WD Lite Planのインスタンスとコレクションが作成されている
- WAのインスタンスが作成されており、Plus Planが利用可能な状態である(Search skillはPlus Plan限定の機能です)
今回使うWDコレクションについて
以下のような国土交通省の事故データをもとに作成したjsonを100件ほど入れたコレクションを作成しました。
1.(必須ではない)AssistantとDialog skillの作成
2.で扱うSearch skillだけでもWAからDiscoveryを呼ぶことはできるようなのですが、今回は「はじめに」にあるイメージのように、WAで答えられなかった場合にWDに問い合わせたいので、その設定をします。
1-1.Assistantの作成
Dialog skill とSearch skillを紐づけるために、Assistantを作ります。
1-2.Dialog skillの作成
Dialog skillを作ります。
-
Create skill タブで Name を入力し、Language、Skill type(Dialog)を選択しCreate skillをクリック
-
Dialogの設定
Dialogを作ります。今回は、日常会話Nodeを作成し、日常会話はWAで処理し、そのほかの問い合わせはWDに行くようにしました。(Dialogの作成について詳細は、こちらを参照)
「その他」NodeのAssistant responds で Search skillを設定します。
2.Search skillの作成
Discoveryと連携させるためSearch skillを作成します。
-
Choose a Discovery instance to connect toのプルダウンから、WDインスタンスを選択し、Collection Nameで連携させたいコレクション(0.今回使うWDコレクションについて のコレクション)を選択しNextをクリック
3.WAからWDに問い合わせてみる
Try it Outでは完全には試せないようで、Previewでみてみます。
- Assistantsで、今回作成したAssistantをクリック
おわりに
比較的簡単にWAとWDと連携ができた印象でした。
記載の内容は個人の見解であって、組織を代表するものではありません。
また、記載時点(2021/6/18)の内容です。