GithubHelp home page GithubHelp logo

hoshinodis / reudy19 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mmasaki/reudy19

0.0 2.0 0.0 248 KB

Ruby1.9で動作する人工無脳ロイディ

Home Page: http://glasssaga.dip.jp/

License: Other

Ruby 73.75% HTML 24.69% CSS 1.55%

reudy19's Introduction

Reudy on Ruby1.9

改変した人

  • Glass_saga

説明

東京工業大学 ロボット技術研究会の市川 宙(Gimite)さんが中心となって作成した日本語人工無脳ロイディを、Ruby1.9で動作するようにしたものです。
Ruby1.8では動作しません。

使い方

IRCボットとして使う場合

publicフォルダにあるsetting.ymlを編集してから

ruby irc_reudy.rb

でIRCクライアントが立ち上がります。  

Twitterボットとして使う場合

動作には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」というファイル名で保存されます。

Lingrボットとして使う場合

動作にはSinatraが必要です。

gem install sinatra

でインストールして下さい。

デフォルトではWEBrickが4567番ポートで動作するはずです。
Lingrにアクセスし、SettingsのBotsからcreate a new botをクリックして、Callback URLにWEBrickへ到達可能なURLを指定して下さい。

改変の内容

コード

ソースコードをできる限りRubyコーディング規約に沿うように改変しました。

DBM周りの変更

本家ロイディは文尾辞書の保持にRuby/GDBMを使用していましたが、PStoreをデフォルトのDBMとしました。
また、[],[]=などの数個のメソッドを定義したrbファイルを作成して lib/reudy/以下に置くだけで、利用出来るDBMを簡単に追加できるようになっています。

Twitter用インターフェースの追加

twitter_reudy.rbというTwitter用インターフェースを追加しています。

Lingr用インターフェースの更新

Lingrの仕様変更に対応しました。

コマンドラインオプションの解釈

コマンドラインオプションのパースにOptionParserを使うようになりました。

単語の抽出にMeCabを使えるように

単語の抽出に形態素解析エンジンMeCabを利用できるようになりました。
デフォルトでは本家ロイディと同じく正規表現によって単語の抽出を試みますが、コマンドラインオプション-m又は--mecabを付けて起動すると
単語の抽出にMeCabを使用します。

MeCabを使用する為にはMeCabとMeCabから利用可能な辞書、MeCabのRuby用バインディングmecab-rubyが必要です。

reudy19's People

Contributors

mmasaki avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.