囲碁と生成AIを組み合わせた指導碁システムの設計案

囲碁×生成AI 指導碁チャットボット構想(開発工程メモ)

今回は、技術的には十分に実現可能だと感じた「囲碁 × 生成AI API を用いた指導碁チャットボット」構想について、将来の開発ネタ・備忘録として整理しておきます(誰かが作ってくれるかも、と期待しています(ヽ”ω`)

課金・API単価・運用コストの問題があるため、現時点では様子見としますが、構成自体はかなり明確になっています。

想定する機能要件

  • ブラウザ上でCPUと囲碁が打てる
  • 局面の要所でAIがポイント解説を行う
  • 解説は音声ではなく、チャット欄にテキスト表示する

重要なのは、「囲碁の正しさ」と「説明の分かりやすさ」を分業させる点です。

全体構成(役割分離が前提)

① フロントエンド(ブラウザUI)

  • HTML5 Canvas または SVG による碁盤表示
  • クリック着手、パス、投了などの基本操作
  • チャット欄(AIコメント表示用)
  • 最終手ハイライト、簡易な手番表示

見た目は「ブラウザゲーム風」で十分です。
高度な演出よりも、操作の軽さと安定性を優先します。

② ゲームサーバ(対局管理)

  • 対局セッション管理(盤サイズ、コミ、手順)
  • 合法手チェック、着手反映
  • SGF形式での棋譜保存・出力

最初は9路固定・ルール固定でも問題ありません。
「動くこと」を最優先する段階です。

③ 囲碁エンジン(解析・着手生成)

ここが囲碁の「正解」を担う中核になります。

  • KataGo 等の囲碁AIを常駐起動する
  • CPUの着手生成(短時間設定)
  • 要所のみ解析(候補手、勝率差、目数差)

生成AIに読みを任せるのは危険です。
「読むのは囲碁AI、語るのは生成AI」という役割分担が必須です。

④ 生成AI(解説チャット)

生成AIはあくまで「翻訳者・説明係」として使います。

  • 入力:局面情報(SGF)+囲碁AIの解析結果
  • 出力:短いテキスト解説(チャット欄用)

毎手解説はコスト・遅延ともに厳しいため、

  • 悪手と判定されたときのみ
  • ユーザーが要求したときのみ
  • 数手に一度の要所解説

といったように、解説頻度を制御する設計が必須になります。

通信方式

  • WebSocket を用いた双方向通信
  • 着手 → 即CPU応答 → チャット追記、という流れ

リアルタイム性があり、「ゲーム感」を出しやすい構成です。

開発工程(小さく作る順)

STEP1:最小構成プロトタイプ

  • 9路盤固定
  • CPU対局のみ
  • 解説はオンデマンド(ボタンを押した時だけ)

STEP2:指導碁要素の追加

  • 評価差が大きく落ちた手を自動検出する
  • 分岐点だけ解説する
  • 候補手2~3手と簡潔な理由を提示する

STEP3:運用を意識した調整

  • 解析回数・解説回数の制限
  • 棋力想定による解説レベル切替
  • 棋譜復習機能の追加

コストと現実的な判断

最大の問題は生成AI APIの単価です。

  • 解説を多用すると原価が跳ね上がります
  • 課金設計が必須になります
  • 趣味・普及目的では負担が大きいです

そのため現時点では、「誰かが開発するならそれを見守る」という判断も合理的です。問題はアイデアをちゃんと持っているかということ・・・

既存サービスとの関係

COSUMI 等は既にブラウザ対局・検討機能を持っており、
この分野を狙っている可能性は高いです。

ただし、

  • 機械的な評価表示
  • 人間向けの納得感ある説明

この後者をどう提供するかが、今後の差別化ポイントになります。

まとめ

技術的には実現可能です。
問題はタイミングとコストです。

生成AIの単価が下がり、「囲碁普及 × 解説AI」が採算が取れるのであれば、いつでも実装可能と判断します。

本記事は、その設計メモとして残しておきます。
私は金銭絡むと弱いので無理そう。

この記事が誰かの参考になれば・・・( 一一)

ブログ主が運営しているゲームです。

 MobileFight

 ジマさんの囲碁入門