# Multi-Agent: Orchestrator-Workers

> An orchestrator agent coordinates multiple specialized worker agents to complete complex tasks.

- **Category**: Language Models
- **Subcategory**: Agent Architecture
- **Canonical URL**: https://designpattern.fyi/patterns/multi_agent_orchestrator_workers/

---

## Description
**Context**: Complex tasks benefit from decomposition. An orchestrator assigns subtasks to specialized workers, aggregates results, and handles coordination.


## Use Cases
Multi-domain research systems or complex multi-step workflows requiring specialized expertise.



## Implementation Example

```python
# Orchestrator-Workers
orchestrator = OrchestratorAgent()
worker_a = WorkerAgent(specialty="analysis")
worker_b = WorkerAgent(specialty="research")
```



## Trade-offs


### Advantages

- - Scales to complex tasks

- - Parallel execution possible

- - Specialized expertise per agent




### Considerations & Drawbacks

- - More complex orchestration

- - Higher latency

- - Coordination overhead







---
**Reference**: [Original Source](https://docs.cloud.google.com/architecture/choose-design-pattern-agentic-ai-system)

