「Online KataGo」をリリースしました

少し時間が掛かってしまったのですが、以前からここにも少し書いていた、オンライン版のKataGoがようやくできました。

Online KataGo
https://www.onlinekatago.net/

まだ怪しいところがいろいろありますが、一回表に出しておきたいと思います。

いずれ作る予定の、でもまだ実装できていない機能もいくつかあるのですが、それを順に書いていくと、まず、クリック/タップしなくても自動的に解析が始まるようにしたいと思っています。ただこれは、ユーザの使用状況をしばらく確認してみないと仕様が定まらないので、実装するにも少し時間が必要です。

それから、SGFのLOAD/SAVEができないのは、当然できるようにしますのでしばらくお待ちください(SGFのパーサって難しいんですよね…)。その代わり、COSUMIの対局リプレイ式のクエリストリングがすでに使えるようになっています。こんな感じですね。今現在、使えるパラメータは、bs(碁盤サイズ)、k(コミ)、h(置き石)、gr(棋譜)のみですが、将来的にはもう少しいろんなパラメータを使えるようにするかもしれません。今すぐ手持ちの棋譜を解析したいって方は、オンライン棋譜ビューア使って変換してみてください。出来るだけすぐに、COSUMIの対局リプレイにも、Online KataGoへのリンクを用意するつもりです。というわけで、当面はCOSUMIユーザが優先ってことでお願いします。

あと、読み込んだ棋譜を丸ごと解析っていうのも当然考えはしますが、これは少し難しいかもしれません。仕様次第なんですが、リソースが無限にあるわけではないので… Online KataGoはもう少しピンポイントに使ってもらいたいなと思っています。さらっと全体を解析するだけだったら、COSUMIの対局リプレイを使ってください。

今現在、KataGoはAWS EC2のg6.4xlargeで動かしています。そしてそれではリソースが足りなくなったら、前にも書いた通りg6.12xlargeに移行することを本気で検討しているのですが、余裕で年400万円オーバーなんですよね…(COSUMIの大半もそこで動かせるので、Online KataGoで使う分としてはそこから年100万円ほど安くなりますが) 人生短いし(笑)、少なくとも1年間は私は楽しい思いができるので、お金ぶっこむことにはもう覚悟ができているのですが、とはいえなんだかものすごく割高な気がしています。で、なんでこんなに価格が高いんだろうって考えていると、とりあえずこれ、GPUのメモリが多すぎるんですよね。NVIDIA L4って24GBなんですが、KataGo動かすだけなのにそんなに要らない!(なんならg6.12xlargeのメインメモリは196GB。ほんとに要らない!(笑)) このあたり本当によくわからないのですが、もしかしてデータセンターでKataGo的なタスクを動かす需要ってほとんどないんですかね? データセンターのGPUって、推論ではなく学習に使われていることが多いとか、推論は推論でも大き目のサイズのNNか、もしくは複数種類のNNを同時に動かしていることが多くて、囲碁みたいに、ひとつの小さ目サイズのNNにほとんど違いの無い入力データを繰り返し繰り返し放り込み続けるっていうのは、かなり特殊な使い方なのかもしれません。元々、「囲碁のためにグラフィックボードを買うのはもったいないからやめよう」ってところから作り始めたプロダクトなんですが、囲碁のためにL4借りるのは、はるかにもっともったいないことのような気がしてきました。でももう後に引けないので、今Google Cloudの価格を調べています。N1+T4が正解とかってあるのかな? いやしかし、一介の個人がこんなのほいほい払っていたら、デジタル赤字なんて無くなる訳がないですね…

あとそれから、前にも書いた通り、いずれAdSenseのオファーウォールをかなりがっつり掛けるつもりにしています。ただ、それはあくまでサーバ構成が最終形態になって、そのリソースが使い切られるようになった時の話です。それまでは、広告フリーでお楽しみください。

[追記 2025/11/17]
最初のリリースからすでにいろいろやっていて、もう影響範囲もよくわかっていませんが2つほど大きなバグを潰し、それ以外にも大量の修正を加えました。現時点の状態をもって、一応ちゃんとスタートできたような気がします。COSUMIの対局リプレイにも、リンクのボタンを用意しました。

自分でもちょこちょこ使ってみて、なんとなく必要な機能と適切な仕様がわかってきました。棋譜の丸ごと解析は、形勢だけでもいいのでやはり必要ですね。これは必ずやりたいと思います。

