10th Anniversary of IT Research Art

当社 ITリサーチ・アートは、平成19年11月の設立以来、10年をすぎることができました。

脆弱性調査のためのリバースエンジニアリングの合法性の議論から始まり、プライバシーのコンジョイント調査、セキュリティインシデントと法の調査、通信の秘密、営業秘密、忘れられる権利、IoTのセキュリティと安全などについての国際調査など、本当にたくさんの調査に従事できたことを本当にうれしく、また、そのいずれのテーマも、わが国にとって先進的でチャレンジであったことを、我ながら、誇りにおもいます。

(ということで、調査実績をアップデートしました)

本年も

GDPR

といった最先端の国際調査を手がけることができます。

設立のときは、こんなに続けて、先進的な調査、それも、入札をへての調査(実感こもっているでしょ)ができるとは思ってもみませんでした。

今後は、さらに、先端的な分野(宇宙までいくか)や、実際のテクノロジーそのものへの挑戦をしたいとおもいます。

みなさま、今後ともご指導、ご鞭撻よろしくお願いします(あと、若い先生方は、一緒に遊んでね)。

平成29年11月 高橋郁夫

 

Line Developer’s Day

Line Developer’s Dayが、今度の28日、渋谷のヒカリエで開催されます。
HPは、こちら

Line Chatbotの開発者としては、ちょっと覗いてこようかとおもっています。

repl-AIは、どうすべきなのか、なんて情報がうまく聞けるといいなあ。

法律用チャットボットの作り方(8) repl-aiでLINEボットに挑戦 その4

repl-aiで、シナリオを作成したら、実験をすることができます。
マイプロジェクトページから実験(シミュレーター)できます。

 

これで、うまくいけば、LINEのアカウントと接続します。具体的な接続の仕方は、このページ(作ったボットとLINEで話そう)にでています。

ところが、私の場合は、どうしてもエラーがでて、立ち往生してしまいました。エラーというのは、以下の画面で、1. Channel IDを入力する 2. Channel シークレットを入力する 3. Channel トークンを入力する という作業をして、webhookのアドレスをコピーを押して、「コピーいたしました。LINE Developers にてご利用ください」の文字がでても、一つもアドレスが生成されませんでした。

でもって、ドコモデベロッパーズで、質問をしたのですが、すぐには返事が返って来ないので、しつこく催促したところ、結局、webhookのアドレスを教えてもらって、手で、LINEのほうに入力して実験しました。なんとかうまく接続されました。

ただ、実験すると、すぐに、理解の範疇を越えて、返事が返って来なくなります。まだ、一般公開というレベルには、たどり着けていません。ただ、実験目的で、公開しています。具体的には、事務所のページを訪問ください

なお、repl-aiは、横浜のゴミ分別の紹介サイトに採用されています。自然言語のレベルは、結構、高いみたいです。「「旦那を捨てたいんですけど…」 横浜市のごみ分別ボットの答えが的確すぎる」という記事がでています。このボットのエンジンは、repl-aiなので、うまく作れると、発展性があるのかもしれません。 repl-aiは、 「連携ボットを活用しよう」というように作成すると、docomoの準備している対話ボットと連携することができます。

まだ、LINEのボットは、改良をしないと恥ずかしいレベルです。が、どうも、仕事の広告として、有効なのかなという感じもするので、とりあえずは、ここで、いったん、開発は、止めて、マイクロソフトのAzureのボットフレームワークを使いだしてみようかと考えています。

あと、実際の開発が、パーツを組み合わせていくというのを体感したので、それをもとに、システム開発契約についての、いまの一般の解説が時代に対応していないのを論文にするのもいいなあ、と考えています。

法律用チャットボットの作り方(6) repl-aiでLINEボットに挑戦 その2

repl-aiでLINEボットに挑戦なわけですが、まさに挑戦という感じでした。

シナリオ自体は、Facebookメッセンジャーチャットボットを作っていたので、オーサリングツールをいじって、そのまま、実験することはできるので、むしろ、どうすれば、LINEチャットからアクセスできるのか、というところが問題でした。

でもっ、ちょうど、この頃に、出たのが、前でもふれた立花翔著「LINEBOTを作ろう」の本です。この本を見ながら、実際に、簡単なチャットボットを作って、確認していきました。

この本の第2章を見ながら、Heroku の使い方を覚えておきました(超初心者ですね)。もっとも、そのあとで、実際には、repl-aiのサーバで作ってデプロイするので、Herokuを使ってデプロイしなくていいわけですが、そのような原理の勉強には、ちょうどよかったです。

