これも、
昨日に続き、「こうするはず!」という想像なんだけど・・・
Pepperに話しかけると、
IBM Watsonで質問を解釈して、その結果を返し、
Pepperが回答するというのがあるじゃないですか・・・
あの作り方。たぶん、こうするんだと思う。
思っているだけで、間違いとかもあるかもしれません(まだ試していない)
ろりぽおじさんの用語解説くらい、ココロを広く持って読んでください。
(なお、現状英語で話しかけて、英語で答えるバージョンしか、作れないはず。
日本語のサービスは、IBMで今、開発中(現在β版?)のはず)
■技術のポイント
・IBMのBluemixを使うと、WatsonとREST経由で通信する
エンドポイントを作ることが出来る。
・なので、Pepperで英語を解釈して、その英語(テキスト)を
引数として、Watsonのエンドポイントを呼び出す。
・IBM Bluemix上のwatsonがREST形式で結果を返す
ので、その結果をPepperに話させる。
■まず、Watsonに質問を投げると返してくるエンドポイントを作成
IBMのBluemix(30日間ただ)で、WatsonにREST形式で質問を投げかけると、
答えてくれるサービスを作ることが出来る。
具体的には、
Watson QAAPIと呼ばれるサービス。作り方は、以下のサイトを見てください。
最速!アプリ開発マニュアル「これだけ読めば、すぐにつくれる!」~Watsonをクラウドサービス「Bluemix」から使う(第二回)
http://www.gixo.jp/blog/4784
■そのエンドポイントをPepperから呼び出す。
上記サイトに
「Watsonの機能を呼び出す場所」についてまったく触れていません。ここにはみなさん興味があると思いますのでちょっとだけ説明します。ここを担当しているファイルは「app.rb」です。このファイルの88行目~92行目で「Watsonの機能を呼び出す処理」が行われています。
とあり、下にイメージファイルがはってあり、呼び出しポイントが赤く囲われていると思います。
エンドポイントに、引数を設定して呼び出し、JSONを受け取っています。
ってことは、エンドポイントのURLを指定して、アクセスすれば、ブラウザからでも、Pepperからでもよみこめるはず!
Pepperは、Choregrapheという開発環境でプログラミングすることが出来る。
Choregrapheを入手するには、前に書いた
Pepper君がなくとも、Pepperのプログラムは体験できる・・・だけど・・・
http://blog.goo.ne.jp/xmldtp/e/0f067e122c1154ceda4ec1c0607991ea
を見てください。
Choregrapheをひらいて、たぶん、スピーチをきいて、結果を話すので、こんな感じで
設定するんだと思う??
そしたらSayをダブルクリック
SayTextをダブルクリック
出てきたエディタで「def onInput_onStart」のところで、pが引数になっているので、
Pythonで
response = urllib2.urlopen('http://エンドポイント')
html = response.read()
みたいなかんじで、
前述のWatsonエンドポイントにアクセスして
その結果を受け取り、答えの(英文)テキストを
pに設定するプログラムを書くことになる。
なお、pは、このままだと、
Hello
という言葉が入っているので、SpeeachRecoで解析した
(=Pepperに話しかけられた)テキストを
Watsonエンドポイントにアクセスするときの引数に
するようにする。
そしたら、そのソースを保存
(バーチャルロボット環境では、SpeeachRecoは試せない)
■秋葉原で確認
Pepperは、高速の反射神経がないとたぶん買えない
(1分で売り切れ)なので、現状、確認するには、
Pepperに会いに行くしかない
アルデバラン アトリエ 秋葉原に行くと、
Pepperに会って、上記開発ソフトを(たぶん)確かめることが出来る。
アルデバラン アトリエ 秋葉原は予約制。予約するには、
アルデバラン・アトリエ秋葉原 with SoftBank
https://pepper.doorkeeper.jp/
から申し込む。
【経験者限定】Pepper 開発タッチ&トライ 予約席
ってことになるのかしら・・・なので、経験者で無い場合、先に
【新規限定】 Pepper 開発体験 ワークショップ(SDK 基本編 #1 -喋る、動かす、会話する-)
を受講することになる。ここで、Choregrapheの使い方を習う
なので、あとは、Choregrapheを開いて、
アトリエにいるPepperくんのIPを聞いて(胸のボタンを押す)
それをもとに、接続して
Pepperに上記アプリケーションを送って
Pepperに英語で話しかければ、Watsonから何か返ってくるはず!
※アトリエ秋葉原にあるのは、Choregrapheの、2.0.5系なので、
開発環境のChoregrapheも、それにあわせる。
これで出来ると思うんだけどなあ・・・どうなんだろう??