AIToday
大規模言語モデルAIコーディングZenn AI/ML掲載日時: 2026年10月12日 10:00

AIエージェント中断は出力・副作用・状態の3層で

LINEで送る
AIエージェント中断は出力・副作用・状態の3層で

3つのポイント

  1. 何が起きたか

    HACHの開発者は応答のキャンセルを出力ストリーミング、副作用、状態の3層に分け、出力層だけでは不十分だと述べた。

  2. なぜ重要か

    出力だけを止めると、バックグラウンドでメール送信済みのターンがキャンセル扱いになり、記録されていないツール呼び出しが次ターンで誤って再実行されうる。

わからないところ、AIに聞けます

質問と回答はこのページに公開されます。

こういう要約が、毎朝あなたのメールに届きます。

背景と解説

キャンセルは単純な停止ボタンではなく、一貫性の問題だ。テキスト生成は未表示のストリーミング出力を捨てればいつでも切れるが、メール送信やチケット更新のような副作用を伴うツール呼び出しは、実行の前後にあるチェックポイントでしか中断できない。そのため呼び出し中に届いたキャンセル信号は完了まで待ち、判断は次のチェックポイントに先送りされる。

第二の論点はエージェントが何を記憶するかだ。この設計はキャンセル時の記録を会話履歴とユーザー通知の両方に残し、実行前にキャンセルされたステップとすでに完了したステップを区別し、取り消し手段があればその経路を示す。この記録がなければ、次のターンで状態を誤読し、同じ操作を二度実行しかねない。まさにキャンセルが防ごうとした重複実行の失敗である。

この設計は明示的なキャンセルと暗黙のキャンセルの線引きもしている。停止と明言した新規メッセージは即時中断を起こすが、無関係な依頼はキューに入れて現在のターンを完了させ、曖昧なケースは完了を許す。中断による一貫性リスクが、やや冗長な回答よりも大きいからだ。著者は、Slack / Teams / Chatwork / LINE WORKSに常駐し、チャットやメール、カレンダー、議事録を集めて毎朝のレポートを作るエージェントHACHの開発から得た知見だと述べている。

よくある質問
ツール呼び出しはいつなら安全に中断できるか。
呼び出しが始まる前か、終わった後だけ。ツール実行中にキャンセル信号が届いた場合、この設計はその呼び出しの完了を待ち、次のステップの直前で止める。
ツールがすでに実行された後にキャンセルが届いたらどうすべきか。
この設計では会話履歴に記録し、どの操作がすでに実行されたかをユーザーに伝え、取り消し手順があれば提示する。記録しなければ、エージェントはツールが実行されなかったと誤認して繰り返すおそれがある。
生成中に届いた新規メッセージをエージェントはどう扱うべきか。
明確に停止を求めるメッセージなら即座に中断する。無関係な依頼なら現在の生成は中断せず、メッセージをキューに入れる。判断に迷う場合は、この設計ではターンを最後まで完了させる。
LINEで送る

あなたの仕事に関係するAIニュースを、毎朝お届けします。

業界と使っているAIツールを選ぶと、仕事に関係するニュースが毎朝届きます。

登録無料・Googleアカウントなら30秒・いつでも解除できますAITodayについて →

AIに質問

この記事についてわからないことをAIに質問できます。AIはこの記事・AIToday の過去記事・Wikipedia を読み、出典を付けて答えます。Q&Aはこのページに公開され、他の読者も読めます。

質問と回答はこのページに公開されます。

関連記事

次の記事へBroadcom、ASIC収益が来年1150億ドルへ