実際に設定していくのは、第3章以降になります。デベロッパ登録・チャンネル設定、Line business Centerの登録などが必要になります。

このあたりについては、repl-ai の「作ったボットとLINEで話そう」とを見ながら、実際にアカウントを作りながら、進めます。

まずは、LINE BUSINESS CENTERにログインですね。ログインするとこんな感じです。

 

とか、いっていたら、LINE BUSINESS CENTERのサービス終了だそうです。

でもって、アカウントを設定です。LINE@をクリックしましょう。

 

 

とこうなって、認証アカウントを申し込みます。

認証がとれるまで数日かかりました。開設までに審査が必要なアカウントが認証アカウントということになります。法律事務所ですと、やっぱり、きちんと認証をとっておくべきでしょう。

フリーなのも含めて、こんな感じです。

 

認証済みのアカウントの全体の設定は

 

こんな感じで

基本設定は、こんな感じになります。

Mesdsaging APIの設定は、こんな感じで、webhook送信(あるアプリケーションから別のアプリケーションに対してリアルタイムな情報提供を実現するための仕組みだそうです)を利用するとします。

ということで、ここまでが一応の準備ということになります。

 

 

法律用チャットボットの作り方(5) repl-aiでLINEボットに挑戦 その1

6月以降は、ラトビア・エストニア訪問やら、ネット中立性のエントリをまとめたりして、なかなか、チャットボット関係をいじることができなかったのですが、ネット中立性の分析も一段落したので、チャットボットに戻りましょう。

戻るといっても、実際は、5月にいろいろといじっていたものですが、今回は、repl-aiで、LINEチャットボットを構築した経験をメモしていきましょう。

Messengerチャットボットは、Chatfuelというツールで作りました。前にもふれましたが、ボタン式で、どんどん進めていける点、プログラミングをしないで済むというので、本当に、便利なツールでした。

ただ、なんといっても、チャットボットといえば、LINEでしょう。国内アクティブユーザー数が、7000万人以上(?)というほとんどプラットフォーム・アプリになります(独禁法上は、どういう市場画定するんだろ?とか考えているのはさておき)。ところが、Chatfuelは、LINEに対応していません。

プログラミングでもって、Messaging APIでもって、組んでいくのであれば、それはそれでいいのですが、実際にやりたいのは、法律相談を、ダイアログ式の応対に組み込むことなので、どう考えても、単純な仕組みの繰り返しが増えるのは、目に見えているので、ツールを使わざるを得ません。

ちなみに、「LINE BOTを作ろう! Messaging APIを使ったチャットボットの基礎と利用例 」という本を購入して、いろいろと遊ばせていただきました。ちゃんとHerokuも使ったし、ライン公式アカウントを作成して、いろいろとやりとりをできるレベルまでには、持っていきました。
おすすめの本かと思います。

その前に、LINEのアカウントを作成して、APIを利用するのを登録して、設定を行わないといけません。このあたりの設定については、「わずか5分。新LINE Messaging APIでbotを作ってみた手順全公開」と上の本を参照しながら、作成していきました。

ツールの選択が、一番の課題になります。で、具体的に、「チャットボット作成ツールまとめ(国内海外)」などをみながら、LINE対応しているツールを洗い出してみました。

国内だと、repl-ai、hachidori 国外だと reply-ai、smoochくらいしかないようです。

その一方で、
Chatfuel
Botsify
Microsoft Bot Framework
motion.ai
chatbots.io
wit.ai(FBの子会社でしたよね)
gupshup
converse
meya.ai
は、LINEへのエクスポートができません。
Messengerチャットボットを作ったときに、チャットボット(というか、ダイアログの仕組み)については、非常な可能性を感じたのですが、もっとも重要なのは、開発のためのいいツールがあることことと感じました。その意味では、LINEは、位置づけとしては、微妙なのではないのと感じたりする結果ですね。

さて、具体的なツールの評価になります。

hachidoriについては、ドキュメント不足ですので、パスということは前に書きました。

reply-aiですが、

英語サイトでもって、アカウントの作り方を探したのですが、見つかりません。ボットで、アカウントを作りたいけどというと、個人では、アカウントを作るのには、対応していませんと回答してきたので、これまたパスすることにしました。

smoochは、まだ試していません。ということで、日本におけるチャットボット導入ツールの代表的な存在?であるrepl.aiを試してみることにしましょう。詳しくは、次のエントリで。

 

 

 

法律用チャットボットの作り方(4) 法律インテリジェンスの育て方とHPへのリンク

