見出し画像

HEROKU、PYTHON、勝手な言葉

初めに

9本目の投稿です。

THE HANONという電子音楽ユニットをやっています。
今日は、先月つくったLINE BOTを改良した事について書きます。

前回の日記はこちらです。
LINE Botで自動作文
https://note.com/farewell_to_8bit/n/n2052b0b7e81b

LINE BOTのしくみ

まず前回作ったLINE BOTとは、
ひらがなで話しかけると、THE HANONの音楽を説明してくれるチャットボットです。
こんな感じです。

入力された言葉をもとにあいうえお作文を作るシステムです。

たとえば「おはよう」と話しかけたら、
「お」「は」「よ」「う」に分解して、

「お」そろしい
「は」ちみつが
「よ」るに
「う」まれた

という文章を作成します。

1語目は「お」です。
「お」で始まる形容詞をいくつか登録してあって、
そこからランダムで1語選んで返すので、この場合は「おそろしい」が選択されたというわけです。
「おはよう」は4文字なので、この処理が4回行われて、文が完成します。
図にするとこんな感じです。

LINEで話しかけられたことがトリガーとなって、
HEROKUに設置したアプリケーションが起動します。
4つの語句を選定して文を作り、
LINEへ戻します。

こうすると、話しかけられた言葉に対して
応答しているような演出になります。

登録した言葉はいまのところ400語くらいです。
初回はこの語群をプログラム中に直接書き込んでいました。
なので、語句を増やしたいときは本体のプログラムファイル(Python)を書き換え、Gitに接続し、他のファイル群も含めた再構築を行うのでとても非効率でした。

これを、今回の改修でデータベース化しました。
データベースから品詞別、頭文字別に言葉を取り出す仕組みにして
プログラム上にべた書きしていた語群を削除できました。
図にするとこんな感じです。

語句を増やしたいときは、データベースのほうに書き込めばよいので、アプリケーションを再構築する作業は不要です。
やっと「しくみ」っぽくなってきたので、まずは満足です。

今回勉強できたこと

プログラムやデータベース構築については「なぜか動いた」というレベルなので、まだまだ解っていないです。

ターミナルでHEROKUのデータベースへ接続すること
ターミナルでPOSTGRESのSQLでデータベースに書き込むこと
ターミナルでデータベースの内容を取り出すこと
Pythonを使ってHEROKUのデータベースに接続すること
Pythonを使って複数のレコードをHEROKUのデータベースに書き込むこと
Pythonを使ってデータベースの内容を取り出すこと

このあたりができるようになりました。

勝手に作文される自分の言葉

これは作った本人にしか解らないことですが。

このBOTが書く文章は、
自分で考えた言葉だけで構成されているため、
知っている人が書いたかのような感覚で読むことができます。

しかしランダムで組み合わされたパーツが繰り出す文脈は予想外です。
語句のチョイスは確実に自分なのだけど、なにか違和感の漂う不思議な感覚なのです。

自分のコピーができたとして、それが言葉を話したらこのような事になるんだろうかと思います。まだ登録語句は少ないけど。
人は言葉で出来ていて、
個人を定義する枠組みのひとつは、確実に言葉なんだなーと、
勝手に並べられた言葉を見ながら思いました。

お知らせ

THE HANONは電子音楽を作曲しています。
最新の音源はPLYDSです。

ストリーミングでもお聴き頂けます。

PLYDS by THE HANON
アルバム • 2020年 • 9曲 • 27分
https://linkco.re/xbNgBrMN

作ったLINE BOTはここにいます。
https://lin.ee/oAbPZsm

今日は以上になります。
駄文にお付き合い頂きありがとうございました。

#最近の学び #THE_HANON #python #IT #LINE

この記事が参加している募集

最近の学び

この記事が気に入ったらサポートをしてみませんか?