OpenAIのGPT-6 Astraは、いまや強い人間を相手に、筋の通ったチェスを1局通して指せるようになりました。最近のテスト対局で、このモデルは白番を持ち、鋭い定跡に沿って指し、意図的に見える罠を仕掛け、エンジン評価で最大+3.5の優勢を築きました。それでも負けました。中盤でいくつかの好手を逃したことで黒にキングサイドへの攻撃を許し、クイーンを捨てる手からチェックメイトで対局は終わりました。この結果は、言語モデルの推論が今どこにいるのかをよく示しています。数年前の混沌としたチャットボットのチェスとは比べものにならないほど進歩した一方で、攻撃のパターンの一部はまだ見えていません。

反則手から本物のチェスへ

3~4年前から、ChatGPTのようなチャットボットを支えるAIである大規模言語モデル(LLM)にはチェスがまったく指せない、というのが一般的な見方でした。ChatGPTとチェス専用エンジンStockfishの初期の対戦は、チャットボットが反則手を指し、駒が突然現れたり盤上を飛び回ったりして、ばかげた展開になりました。チャットボット同士の大会も、たびたびでたらめな悪手の応酬で崩壊していました。

GPT-6 Astraはそのパターンを打ち破ったようです。この対局でAstraは次のような指し方をしました。

  • 反則手を指さず、存在しない駒を作り出すこともなかった
  • でたらめな悪手で駒を損することもなかった
  • 鋭い序盤の局面で、エンジンの最善手を何度も見つけた
  • 差し出されたポーンを取り、ポーン2枚の確かな優位に変えた
  • 意図的な罠に見える手を少なくとも1手指した

一つ疑問が残ります。Astraが序盤の手を自分で計算したのか、モデル内部に蓄えられた定跡の知識を引き出したのかははっきりしません。

本当の計算力を試すために選ばれた鋭い序盤

黒は、暗記よりも計算が報われる序盤をあえて選びました。フレンチ・ディフェンスの中でも特に鋭いことで知られるウィナワー・バリエーションです。狙いは、バランスの崩れた局面を作り、モデルが手順を暗唱するのではなく局面を評価できるかを確かめることでした。

手数 白(GPT-6 Astra) 黒 意味
1-2 e4, d4 e6, d5 フレンチ・ディフェンスの典型的な中央の緊張
3 Nc3 Bb4 ウィナワー・バリエーション、白のナイトをピン
4-5 e5, a3 c5, Bxc3+ 白は陣地を広げ、黒はポーンチェーンを攻撃
6 bxc3 Ne7 白にcファイルのダブルポーンが残る
7 Qg4 g7のポーンを狙う攻撃的な定跡手
  1. Qg4は、両者に激しい戦術が飛び交うことで知られる、いわゆる「ポイズンド・ポーン」の変化につながることがよくあります。黒は本線を外れてa5へのクイーンのチェックを選び、モデルに自分で考えさせようとしました。Astraは落ち着いてBd2と応じ、c3のマスを守りました。続いて黒がNc6と駒を展開してg7のポーンをわざと取らせると、AstraはQxg7でそれを取り、さらにQxh7で2枚目のポーンを手に入れました。

黒の計画は、開いたファイルを使ってキャスリングしていない白キングを攻めることでした。しかしエンジンを相手にこうしてポーン2枚を差し出すのは正当化しにくく、黒自身も後にこのポーンサクリファイスを投機的だったと認めています。黒がクイーンサイドにキャスリングした後、Astraはエンジンが推す13. Qd3を見つけ、クイーンを中央に置いてクイーン交換を持ちかけ、黒の反撃の芽を摘みました。

14. Be2の罠

最も印象的な手は次に来ました。Stockfishは14. h4を推していましたが、Astraの14. Be2は一見、g2のポーンの守りをあっさり放棄したように見えました。しかし黒のルークがg2で取れば、白はNg5と応じてf7を攻めつつ、ルークの逃げ道をふさげます。この手は見落としではなく、意図的な罠だったと考えられます。黒は危険に気づき、誘いに乗りませんでした。

白のナイトが白キング側の近くで黒のルークを閉じ込めようと構えるチェス盤の俯瞰

▲ 侵入するルークを狙うナイトの罠

優勢がこぼれ落ちた場面

