Opensourcetechブログ

OpensourcetechによるNGINX/Zabbix/Neo4j/Linuxなどオープンソース技術に関するブログです。

IBM Watson(AI)のAssistant(旧称Conversation)でチャットボットを作ってみる

こんにちは、LinuCエバンジェリストこと、鯨井貴博@opensourcetechです。

 

今回は、IBM CloudのWatson Assistant(旧称Conversation)を使って、

簡単なチャットボットを作ってみます。

 

IBM Cloudのアカウントから作成する方は、以下の記事を参照ください。

IBM Watson(AI)を無料で使ってみる - Opensourcetechブログ

 

 

 

Watson Assistantの利用開始

ダッシュボードのリソース作成から、無料のライトプランを作成します。

f:id:opensourcetech:20181231110636p:plain

 

ダッシュボードに、Watson Assistant(Conversation)-91が追加されました。

f:id:opensourcetech:20181231110638p:plain

 

Watson Assistant(Conversation)-91をクリックして、リソースを開始します。

f:id:opensourcetech:20181231110640p:plain

 

 

Watson Assistantによるチャットボットの作成

「ツールの起動」をクリックして、Watson Assistantを起動します。

f:id:opensourcetech:20181231110642p:plain

 

Assistantタブから、新規にAssistantを作成します。

Name:任意・Description:オプション  を入力し、Createとします。

f:id:opensourcetech:20181231110646p:plain

 

 

 続いて、「Create Skill」からSkillを作成します。

f:id:opensourcetech:20181231110644p:plain

f:id:opensourcetech:20181231110650p:plain

 

Name:hello・Description: なし・Language:Japaneseとして、Createとします。

f:id:opensourcetech:20181231110648p:plain

f:id:opensourcetech:20181231110652p:plain

 

Error」となりますが、ちゃんと作成されますw

※最初、作成できているのに気付きませんでした。

f:id:opensourcetech:20181231110655p:plain

 

Skillタブに移動すると、作成されています。

f:id:opensourcetech:20181231110656p:plain

 

続いて、Intentを作成します。「Add Intent」をクリックします。

f:id:opensourcetech:20181231110658p:plain

f:id:opensourcetech:20181231110701p:plain

 

Intent nameを「hello」とし、「Create Intent」をクリックします。

※「#」は自動で付与されます。

f:id:opensourcetech:20181231110702p:plain

 

「Add user examples」欄が追加されるので、今回は「こんにちは」と入力して「Add example」をクリックします。

※チャットボットで入力された質問などに対して、「#hello」と判断されたら、複数あるexamplesから回答が選択されるようになります。

f:id:opensourcetech:20181231110710p:plain

f:id:opensourcetech:20181231110707p:plain

 

追加されました。

f:id:opensourcetech:20181231110704p:plain

 

「やあ」・「おはよう」・「おはようございます」もexamplesに追加しました。

f:id:opensourcetech:20181231110716p:plain

 

 また、Intent「goodbye」を作成し、いくつかexamplesを追加しました。

f:id:opensourcetech:20181231110718p:plain

f:id:opensourcetech:20181231110720p:plain

f:id:opensourcetech:20181231110722p:plain

 

続いて、Skill「hello」にWatson Assistantに用意されている会話パターンを追加します。

Skillsタブ -> hello -> Content Catalogから「カスタマー・ケア」を「Add to skill」クリックします。

f:id:opensourcetech:20181231110725p:plain

 

なお、カスタマー・ケアは、以下のようにビジネスに必要な応答をする雛形です。

f:id:opensourcetech:20181231110728p:plain

f:id:opensourcetech:20181231110726p:plain

Dialogをカスタマイズします。

f:id:opensourcetech:20181231110732p:plain

 

既存である「ようこそ」をクリックして、

チャットボットを開始した際に表示するメッセージをカスタムします。

f:id:opensourcetech:20181231110733p:plain

 

今回は、「らっしゃい! 何か用か?」としました。

※デフォルトは、「いらっしゃいませ。ご用件を入力してください。」

f:id:opensourcetech:20181231110740p:plain

f:id:opensourcetech:20181231110741p:plain

 

右上にある「Try it」をクリックすると、以下のようにテストができます。設定した通り 表示されました。

f:id:opensourcetech:20181231110748p:plain

 

「お腹が空きました。」と適当なメッセージを入れてみました。

すると、Watson Assistantでは「#goodbye」Intentと判断しました。

f:id:opensourcetech:20181231110751p:plain

 

なので、少し調整します。

「#goodbye」から「#hello」に変更します。

f:id:opensourcetech:20181231110752p:plain

 

変更をWatsonが学習します。

f:id:opensourcetech:20181231110757p:plain

 

学習が完了しました。

f:id:opensourcetech:20181231110759p:plain

 

続いて、Skill helloに新しいDialog「野菜」を追加します。

f:id:opensourcetech:20181231110800p:plain

 

f:id:opensourcetech:20181231110802p:plain

 

「野菜」と入力し、先ほどのDialogが選択されるように調整します。

f:id:opensourcetech:20181231110804p:plain

 

先ほどの野菜Dialogで設定した「#Customer_Care_Appointments」を学習させます。

f:id:opensourcetech:20181231110807p:plain

 

学習後再び、「野菜」と聞くと、

設定した通りのメッセージを返してくれました。

f:id:opensourcetech:20181231110810p:plain

 

 

チャットボットを導入

作成したチャットボット機能を実際に使用するには、

「facebook for developers」のWebhookなどのに組み込んで使用します。

※今回の記事では、使用まではしていません。

f:id:opensourcetech:20181231110813p:plain

f:id:opensourcetech:20181231110816p:plain

 

他にも、同様のサービスはあるのでそちらに組み込んでも使用可能です。










www.slideshare.net

github.com

www.facebook.com

twitter.com

www.instagram.com

 

 

にほんブログ村 IT技術ブログ Linuxへ
Linux

にほんブログ村 IT技術ブログ オープンソースへ
オープンソース

 

 

Opensourcetech by Takahiro Kujirai