Watson Assistant Improve ログ workspace 共有方法


Watson Assistant Improve ログ workspace 共有方法

2018/2にImprove画面に表示されるユーザー入力ログがworkspace間で共有できるようになりました。
これによって開発用のworkspaceと本番用のworkspaceの運用が楽になりましたね。
ライト/標準プランでは同じinstance内のworkspace間のみ、プレミアムプランでは異なるinstance間でも共有できるようです。

Improve画面はこちら

IBM Cloud Watson Assitant Improve コンポーネントの概要に設定方法が記載されてあるのですが、私は設定するのに困ったので備忘録として記事を投稿します。(きっとみんなも戸惑うよね!!)

今回やること

workspace「qiita-prod」と「qiita-dev」でImproveログを共有する設定を行います。
サービスが公開されている「qiita-prod」にきたユーザー入力のログを「qiita-dev」へ共有するという想定です。

①qiita-prodの設定

開始ノードに、名前は「metadata」、valueは「{"deployment":"Qiita-Production"}」というコンテキスト変数を作成して下さい。welcomeノードに必ず作成しなくてもよいのですが、Message APIのcontextに「$metadata」を含める必要があります。

②assistant-simpleの画面を用意する

①の設定を有効化するには「qiita-prod」をMessage APIでコールすることが必要です(try itでは駄目です)。
こちらを使用するとよいでしょうwatson-developer-cloud/assistant-simple

git clone https://github.com/watson-developer-cloud/assistant-simple.git
cd assistant-simple
vi .env

.envファイルにご自身の環境情報を入力して下さい。
WORKSPACE_ID=******
ASSISTANT_USERNAME=******
ASSISTANT_PASSWORD=******

npm install
npm start

ブラウザの新規タブで「localhost:3000」を開く
何かメッセージを送信して下さい。contextに$metadataが入っていればよいです

③Data sourceを設定する

②まで完了するとqiita-devのData sourceにQiita-Productionが表示され選択できるようになります。
これでqiita-prodとqiita-devのログが共有できるようになりました。
(私はなかなか表示されないので設定が反映されるまでに時間差があるのか?一定の件数が貯まらないと表示されないのか?などなど悩みましたが、単に設定が間違っているだけでした...。)