Python3でAIを作りたい その2

前回記事

 

kenteiblog.hatenablog.com


前回はポンコツ丸なるよくわからん言葉を返してくるものを作りました。

ただ、このままでは何にもできません。ピカチュウを食べたいとか言われても困ります。

 

でもいきなり、ピカチュウポケモン⇒捕まえる なんて考えさせることはできないので、一歩一歩着実に進めていこうと思います。

 

ということで今回は、こちらが送った文章を解析してみます。そして解析の結果を画面に表示します。

ソースは以下の通り。

 

AIを作りたい2

 

 

少し長いソースですが、そこまで難しいことはやっていません。

流れとしては、

  1. 画面からメッセージを送る。
  2. Python側でメッセージを解析して、JSON型にして画面に返す。
  3. 帰ってきたデータでテーブルを作る。

といったものです。

1については、前と変わりません。textboxに入力したメッセージをAjaxで送信します。

 

大きく違うのは2でしょうか。

2では、まず形態素解析ライブラリであるjanomeをインストールしておきます。

そして、画面から受け取ったメッセージを上記のライブラリを利用して解析します。
(Tokenizer().tokenize(request.form['reply']) という処理がそれにあたる)

あとは、配列にデータを詰め込んで、json.dumpを利用して画面側にjson形式で返すだけです。

※ensure_ascii=falseはデータに日本語が含まれているため指定してます。

 

最後は3ですが…とりあえずテーブルを作っています。もっとスマートのやり方もありそうですが、jQueryのDOM操作を利用して組み立てています。

 

動かしてみると、以下のようになります。
今回は「吾輩は猫である。名前はまだない。」という有名な一説を解析してみます。

 

f:id:kentei0715:20171203184723p:plain

 

ふむふむ。うまくできているようです。この解析結果をうまく使うと何かできそうな気がします。

…何ができるのか明言はできませんが(´・ω・`)

 

今日はここまで。以上です。

 

2017/12/03 賢帝俊来