CSのTips一覧

エージェントの実行予算は子タスクと再試行を含む全体で守る

反復回数・トークン・費用・経過時間・同時実行数を、処理全体で制限する。上限は指示文だけに書かず、モデルやツールを呼ぶ実行側で確認する。

用語

実行予算
1件の仕事全体に許す呼び出し数・時間・費用などの枠。
予約
並列の処理が同じ残予算を重複して使わないよう、実行前に枠を確保すること。
deadline
処理を続けられる絶対的な期限。外部操作の取り消しまで保証するものではない。

図と例

設計判断の流れ(独自の例)

全体の残予算を確認 → 子エージェントと再試行の枠を予約 → 期限内に呼び出す → 実績を精算し継続か停止

仮定の計算例:顧客の問い合わせ調査で、仕事全体のモデル呼び出し上限を10回とし、主担当が2回使った。契約調査に5回、入金調査に3回を予約すれば合計10回に収まる。両方へそれぞれ「残り8回」を渡すだけなら最大18回になる。再試行も同じ枠を使い、枠が尽きた調査は未完了として担当者へ渡す。

実際のサービス・製品では

  • Anthropic

    Anthropicはエージェントの制御に最大反復回数などの停止条件を挙げ、自律性による費用と誤りの増加を指摘する。全体予算の予約・精算はこのTipで示す設計例。

    資料を読む

解説

顧客への導入前に、1回の生成、1件の仕事、顧客全体の利用量と同時実行枠を分ける。上限到達は成功と区別し、完了済み・未完了・結果不明を保存する。月末の集中や他の顧客への影響も確認し、担当者が再開してよい条件を決める。

実行予算は1件の仕事に許す資源の枠。親エージェントが5回で止まっても、各回で子タスクを増やし、子エージェントが別々に再試行すれば呼び出しは増える。子エージェント・再試行・検証器・外部ツールの利用量も同じ仕事IDで集計する。並列実行では「残りを読む」だけで全員が同じ枠を使う競合が起きるため、呼び出し前に予約し、完了後に実績で精算する。予約に使う費用の上限が分からない場合は、厳密な費用上限を保証できるとは説明しない。deadlineで新規処理を止めても、実行中の外部処理はキャンセルできない場合があり、完了結果の回収が要る。

トレードオフ

子エージェントごとに固定の枠を配る
得るもの:全体の最大呼び出し数を把握しやすい
払うもの:一方の枠が余っても他方では使えず、仕事を早く止める場合がある
共有予算から実行ごとに予約する
得るもの:必要な処理へ残枠を配り直せる
払うもの:原子的な予約と精算、停止後の回収処理が必要

さらに学ぶ

チェック

全体上限10回のうち親が2回使用。子Aへ5回、子Bへ3回を予約し、再試行も含めて数える。子が使える合計は?

  1. 各子が8回ずつ
  2. 子の再試行は上限外なので無制限
  3. 子Aと子Bを合わせて8回
解答と解説

子Aと子Bを合わせて8回

残枠は10−2=8回で、5+3=8回の予約に分けている。子ごとに同じ残枠を渡すと2+8+8=18回になり得る。再試行もモデル呼び出しであり、この全体上限に含める。