バージョンアップ決定!?
あなたのご要望をお待ちしております。
人工無能 Rev.3.0-1
友達に教える。
| 人工無能のRev. 3.0のkakasiなしバージョンです。 |
| 特徴
|
特徴
- dbmを使っていますので何となくかっちょええ気がします。
- 今までの人工無能とは辞書の互換性はありませんが、頑張れば変換可能です。
- オプションで辞書引き機能をつけられます。
- kakasiを使ってないので、辞書引きのキーワードは完璧にマッチしないと答えてくれません。
まずは、こちらのサンプルをご覧下さい。
(新しいブラウザにて表示されます。サンプルのログ・辞書はNo.38と共用してます。)
サンプル版には、プロレス辞書p-dic(法林 浩之さん作、VECTORからダウンロードしました)を適当にいじったものを入れています。
〜〜を辞書でひいて、と話しかけると〜〜を辞書でひいてくれます。
辞書のキーワードは平仮名にしてありますので、獣神サンダーライガー→じゅうしんさんだーらいがー、と平仮名にして聞いてあげて下さい。
|
| 必要なファイルや道具
|
まず必要になるのは、EUCコードを扱えるエディターです。
MacintoshならばJeditやNuEdit、Windowsなら秀丸エディターなどといったエディターがお勧めです。雑誌の付録CD等でお探し下さい。これらのエディターは、シェアウエアですので、気に入ったら作者に送金しましょう。下記のファイルをダウンロードして下さい。
- Windowsの場合
- LHA自己解凍ファイルで保存されます。
ダブルクリックで、インストールして下さい。
- Macの場合
- 自己解凍ファイルとして保存されます。
スタッフイットエキスパンダーがあれば、ダブルクリックで自己解凍します。
- UNIXの場合
- tar + compressです。
zcat no39.tar.Z | tar xvf - で解凍して下さい。
|
| ファイル名 |
説 明 |
| zhagi3.cgi |
メインルーチン |
| zhagi3teach.cgi |
教えるCGI |
| zhagi3.pl |
人工無能ライブラリ |
| dict1 |
辞書1 |
| dict2 |
ぼけ辞書 |
| mkdb.pl |
dbmファイル作成スクリプト |
| vacuum.pl |
辞書吸い上げスクリプト |
| zhagi3.dat |
ログファイル |
| jcode.pl |
文字コード変換パッケージ。 |
| 以上のファイルが必要になります。
|
| 設置作業 |
zhagi3.cgi、zhagi3teach.cgiの設定部分を設置するサーバーに合わせて変更します。
変更する部分は、
zhagi3.cgi
- #!/usr/local/bin/perl
- $CgiName (このCGIのファイル名)
- $TeachCgi (教えるCGIファイル名)
- $LogFile (ログファイル名)
- $Dict1 (辞書1)
- $Dict2 (ぼけ辞書)
- $HomeUrl (ホームページのURL)
- $OptionDict (オプション辞書。使わない場合はこの行を消す)
- $MaxWrite (最大書き込み数-3)
zhagi3teach.cgi
- $CgiName (このCGIのファイル名)
- $ZhagiCgi (チャットCGIファイル名)
- $LogFile (ログファイル名)
- $Dict1 (辞書1)
- $HomeUrl (ホームページのURL)
等です(.cgiファイルのコメント部分を参照して下さい)。
|
| 転送・パーミッションの設定 |
まず、FTPソフトで全てのファイルを転送します。
ここでは、仮に「public_html」というディレクトリの中に「cgi-bin」(cgi用)「tmp」(ログデータ用)「icons」(画像ファイル用)というディレクトリを作成して、その中に設置するものとします。尚、転送モードは全てTEXTとなります。
|
cgi-binディレクトリに入れるもの
| ファイル名 |
パーミッション |
コマンド |
| zhagi3.cgi |
705 or 755 |
chmod
705 zhagi3.cgi
chmod 755 zhagi3.cgi |
| zhagi3teach.cgi |
705 or 755 |
chmod
705 zhagi3teach.cgi
chmod 755 hpost_admin.cgi |
| zhagi3.pl |
604 or 644 |
chmod
604 zhagi3.pl
chmod 644 zhagi3.pl |
| jcode.pl |
604 or 644 |
chmod
604 jcode.pl
chmod 644 jcode.pl |
tmpディレクトリに入れるもの
| ファイル名 |
パーミッション |
コマンド |
| dict1 |
604 or 644 |
chmod
604 dict1
chmod 644 dict1 |
| dict2 |
604 or 644 |
chmod
604 dict2
chmod 644 dict2 |
| zhagi3.dat |
606 or 666 |
chmod
606 zhagi3.dat
chmod 666 zhagi3.dat |
| mkdb.pl |
705 or 755 |
chmod
705 mkdb.pl
chmod 755 mkdb.pl |
| vacuum.pl |
705 or 755 |
chmod
705 vacuum.pl
chmod 755 vacuum.pl |
| 辞書設置作業 |
- 辞書のフォーマット
辞書のフォーマットは、下記のようになっています。
- キーワード%!%答え
- 複数の答えが有る場合は、キーワード%!%答え1#!#答え2#!#答え3....
- 入力した人の名前を入れたい場合は、ynameと書く。
- ynameには、「さん」が自動的につくので、ynameさん、と書いてはいけない。
キーワードは重複していてはいけません(複数行に同じキーワードがきてたらダメ)。
同じキーワードが複数ある場合は、(行の)最後に出てきたキーワードに対する答えのみ有効となります。
ぼけ辞書は、従来通り、1行に1つづつお返事を書いていって下さい。
- オプション辞書のフォーマット
オプション辞書のフォーマットは、下記のようになっています。
- キーワード%!%答え
- 複数の答えが有る場合は、キーワード%!%答え1#!#答え2#!#答え3....
- キーワードは、必ず平仮名で書く。(漢字がわからない、間違えた、という場合に対応する為)
- dbmファイルの作成
dict1、オプション辞書は、mkdb.plを使ってdbmファイルにします。
mkdb.plの使い方は、
- perl mkdb.pl 辞書ファイル名
です。
dict1を変換するには、tmpディレクトリ内で、
- $ perl mkdb.pl dict1
とします。
zhagi3.plは、でき上がったdbmファイルを参照しますので、元のdict1は消しておきます。
また、テキストファイルからdbmファイルに変換すると、ファイルサイズが2〜4倍になりますので、ディスク容量にも気をつけて下さい。
- dbmファイルからの吸い上げ
dmbファイルは直接テキストエディタ等では読めませんので、辞書のメンテナンスをする場合は、vacuum.plを使ってテキストファイルに変換します。
vacuum.plの使い方は
- perl vacuum.pl 辞書名
です。
dict1.xxxを変換するには、tmpディレクトリ内で、
- $ perl vacuum.pl dict1
とします。すると、dict1というファイル(もとの辞書と書式は同じ)が出来上がりますので、これを編集して、mkdb.plで再変換して下さい。
|
| 転送及びパーミッションの変更についての詳しい説明は、こちらです。
以上で 「人工無能 Rev.3.0-1」
の説明を終わります。
尚、ご質問やご意見などございましたら、MLへ参加して下さい。
|
友達に教える。
![[back]](../../../gif/back.gif)
Copyright (C) 1999 Web新撰組 All Rights Reserved.