Re Reference AI

エージェント

サブエージェントとは

Subagent / Sub-agent

親エージェントがタスクの一部を委譲するために起動する、独立したコンテキストを持つ子エージェント

エージェントマルチエージェント

ひとことで言うと

メインのAIエージェントが、調査や作業の一部を任せるために呼び出す「部下のAI」。部下が別の作業スペースで働いて結果だけ報告するので、メインの記憶容量を圧迫しない。

概要

サブエージェントとは、親となるエージェントがタスクの一部を委譲するために起動する子エージェントを指す。 多くの実装では、サブエージェントは親とは独立したコンテキストウィンドウを持ち、割り当てられたタスクに必要なツールと指示だけを与えられて動作する。大量のファイル読み込みや検索のような、コンテキストを大きく消費する作業をサブエージェント側で実行し、親には要約された結果だけを返すことで、親のコンテキストを本来のタスクに集中させられる。 コードレビュー専用・調査専用のように役割を特化させた定義を用意しておき、親がタスクに応じて使い分けるほか、複数のサブエージェントを並列に起動して作業を分担させる構成もとれる。 コーディングエージェントをはじめとするエージェント製品で標準的な機能になりつつあり、コンテキストエンジニアリングの実践手段としての側面も持つ。

背景

単一のエージェントで長いタスクを処理すると、調査結果やツール出力がコンテキストウィンドウを圧迫し、本来のタスクの精度低下を招く課題があった。 コンテキストを消費する作業を独立した子エージェントに切り出し、結果だけを親へ返す構成が、この問題への対処として広まった。

比較

  • マルチエージェントマルチエージェントが複数エージェントの協調構成全般を指すのに対し、サブエージェントは親が子へタスクを委譲する階層関係に焦点を当てた言葉
  • オーケストレーターオーケストレーターがタスクを分解して割り振る司令塔の役割を指すのに対し、サブエージェントは割り振られたタスクを独立したコンテキストで実行する側を指す

関連用語

マルチエージェントオーケストレーターコーディングエージェントコンテキストエンジニアリングAIエージェント

よくある質問

サブエージェントを使うと何が良くなるのか?

大量のファイル読み込みや検索の結果を親のコンテキストへ入れずに済むため、親エージェントが長いタスクでも本来の目的に集中しやすくなる。また役割特化の指示とツールだけを持たせることで、個々のタスクの精度を上げやすい。並列起動による時間短縮も利点になる。

参考文献

関連Zenn記事