[追記 2025/12/7]
解析モードに、スライダーで移動できる範囲内すべてを一括で解析する「ALL」と、ユーザのアクション無しで自動で解析が開始する「AUTO」を追加しました。それ以外にもまたさらに大量の改善が入っていて、リリース当初とは比べ物にならないくらい良くなっています。後はもうSGFの読み書きをできるようにしなければいけないだけで、それを除けば現時点でほぼほぼ最終形だと思います。

手を動かしていて思ったのですが、オレゴンまで行って、19路盤の対局丸ごとをプロレベルの解析して、戻って来ても2秒掛からないっていうのは、改めてとんでもない時代になりましたね… COSUMIを始めた頃の自分に想像がついていた未来なのかどうかも、今はもうよく覚えていません。ちなみに、オレゴンからNNの出力が帰って来ることを、わたしは「オレゴンからAI」って呼んでいます(笑)。

[追記 2025/12/22]
こまごまとした修正をしつこく続けていて、細かい部分もかなり良くなったと思います。もう本当にSGFを読み書きできるようにするだけになった感じなんですが、Online KataGoでそれをやる前に、COSUMIのオンライン棋譜ビューアでもファイルから読めるようにしてみました。ちょっとしたことなんですが、こんなことでもいろいろ調べないとできないので、結構面倒…

4 Comments »

  1. 楽しみにしてます!

    ike - 2025/11/27 12:58

  2. KataGoネットワークファイル(b28c512nbt)の質が、最近になってかなり向上している気がします。COSUMIの対局リプレイで用いられるものを更新する価値は十分にあるのではないでしょうか。

    (現状だと、KataGo自身の示した候補手でスコアが致命的に悪化するケースがそれなりに発生しています。以下例)
    https://www.cosumi.net/replay/?id=209&b=You&w=COSUMI&k=6.5&r=b151.5&bs=19&l=10&gr=qdddcpqpoqpnodephqcododpcqcndncmfodrcrdqbobnapgpdmckdkcjfpgqfqfrergrdskpqqrqjqkqjpjokrlrjrkomqlqioinhonnmrpqqrprpppooroppsphohpgpiqiqjogoingmipjokpkqkojnjplqhrirhpepdncndmhnirgrjmdmeldlejckhlhlikflgkgmgkenhdfdceccdccdbcbeddeebfcfbgcbdbcabbeacpbkdmcqbgohngnimgljdkcidhkjnighiceadgbhgiiijhhghihhfhjgiggiflsikfjeiejppfgegfhfiehdidjdhdgffefgfegbhchcibicgaecagjchahagcfaifebjdlmomnlniljlknlmkmnollmmhpiphljmroqmpmmljkjjkkklrbqnqormnmnllkhmolonomoohdjgqcicibrcqaelekrdirishsfngmjsnesiemblbkakclenfmhchbgdfdhegehdnkmkfasbpcsceabbhrfsrabfocafeeaoiqkjgaesdaanoerfbmalamajgssatttt&ds=kekfkgneoepeighhihiingogpgphrgojpjpkolplnmompmmnnnpnpoqoroqpjkkklkllnkelkmknjokokpkqlqlrlsdpepdqdroprq

    通りすがり - 2025/12/06 12:26

  3. 調べてみると、私が思っていたよりレート差がありましたので、新しいウェイトに変更しました。ただ、例示していただいた局面に関しては、残念ながら出力にほとんど違いは無さそうです…

    https://www.perfectsky.net/blog/?p=711

    > [追記 2025/12/7]
    > ウェイトをkata1-b28c512nbt-adam-s11165M-d5387Mに変更しました。kata1-b28c512nbt-s8536703232-d4684449769とのKataGo Distributed Trainingでのレート差は現時点で83、COSUMIでの棋譜解析時と条件を近づけての自己対戦で勝率53.6%です。

    kingfisher - 2025/12/07 08:04

  4. ご対応ありがとうございます。

    過去の対戦も含めて少し確認した結果ですが、悪手の指摘率上昇と、明白なAI側ミスの減少が見られるようです👍

    通りすがり - 2025/12/07 19:30

Leave a comment


ご気軽にコメントしてください。ただし、すべてのコメントに返信をお約束するものではありませんのでご了承ください