ブログへ戻る

AstrBot / AI / Chat

グループチャット Bot が発言タイミングを判断する仕組み

Group Chat Plus における確率制御、AI 判断、文脈バッファ、セッション設定の組み合わせ。

グループチャット Bot で難しいのは、一つの返信を生成することではなく、返信すべきかどうかを判断することです。発言が多すぎると会話を遮り、少なすぎると不在に見えます。Group Chat Plus は、参加判断を観察、調整、テストできるパイプラインとして扱います。

プロジェクト概要

リポジトリ: RhoninSeiei/astrbot_plugin_group_chat_plus

このプラグインは、グループメッセージ入力、確率制御、AI 判断、文脈バッファ、画像説明、記憶アダプター、自発発話、Web 管理画面を中心に構成されています。受け取った全メッセージをそのまま生成へ渡すのではなく、まず現在の場面で返信する価値があるかを確認します。

判断の流れ

第一層はルールと確率です。コマンド風のメッセージ、関連性の低いメッセージ、クールダウン、返信密度制限が一部の入力を除外します。その後、最近の返信、会話の活発さ、メッセージ品質に応じて候補の重みを調整します。

第二層は AI 判断です。この層に進んだメッセージには必要な文脈を添え、応答が有用かどうかをモデルに判断させます。これにより、単純なキーワード反応ではなく、場面に応じた判断に近づきます。

第三層はセッション設定です。最近の修正では session persona と provider ルールを判断に含め、別の会話で誤った人格やモデル設定を使わないようにしました。発言タイミングと生成方法はセッション境界に合わせて変化します。

文脈と記憶

プラグインは返信しなかったメッセージを一時的に保持し、後で返信が必要になったときに文脈へ取り込めます。画像は短い説明へ変換してから判断経路に入れるため、毎回元メディアを処理する必要がありません。長期記憶はアダプター経由で接続し、キャラクターと会話の境界を分けます。

この設計の価値は、即時返信ではなく遅延参加を可能にすることです。Bot は先に観察し、会話に余地があるタイミングで応答できます。

維持管理メモ

この種類のプラグインでは、入力候補、文脈利用、セッションごとの生成設定を安定した境界として扱うことが重要です。そこをテストできる単位に分けると、返信頻度、画像処理、記憶連携を後から調整しやすくなります。