pub trait ManagerAgent: Send + Sync {
// Required methods
fn prepare(&self, context: &TaskContext) -> BatchDecisionRequest;
fn finalize(
&self,
context: &TaskContext,
responses: Vec<(WorkerId, DecisionResponse)>,
) -> ManagementDecision;
fn id(&self) -> ManagerId;
fn name(&self) -> &str;
}Expand description
観察・判断・指示を行う上位Agent(Batch 対応)
§設計
ManagerAgent は TaskContext を受け取り、Request を生成する。 SwarmState からの分析は Analyzer が担当。
┌─────────────────────────────────────────────────────────────┐
│ Tick N │
│ │
│ SwarmState → [Analyzer] → TaskContext │
│ ↓ │
│ Manager[0].prepare(ctx) ─→ N Requests ─┐ │
│ Manager[1].prepare(ctx) ─→ N Requests ─┼─→ Batch │
│ ... │ │
│ Manager[M].prepare(ctx) ─→ N Requests ─┘ │
│ │
│ ↓ LLM Batch Call (~1秒) │
│ │
│ M×N Responses → 各 Manager.finalize(ctx, responses) │
│ ↓ │
│ Worker Instructions 配布 │
└─────────────────────────────────────────────────────────────┘Required Methods§
Sourcefn prepare(&self, context: &TaskContext) -> BatchDecisionRequest
fn prepare(&self, context: &TaskContext) -> BatchDecisionRequest
TaskContext を見て Batch リクエストを生成(軽量、同期)
どの Worker に何を聞くかを決定する。 Orchestrator がこれらを集約して LLM Batch Call を実行する。
Sourcefn finalize(
&self,
context: &TaskContext,
responses: Vec<(WorkerId, DecisionResponse)>,
) -> ManagementDecision
fn finalize( &self, context: &TaskContext, responses: Vec<(WorkerId, DecisionResponse)>, ) -> ManagementDecision
Batch 結果受取後: 指示を生成(軽量、同期)
LLM Batch Call の結果を受けて、Worker への具体的な指示を生成する。
Trait Implementations§
Source§impl ManagerAgent for Box<dyn ManagerAgent>
Blanket implementation for Box
impl ManagerAgent for Box<dyn ManagerAgent>
Blanket implementation for Box
Source§fn prepare(&self, context: &TaskContext) -> BatchDecisionRequest
fn prepare(&self, context: &TaskContext) -> BatchDecisionRequest
TaskContext を見て Batch リクエストを生成(軽量、同期) Read more
Source§fn finalize(
&self,
context: &TaskContext,
responses: Vec<(WorkerId, DecisionResponse)>,
) -> ManagementDecision
fn finalize( &self, context: &TaskContext, responses: Vec<(WorkerId, DecisionResponse)>, ) -> ManagementDecision
Batch 結果受取後: 指示を生成(軽量、同期) Read more
Implementations on Foreign Types§
Source§impl ManagerAgent for Box<dyn ManagerAgent>
Blanket implementation for Box
impl ManagerAgent for Box<dyn ManagerAgent>
Blanket implementation for Box