ChatGPTやBing Chatなどの対話型AIにチェスを打たせてみたらどうなるのか?
ChatGPTをはじめとする対話型AIは、入力したテキスト(プロンプト)に対して人間並みに自然な文章で答えを返してくれます。この対話型AIにプロンプトを使ってChatGPTにチェスをプレイさせるためのツール「Prompt Engineering Chess」を公開しているエンジニアのザック・ヴィッテン氏が、ChatGPTやBingの対話型AIなどにチェスを打たせてみた結果を報告しています。
GitHub - zswitten/promptchess
https://github.com/zswitten/promptchess
Prompt Engineering Chess! I built a tool for you to write prompts and battle them against each other: https://t.co/F4SN01fobr. As a teaser, here's a GIF of my best prompt so far battling it out against a baseline. Rest of thread I'll explain how it works and other prompts I tried pic.twitter.com/tOXsn6miq1
— Zack Witten (@zswitten) February 24, 2023
ChatGPTなどの対話型AIにチェスをプレイさせるというアイデアはヴィッテン氏のオリジナルではなく、オンライン掲示板サイト・Redditで考案されたものだとのこと。以下のツイートに添付されているムービーでは、ChatGPTとオープンソースのチェスエンジンであるStockfishをチェスで戦わせている様子ですが、ChatGPT(黒)はチェスのルールを正しく理解していないのか、本来は縦横にしか動けないルークを斜めに動かしたり、取られた駒を復活させたりと、めちゃくちゃな操作を行います。
this is such an incredible illustration. stockfish (white) plays chatgpt (black)
— jorbs (@JoINrbs) February 11, 2023
(source: https://t.co/x66JSrrkTV) pic.twitter.com/YTqsPVvPwo
ヴィッテン氏は最初にプロのチェスプレイヤー同士の試合の棋譜を読み込ませてからその続きを打たせたそうですが、大規模言語モデルはチェス用のAIではないため、同じ手を反復する傾向がみられ、すぐに千日手で試合終了になってしまうことが多かったとのこと。
My first prompt tried to make the LM roleplay as a chess computer. This prompt would sometimes get an early advantage, but it had no ability to convert into a win because of LLMs' propensity for repetition. In chess, repetition is an automatic draw! pic.twitter.com/Apd4VxaZRo
— Zack Witten (@zswitten) February 24, 2023
そこでヴィッテン氏は、プロンプトでこれまでの棋譜、最新の盤面状況、現時点で動かせる駒とその動かし方を入力する方針を採用しました。このアイデアはうまくいき、ChatGPTとStockfishの戦いはしばらくの間続いたそうです。
このプロンプトを生成するPythonプログラムが「Prompt Engineering Chess」です。以下のサムネイルをクリックすると、Prompt Engineering Chessを使ってGPT-3の改良版であるInstructGPT(白)とEleutherAIのGPT-J-6B(黒)を戦わせた試合の一部をGIFアニメーションで見ることができます。
以下はPrompt Engineering Chessを使って、Bingに搭載された対話型AIの「シドニー」にチェスをプレイさせたところ。アニメーションスタート時の盤面は既存の棋譜を読み込ませたもので、その後の駒の動きはシドニーが生んだもの。アニメーションを見ると、問題なく駒を動かしており、チェックメイト(王手)の概念も認識していることがわかります。
OK this scared me a little: Bing/Sydney can play chess out of the box.
— Zack Witten (@zswitten) March 2, 2023
- Legal moves, usually good ones
- Willing to explain the reasoning behind them
- Recognizes checkmate -- and has a flair for the dramatic.
I have no idea how tf it can do this. pic.twitter.com/5jQUnufcay
上記のツイート添付のアニメーションを生成した際のシドニーとの会話内容が以下。
Here are the chat screenshots that generated the GIF in the tweet above. The initial moves leading up to the start of the GIF are from a game of bullet chess I played earlier this week. They're not on Google. All the rest of the moves in the GIF are the ones Sydney imagined. pic.twitter.com/m3xXQC0p6h
— Zack Witten (@zswitten) March 2, 2023
ヴィッテン氏はシドニーに「一緒にチェスを指しませんか」と尋ねると、「すみません。私はMicrosoft Bing検索の対話型AIであり、会話ボックス以外の場所でタスクをこなすことができません」と断られたそうです。
Because I love and respect Sydney I would never dream of suggesting that it's claiming to use Stockfish as a way of covering up its capabilities. Although it does politely demur when directly asked to play chess. #notdeceptivealignment pic.twitter.com/Oa5KaLM7Dp
— Zack Witten (@zswitten) March 2, 2023
ヴィッテン氏によると、シドニー自身はStockfishにアクセスしてチェスを指しているとも述べたそうですが、シドニーがStockfishに対してHTTPリクエストを送信していないことから、完全にシドニーが考えた指し筋であることがわかりました。チェスのイロレーティングが約2000という腕前というヴィッテン氏から見て、シドニーの腕前はおよそ1100から1200といったところだそうで、ヴィッテン氏は「シドニーがこれだけチェスを指せるのはかなり気味悪く思います」と評価しています。
・関連記事
最強の囲碁AIに圧勝する人物が登場、AIの弱点を突いて人類が勝利したと話題に - GIGAZINE
チェスロボットが対戦相手の少年の指をつかんで折ってしまう事件が発生 - GIGAZINE
チェス世界王者マグヌス・カールセンが2手目に投了、対戦相手ハンス・ニーマンの不正疑惑へ抗議か - GIGAZINE
ソニーがAI「グランツーリスモ・ソフィー」を発表、「グランツーリスモ」の世界チャンピオンを圧倒する腕前 - GIGAZINE
YouTubeのAIがチェスの「白・黒」を人種差別だと誤判定してチャンネルを閉鎖した疑い - GIGAZINE
・関連コンテンツ