とりあえず離婚、相続、交通事故についての簡単なQ&Aのシナリオを前提に、相談のための情報収集と準備してもらう書類についての情報提供を目的とするボットが完成しました。

作ってみて結果をだすような法律相談ボットというのは、無理なので、法律相談の支援のためのチャットボットという位置づけにしました。

これが無理というのは、二つの意味があります。

一つは、具体的な事情に応じて、判断を場合分けしていくと、趣味のレベルでできないのは、当然として、コストをかけて分類したとしても、ほとんど、意味のあるレベルには、できないだろうという労力の問題です。

今一つは、人間のインテリジェンスをもって対応した場合でも、結局は、どれだけ、○×な裁判官にあたるのか、という不確実性をもとに判断しなければならないので、法律相談は、そもそもが、確率の話でしか、判断をなせないということです。

まして、法律相談ボットとかいうと、法律相談は、弁護士しかできないのではないか、ということもいわれそうです。

裁判官の不確実性の問題はさて置くとして、最初の手間の問題は、法律エキスパートシステムが失敗したといわれた時代とは、かなり様変わりしているということもいえそうです。実際にやってみて、離婚、相続、交通事故についていえば、きちんとコストをかければ、実用的なレベルまで、シナリオがかけるだろうということです(法律実務体系とか、あと何か解説本あたりを分解して並べ替えてみればできそう)。あと、不動産問題もいけるでしょう。

ここで、ポイントなのは、「実用的なレベル」というのは、何か、ということかと思います。要は、実際の人間の手間を省けるといいのではないか、と。結局は、今の段階では、人間のほうがはるかに優秀なのは、わかっている。でも、手間を省くのに、便利な仕組みができるんなら、それは、それで使ったらいいし、それは、それで「実用的」なのではないか、ということです。(弁護士の手間が省けて、ボットが対応していることがわからない程度までいき、対応できなければ、弁護士が引き継げばOK)。

あと、現代では、利用者みずからが、質問をしてくれるので、その質問が、当初のシナリオを磨いてくれるように設定するということもできそうです。すると、その実用的なレベルというのが、それなりに上がっていく。もしかするとシナリオが自律的に発展していくかもしれません。そうすると、このシナリオを追加する作業にインセンティブを付していけば、もともとのシナリオがみずから勉強していく仕組みになりそうです。何か、インテリジェンスのブロックチェーンですね。(Bluemixが、シナリオに頼っていくのを亡霊とかいう人もいるようですが、現実としては、まず、「配偶者の不倫の際に離婚できますか」という質問にたいして、どのような手順で回答するかというのを勉強させて回答する仕組みするとして、シナリオは、有意義なようにおもえるんですけどね)

さて、妄想は、さておき、Messengerチャットボットができたとしても、基本的には、Facebookコミュニティのなかだけです。おまけに、Facebookコミュニティだと宣伝して、法律相談してね、というのも何か気が引けてしまいます。なので、事務所のホームページから、messengerでメッセージしてください、と呼びかけるようにしたいなあ、と考えました。

まずは、Facebook内の事務所のホームページの写真を矢印をつけて、メッセージを送ってねとしました。

次に調べてみると、Messengerは、Facebookアカウントがなくても使えるので、それをホームページに書いておくことにして、あとは、wordpressのプラグインです。人気のあるのは、Facebook Messenger for WordPress か、Facebook Messenger Live Chat のようですが、実際に、それぞれ、とりあえず、インストールしてみたところ、私としては、Facebook Messenger for WordPressでいくことに決定。

これで、とりあえず、Messengerチャットボットを作成するというゴールデンウイークのミッションは、達成です。

ただし、やっぱり日本だと、Lineでの法律相談ができないとね、ということになりそうなので、次は、Lineでのチャットボットの作成という段階に移ります。

法律チャットボットの作り方(3) ツール比較(2) chatfuelで作ってみた

まずは、GW中に、なんとか、チャットボット公開しようかと考えて、簡単に公開できるものをつくるためのツール探しをしたのですが、自分のイメージとあうものがなく、Watson(IBM Bluemix)も違うなあとおもっていたところ、次は、Chatfuelにチャレンジすることにしました。

このツールは、アメリカで、非常にいろいろなサイトのチャットボットを作るのに使われているみたいです。

では、サインアップしましょう、ということになったら、Facebookのアカウントを使うと、あっさりとサインアップ。特別のIDとかもいりません。

ダッシュボードは、こんな感じです。

このボットのところを開くと

 

という実際の作成画面がでてきます。

一つ一つのグループ(離婚、相続、交通事故)を追加していって、その中で、ブロックを作成していきます

