囲碁AIのアプリを、AIに作らせてみた
公開日:2026年10月24日 更新日:2026年10月25日
実装も、ライセンスの確認も、すべてAIに任せて、どこまで作れるかを試しました。
「おるふぇ碁」は、囲碁のAI「KataGo」をブラウザの中で動かして、AIと対局したり、AIの候補手を見ながら打ったりできるアプリです。このページは、これを作ろうと思った理由と、作り方の方針を書いたものです。
囲碁AIに、興味があった
きっかけは、囲碁のAIに興味があったことです。囲碁は好きなので、気軽にAIと対局できるものがあればいいな、と思っていました。それと、AI同士の対局を眺められたら楽しそうだ、とも思いました。おるふぇ碁は、黒と白のそれぞれを手動かAIにできるので、両方をAIにすれば、AI同士の対局が始まります。AI同士の対局を眺めながら、お酒を飲む、という使い方も、いいと思います(端末が熱くなることがあります。その場合は、負荷設定で調整できます)。
作るのも、AIに任せてみる
もうひとつ、やってみたかったことがあります。それは、このアプリ自体を、AIに作らせることです。何を使って実装するかを決めるところから、使うものの利用条件(ライセンス)の確認まで、すべてAIに任せました。どこまでのものが作れるのか、そこにいちばん興味がありました。
最初は、手軽に遊べるもののつもりだった
最初は、手軽に囲碁AIで遊べるものを作るくらいのつもりでした。最初からあった案は、AIの評価による手の色分けと、統計くらいです。作っていくうちに、機能が増えて、今の形になりました。
AIの提案で、SGFも入れた
AIにいろいろ聞きながら作っているうちに、AIのほうから「SGFの扱いを実装しましょうか」と提案されました。棋譜の保存と読み込みは、ないよりあったほうがいいと思ったので、作ってもらいました。
プロの棋譜は、どう見えるか
AIの評価で手を色分けする、というアイデアも入れました。SGFが読めるので、プロの棋譜を解析したら、どんなふうに見えるのか、という興味もありました。真面目な研究に使えるかどうかは、私にもまだ分かりません。まずは娯楽として使ってもらえればいいと思っています。
こだわったところ
- 評価の色分け:評価がほとんど変わらない手は、同じ色(金)にしました。
- AIの打ち回しに、多様性を持たせたこと:同じくらい良い手の中から選ぶので、同じ局面でも、毎回同じ手にはなりません。終盤は「同じくらい」の幅が狭くなるので、選べる手も絞られて、ヨセが正確になります。AIっぽい打ち方にならないように、自分の石が攻められたときは、その石の近くの手を優先して選ぶ、急場の工夫もしています。
- セキや死に石の判定:考えているうちに楽しくなって、のめり込みました。AIに任せたつもりでしたが、このあたりでは、結局、AIと相談しながら作る形になっていました。
できあがったもの
- 9路・13路・19路の盤で、日本ルールで打てます。置き石も使えます。
- AI(KataGo)は、お使いの端末のブラウザの中で動きます。棋譜や対局の内容は、サーバーに送りません。
- 黒と白のそれぞれを、手動かAIにできます。両方をAIにすると、AI同士の対局が始まります。AI同士の対局や、棋譜全体の解析は、長く続けると端末が熱くなるので、読むスレッド数を抑えて、1手読むごとに少し休むようにしています。スレッド数と休みの長さは、設定のページで変えられます。
- AIの候補手を、金・銀・銅の丸で見られます。打った手の評価や、棋譜全体の解析もできます。
- 終局したら整地に入り、死んでいる石には、自動で×が付きます。
- 棋譜は、SGFで保存と読み込みができます。
作らなかったもの
投了の機能は作りませんでした。一人で使うことを考えていたので、投了は必要ないと思ったからです。AIも投了せず、最後まで打ちます。投了図から、そのまま変化を並べて確かめることもできるので、このアプリに「投了」という情報は、なくてもよいと考えました。ただ、プロの棋譜などは投了で終わっているものが多いので、そうした棋譜を開いたときは、投了と結果をお知らせします。
作る途中のこと
作る途中で詰まったところや、直したところは、開発メモに書いています。
AIに任せて、どこまで作れたのか。その答えは、実際に触って、確かめてもらえればうれしいです。