ポーン2枚得のAstraには、勝負を決めるチャンスが何度かありましたが、いずれも逃しました。

  1. Bg5ではなくキャスリング。 Bg5を指していれば黒のルークの活動を封じ、クイーンがd1へ退く道も開けていました。この手があれば、黒の局面はおそらく絶望的だったでしょう。Astraがキャスリングすると、黒はc4と突いてQxc2でポーンを1枚取り返しました。それでも白は、ビショップペアとより速い攻撃の筋のおかげで、約+3の評価を保っていました。
  2. Nh4ではなくg3。 hファイルでのメイトの脅威を止めるため、Astraはg3を指しました。Nh4ならクイーン交換を強いるか、黒のクイーンを窮屈なマスへ追いやれていました。ここでは、駒得している側はたいていクイーンを交換して相手の反撃手段を消すべきだという、チェスの基本原則が当てはまります。
  3. c5ではなくBb4。 Astraはc4で中央をこじ開けました。攻撃的ですが諸刃の剣の選択です。正しい続きはc5で、斜線を固定して黒の白マスビショップを局面から締め出せたはずでした。Bb4でその締め付けが緩み、評価が大きく揺れました。

黒もミスをしました。ナイトを盤の端のa5へ送った手は時間の無駄で、AstraはBd1と応じました。ただ、この応手にも代償がありました。白に必要なビショップを交換してしまったからです。白のポーン7枚はすべて黒マスにあり、そのため白の黒マスビショップは自分のポーンに阻まれた「悪いビショップ」、白マスビショップは自由に動ける「良いビショップ」でした。良いビショップを手放すと、その色のマスすべてが弱くなります。

黒が形勢をひっくり返した経緯

黒は、開いたhファイルと、クイーンと同じ方向を向いた白マスビショップを使って、白キングに攻撃を向けました。この局面では、駒の一般的な価値はもはや全体像を表していませんでした。ビショップは通常3点、ルークは5点と数えますが、ここでは活発な黒のビショップが少なくとも4点の価値を持ち、守りに縛られた白のルークは4~4.5点ほどに下がっていました。

決着までの流れは次のとおりです。

  1. 黒はQh5と指してRg4を狙いました。Astraはピンされたルークへの脅威に気づいてc8へ引きましたが、この後、どのエンジン評価も黒の決定的な優勢を示しました。
  2. 黒はルークをg4へ回し、白のクイーンをd2へ押し戻しました。
  3. 黒はNxd4と指しました。クイーンでナイトを取ると開き攻撃でクイーンを失うため、Astraは別の駒でナイトを取りました。
  4. 黒はQxh2+でクイーンを捨てました。Kxh2の後、Rh4+でキングをg1へ追い込み、Rh1でチェックメイトとなりました。

Kf1のような受けを選んでいても、圧倒的な攻撃の前に負けていたでしょう。Astraは勝勢の中盤を築きながら、自分のキングの周りで形作られていく攻撃のパターンを読めませんでした。

決定的なメイト攻撃で、黒のクイーン、ルーク、ビショップが白キングに迫る場面

▲ 対局を終わらせたクイーン捨て

遅い指し手と控えめな自己評価

対局には約1時間半かかりました。Astraは複雑な局面で1手に2~3分をかけることがあり、セッションは何度か再開が必要になりました。

対局後、Astraは自ら対局の総括を書き出しました。黒の指し手をChess.comのラピッドで1400~1700、自分の指し手を1000~1300と評価しました。また、ルークへのスキュアを許したことと、Kxh2で強制メイトに踏み込んだことを自らの誤りとして挙げました。多くの指し手の質を考えると、この評価は低すぎるように見え、モデルの自己評価はまだ当てにならないことがうかがえます。

この対局からわかること、そして生かし方

項目 結果
ルール 反則手やでたらめな悪手はなし
序盤 鋭い定跡の中でエンジンの最善手を見つけた
最大の優勢 エンジン評価で+3.5
弱点 Bg5とc5を逃し、メイト攻撃に気づかなかった
速さ 1局約90分、難しい手には2~3分
自己評価 自分の指し手を実力より大幅に低く評価

GPT-6 Astraは手ごわいチェスの対戦相手になりましたが、鋭い攻撃の前にはまだ崩れることがあります。この対局の示すことを生かすには、次の点が役立ちます。

  • AIモデルの推論力を試すなら、 よく知られた定跡や教科書の例から少し外れた問題を出し、記憶を引き出すのではなく計算させるようにします。
  • 練習相手としてAstraと指すなら、 よく知らない序盤は避けましょう。序盤の投機的な指し方はすぐにとがめられました。
  • モデルの自己評価や評価値は大まかなメモとして扱います。 判断を信頼する前に、専用のエンジンで確かめましょう。
  • 時間のかかる対局を想定しておきます。 1局約90分かかるため、手早い練習よりも深い分析に向いています。