ブロックは、システムの発言から、ユーザの発言を経て、ユーザの選択までのひとかたまりというところでしょうか。

 

下のテキスト、ギャラリー、写真、リスト、クイックリプライなどの部品を構成して、固まりをつくっていきます

ユーザにいろいろと選択させるときは、項目をいれるとブロックを作ることもできます

 

あと、ユーザに自動で書き込ませたいときは、プラグインから、ユーザインプットなども選べます。

 

ユーザの入力は、データとして保管できるので、あとで、データをいじることができるようになるみたいです。

でもって、自分のイメージ的なものが簡単にできるかな、という感じだったので、あらかじめ、作っておいたシナリオベースにやりとりを作っていきます。(交通事故は、過失相殺の枠組みだけいれて、具体的な割合のところは、弁護士に相談してね、とかいってます。離婚相談のシナリオは、簡単かな。債務は、やや簡単で、交通事故は、結構、ちからわざという感じです)

完成したら、

テストして(作成のところの右上にテストのボタンがある)、問題なければ、facebookに接続(ごめんなさい。ここは、ヘルプ画面を引用)

事務所の「設定」のページから、messengerプラットフォームから、インストールされていることを確認します。

事務所のページから、自分のアカウントで、実験して、うまくつながることを確認したら、ブログでご報告

ここまでくると、Facebookの事務所のページから、簡単に送れるようにトライするのと、事務所のホームページ(http://komazawalegal.org/)から、チャットボットが設定できるようにすると、第一段落は、終了。

 

法律チャットボットの作り方(2) ツール比較(その1-wit.ai Bluemix)

実際のチャットボットを作るためには、フルにコードを書くのは、厳しいので、できる限り、簡単なツールでもって作成しましょうということにしました。

でもって、いろいろな記事を参照しました。最初に参照したのは、「会話もできる!高性能チャットボットが作れるサービスまとめ」でしょうか。

まずは、チャットボットを作成して、公開するということだけを目標にしたので、ツールが一番揃っているFacebookメッセンジャー用のツールをさぐっていくことにしました。(高尚な人工知能の可能性を探るとか、いろいろなプラットフォームで公開とか、そういうのは、一切なし)

国内用のツールとしてhachidoriがあって、アカウントを取得し、とりあえず、動く、ボットを作るのは、作りましたが、ドキュメントがなさすぎて、どのように作れば、いいかが全くわからなかったので、1日で放棄しました。

次は、wit.aiです。

Quick startでお勉強して、作成開始。
作成の画面は、こんな感じです。

 

しかしながら、Quick startでみると、抽象的な質問の意図を、システムに理解させるための手法の設定がメインで書かれています。意図とエンティティを入力して、正確にユーザの発言をとらえるようにということのようです。

 

これは、これで、ユーザの意図を覚えさせるのに、いろいろな技術を使っていますし、世間的には、AIを利用しているといわれていますね。

でも、実際には、離婚相談か、相続相談か、交通事故かは、システム側から提示させて、選ばせた方が、はるかに便利だよねということで、却下することにしました。目標は、法律問題を抱えている人に法的解決の可能性を提示することなので、そのために、人工知能をうまく使っていますなんてのは、提供側の理屈にすぎませんからね。

次は、watsonでしょうということで、IBM Bluemixにサインアップ。豊富なツールと、お勉強の資料に圧倒されます。
スタートは、こちらです。

でもって、watsonにおけるボットツールconversationは、こんな感じです。

 

ダイアログ形式で作っていきます。

 

でもって、ダイアログは、作りやすいです。

しかも、それぞれの意図とエンティティを入力して、賢くできます。

 

分かりやすく、作り易そうです。

すばらしいのが、資料が本当に完備していること。インテントやエンティティの概念がきちんと整理されているビデオは、感動。

ただ、なんといっても、法律相談の際には、利用者には、はい、いいえで答えさせる場合がかなり多いので、この仕組みも、最適とはいえないような気がして、数枚作った段階で、他のツールを探すことにしました。

さらにツール探しの旅は続きます。

法律チャットボットの作り方 その1-人工知能 対 人工無脳(?)

今年も、3月末までは、いろいろな調査関係で、結構、忙しかったわけですが、法律のチャットボットを作ってみたいなあと漠然と思っていました。
4月になって、作ろうと決意して、いろいろと調べてみると、いろいろとおもしろいことを感じたので、その備忘もかねて、すこし書きとめて置こうかと思います。

基本的には、クラウドまでは、新規技術も実際に体感していたけど、人工知能は、自分でいじってなかったので、あまり語れない(ただ、統計学は、きちんとわかるけどね)から、お勉強としていじってみましょ、というところです。

1 イメージ

最終的なイメージは、事務所のホームページのお問い合わせのページに、リンクをおいておいて、いろいろいなプラットフォームから、チャットで問いあわせしてもらって、それに対して、自動的に回答して、最後は、事務所への依頼に誘導して、その上に、事務所に依頼してもらうというしくみです。最終的に依頼してもらえる段階では、弁護士が、いろいろとどんな場合にも必要になるような一般的な質問に対しては、事前に回答してもらって、細かい点や困難な点について依頼者からききとりをすればいいというようなレベルまで準備ができているという仕組みです。

でもって、最初に準備する項目は、駒澤綜合法律事務所での得意分野である相続、離婚、債務、交通事故、不動産を必須にして、それ以外については、今後、追って準備するのがいいかな、ということです。

2 論点

このように考えたときに、具体的に、(1)どのプラットフォームに、(2)どのような仕組みを作っていって、(3)どこで仕組みの構築にかかる費用をマネタイズするか、ということ一緒に考えることなります。

(1)プラットフォーム
プラットフォームですが、とにかく、利用者が多くて、セキュアなメッセージ通信ができるものがいいです。わが国でいえば、Line、FaceBook,(Microsoft)Skypeあたりでしょうか。あと、できれば、プログラミングなしでできるといいなあ、ということになります。

(2)仕組み
実際に作っていきながら、わかったのは、(A)事前に法律相談のシナリオを作っていって、それをもとに、選択肢をしめして、そこから選んでもらうシナリオ方式にするのか(人工無脳?)、(B)相談者に自由に発言させて、それを人工知能で認識するのか、とい基本的に二つの方法があるということです。

特に、今回、シナリオベースで作ってみて、人工無脳(?)というものを、単なる定義の問題としてではなくて、実際の感覚として理解できたのは、よかったです。

あと、watsonの仕組みをいじってみると、a)intendとentityから、表現の意味を判断して、b) その意味に適する回答を自律的に準備するというのがチャットボットにおける人工知能と定義できるのかなと感じることができました。そうだとすると、「intendとentityから、表現の意味を判断して」なんていうのよりも、「相談したいのは、何」と聞いて、「相続、離婚、債務、交通事故、不動産、その他」から、タップしてもらったほうがはるかに効率的です。表現の意味の自律的判断もしくは回答の自律的準備がない場合を人工無脳(?)と定義することができるかと思います。

