- Glass_saga
東京工業大学 ロボット技術研究会の市川 宙(Gimite)さんが中心となって作成した日本語人工無脳ロイディを、Ruby1.9で動作するようにしたものです。
Ruby1.8では動作しません。
publicフォルダにあるsetting.ymlを編集してから
ruby irc_reudy.rb
でIRCクライアントが立ち上がります。
動作にはrubytterとhighlineが必要です
gem install rubytter highline
でインストールして下さい。
http://dev.twitter.com/apps/new から新しいアプリを作成して、取得したConsumer key/secretをtwitter_reudy.rbに記入して使って下さい。
初回にアクセストークンを取得する為のURLが示されるので、
そのURLにアクセスしてAllowをクリックし、表示された番号(PIN)を入力して下さい。
アクセストークンはtwitter_reudy.rbと同じフォルダに「token」というファイル名で保存されます。
動作にはSinatraが必要です。
gem install sinatra
でインストールして下さい。
デフォルトではWEBrickが4567番ポートで動作するはずです。
Lingrにアクセスし、SettingsのBotsからcreate a new botをクリックして、Callback URLにWEBrickへ到達可能なURLを指定して下さい。
ソースコードをできる限りRubyコーディング規約に沿うように改変しました。
本家ロイディは文尾辞書の保持にRuby/GDBMを使用していましたが、PStoreをデフォルトのDBMとしました。
また、[],[]=などの数個のメソッドを定義したrbファイルを作成して lib/reudy/以下に置くだけで、利用出来るDBMを簡単に追加できるようになっています。
twitter_reudy.rbというTwitter用インターフェースを追加しています。
Lingrの仕様変更に対応しました。
コマンドラインオプションのパースにOptionParserを使うようになりました。
単語の抽出に形態素解析エンジンMeCabを利用できるようになりました。
デフォルトでは本家ロイディと同じく正規表現によって単語の抽出を試みますが、コマンドラインオプション-m又は--mecabを付けて起動すると
単語の抽出にMeCabを使用します。
MeCabを使用する為にはMeCabとMeCabから利用可能な辞書、MeCabのRuby用バインディングmecab-rubyが必要です。