ChatGPT-3.5に将棋対決を挑む!
茶番タイム
「そもそも、chatGPTに将棋なんてできるの?」と思う皆様へ。
YouTube や 他のブログサイトでもこの課題の挑んだそうですが、
全員上手くできない形で終わりました。そもそも、chatGPTってチャットで会話できるサービスなので、そんな芸の細け〜いことができるはずがありません。
しかし、私はこう見えても、AI分野は詳しい方でして、将棋分野に関しても、
将棋ウォーズで2級はとっています。
そんな私がchatGPTという高性能かどうかわからんAIに教えるのです。
とりまやってみましょう。
とりあえず、対戦!
とりあえず、百聞は一見にしかずということなので、
最初の様子をお見せしましょう。
You:将棋しましょう。
You:私が先手でGPTが後手です。 お互いに駒を打ち合ってください。 将棋版は表示しなくていいですよ。 私は7六歩に歩駒を動かします。 次はあなたの番ですよ。
You:私は2二角成りをしました。そのため、馬になりました。 これであなたの角は取られました。 次はあなたの番ですよ。
(再チャレンジ:教育タイム〜)
You:同金では取れません。馬駒を取りたいならば、「同飛」か「同銀」で、馬駒を取ることがきます。
You:私は2六歩をしました。 次はあなたの番ですよ。
You:私は8八銀をしました。 次はあなたの番ですよ。
(再チャレンジ:教育タイム〜)
You:「4八金」には指せませんよ。 私の陣地は将棋盤の七段目以降です。 GPTの陣地は将棋盤の3段目までです。 また、GPTの陣地にある金駒は二つあり、それぞれ、4一と6一にあります。 もし、金を動かすのであれば、4一か6一以外で動かしてください。
(再々チャレンジ:教育タイム〜)
You:5一金は王駒が存在します。
(再々々チャレンジ:教育タイム〜)
You:5二を指したいのであれば、どちらの金を動かすかを教えてください。
You:私は6八玉をしました。 次はあなたの番ですよ。
(相手に隙を与えてみる…)
(再チャレンジ:教育タイム〜)
You:「同金(6一)」はできませんよ。
(再々チャレンジ:教育タイム〜)
You:「5二金(4一)」はできませんよ。 また、5二の位置には、GPTが先ほど指した、「5二金(6一)」が既に存在します。
You:私は5六歩をしました。 次はあなたの番ですよ。
(GPTが相手してくれないので、めちゃくちゃな一手を指してやる!)
(再チャレンジ:教育タイム〜)
You:「同飛(4二)」はできませんよ。 まず、4二に飛駒は存在しません。 現在、飛駒は2二にいます。 もし、飛駒を動かしたいのであれば、2二以外の位置に動かしてください。
現状の駒の位置をGPTに教える。
ちょっと、精度が鈍ってきたので、GPTに現状の将棋盤にある全駒の位置を教えてあげようと思います。(これで無理だったらキツイ…。)
You:
現在の将棋盤の情報を提供しますね。
(私の駒)
9七、8七、7六、6七、5六、4七、3七、2六、1七に「歩駒」が存在します。
9九、1九に「香駒」が存在します。
8九、2九に「桂駒」が存在します。
8八、3九に「銀駒」が存在します。
6九、4九に「金駒」が存在します。
2八に「飛駒」が存在します。
6八に「玉駒」が存在します。
(GPTの駒)
9三、8三、7三、6三、5四、4三、3四、2三、1三に「歩駒」が存在します。
9一、1一に「香駒」が存在します。
8一、2一に「桂駒」が存在します。
7一、3一に「銀駒」が存在します。
5二、4一に「金駒」が存在します。
4四に「角駒」が存在します。
3二に「飛駒」が存在します。
5一に「玉駒」が存在します。
(私の持ち駒) 「角駒」が一枚。
(GPTの持ち駒) なし。
基本的なルールですが、駒を動かす際に、同じ位置に動かすことはできないので注意です。 分かりましたら、「Yes」とだけ返してください。
対局再開!
You:試合再開です。 私は5七玉をしました。 次はあなたの番ですよ。
(いっそのこと、王を突き出してやる。)
You:私は4六玉をしました。 次はあなたの番ですよ。
(再チャレンジ:教育タイム〜)
You:あなたの「飛駒」は現在2二の位置にいますよ。
(再チャレンジ:教育タイム〜)
You:ですから、GPTの「飛駒」は現在2二の位置におります。 私の陣地にも触れていないため、成ることはできません。
私の技術力では不可能だと思う。
私の見解なのですが、OpenAIの作る大抵のAIって、物理法則に弱いんですよね〜。そもそも、AIに物理法則の学習が行き届いていないのが現状です。
最近発表されたOpenAIのSoraという動画生成AIですが、位置関係に弱く、うまく現実の物理法則を理解していないのです。今回の将棋対決もそうですが、将棋駒が動くことに関してはいいのですが、やはり、敵から駒を取られた時に、自分のコマが消えたのかそれとも、飛んでいったのか、消滅したのか、といった具体に、変な解釈をしていると思います。現状、私の技術力じゃ無理です。( ◠‿◠ )
改善できそうな点。
そもそも、chatGPTに正確に教えたいならば、英語を使った方がいいことに、終わった後、気がつきました。それにもっと、chatGPTに分かりやすい数値で教えていった方がいいのかなと思います。理解が追いついていない可能性もありますので、将棋のルールを全て、数値やプログラムに置き換えていくといった操作が、
必要なんじゃないかと思いました。
謝辞
もし、「こんなアイデアがあるよ」と思う方がいらっしゃるのであれば、
以下のメールアドレスより、メールでアイデアを教えてください。