ぴりかの構成
今回はぴりかの構成、どのように作るかを書きます。
ざっとまとめると次の8個。
①main.py
②gui.py
③voice.py
④tokenize.py
⑤response.py
⑥apps.py
⑦feelings.py
⑧data.py
それぞれ何なのか書いていきます。今回のブログは長くなりそうです。
①main.py
メインの処理です。これを実行することでぴりか全体が動きます。
②gui.py
GUIの処理です。
PythonにはもともとtkinterというGUI用ライブラリが入っていますが、
デザインが古めかしいより良いUIを作るためにPyQt5を使用します。
初めて入れたときアニメーションがしゅるってなっててとにかく凄くて採用することにしました(←語彙力)。
③voice.py
音声合成方面の処理です。
当初AquesTalkPiを使用しようとしていましたが、2次配布ライセンスを購入したり
ユーザーが後付でインストールしたりするのは面倒だろうなぁと思ったので
自作しようと思います。
ただすぐにパッと作れるもんじゃないので最初は音声合成機能は搭載せず、どこかのバージョンアップで入れるという流れにします。
④tokenize.py
形態素解析方面の処理です。
形態素解析っていうのは簡単に言えばコンピューターに辞書を引かせるようなものです。
これはjanomeを使用しますが、バージョンアップで自作モジュールに切り替わる予定です。
自作するときは新語とか流行語とかも積極的に取り入れた感じのものにします。
乞うご期待。
⑤response.py
応答を生成する処理です。tokenizeで形態素解析したものをdata(後述)に送り、文を作成して出力します。
⑥apps.py
アプリ方面の処理です。『東京の明日の天気は?』とか、『スパークルを流して』とかに反応して天気を取得したり音楽を流したりします。
⑦feelings.py
感情計算方面の処理です。『嬉しさ』『自己評価』『信頼度』『活動度』の4つの観点から、 -1.00~+1.00の数値で表します。基本ユーザーの入力の応じて変化しますが、『活動度』のみその場の天気や時刻にも影響されます。『信頼度』と『活動度』が-0.95を下回るとappsが起動できないという面倒な仕様にします。
⑧data.py
ここが一番力を入れるところ。自然言語処理や音声合成の情報が全部入っています。
またぴりかが好きなものなどのAI情報もこの中に入っています。
まあ大体こんな感じですね。今の所こんなものしかできていませんが、温かい目で見守っていてください。
それではまた。