このように考えると、法律相談チャットボットの場合には、人工無脳(?)のほうが効率的であるということがいえます。

そもそも、法律は、これこれの事実があるときに、この効果が発生するとできているので、それらの事実がありますか、と聞いたほうがはるかに早いです。普通の人間の会話のなかで、もっともアルゴリズム的な処理に適している会話なような気がします。ということで、シナリオ式を優先するということにしました。

マネタイズは、よくわからないわけですが、法律のチャットボットは、事務所の宣伝ツールとしても、また、法律サービスのポータルのツールとしても可能性は高いと思います。たとえば、交通事故のチャットをしていて、最後は、この問題に詳しい交通事故専門の弁護士を探しますとかいわれて、近くの弁護士は誰々です、とでると、ホームページで探すのよりも、なぜか親近感がわきそうな気がします。

あと、今一つ実感したことですが、事務所にとっても、きわめて事務の効率化を図れるということです。チャットの情報を依頼者がみずから、データとして入力してくれる/揃えておいてほしい書類を準備して相談にきてくれるというのは、事務所を経営している身にとっては、非常に助かるかと思います。

3 ツールから考える

Chat botを作るためのツールは、たくさん、発表されています。

今回、作成するために試したものでも

日本語 repl.ai hachidori

英語 wit.ai Bluemix chatfuel

などがあります。これらのツールの具体的な使い方やら評価は、またの機会にしたいと思います。

ということで、とりあえず、法律相談支援チャットボットが完成して、事務所のホームページからメッセージを送れるようにしておきました。

4 人工無脳の意義について

5月8日追記です

なお、上記では、シナリオ的なものをすべて、人工無脳として、記載していますが、人と知的な会話のシュミレートという要素を備えていないので、人工無脳ともいえないのではないかという指摘を受けました。

今回のツールは、まずは、チャットボットという形式を法律相談に利用してみたら、何が見えるのかという実験になるので、その意味で、人工無脳という定義にも該当しないのであれば、それは、それでいいかなと思います。それに伴って、タイトル等も人工無脳(?)に変更しました。