Orquestrador-Trabalhadores (Orchestrator-Workers)
Um LLM orquestrador decompõe dinamicamente uma tarefa em subtarefas, delega cada uma a um LLM trabalhador e sintetiza os resultados. Diferentemente da paralelização fixa, o orquestrador decide as subtarefas em tempo de execução, o que o torna adequado para tarefas complexas cuja decomposição não é conhecida de antemão.
Problema
Algumas tarefas são complexas demais para uma única chamada e não podem ser decompostas de antemão, porque as subtarefas necessárias dependem da entrada.
Quando usar
Use orquestrador-trabalhadores quando uma tarefa precisa de decomposição dinâmica — o número e a natureza das subtarefas variam conforme a entrada — e um modelo coordenador pode planejar e integrar o trabalho.
Solução
Um modelo líder (orquestrador) analisa a tarefa, decide quais subtarefas são necessárias e delega cada uma a um modelo trabalhador (muitas vezes especializado). Depois coleta e sintetiza as saídas dos trabalhadores num resultado final.
É a generalização agêntica da paralelização: a decomposição é decidida em tempo de execução em vez de fixada, o que adiciona flexibilidade ao custo de mais coordenação e imprevisibilidade.
Componentes
Benefícios
- Lida com tarefas complexas com decomposição dinâmica.
- Os trabalhadores podem se especializar por subtarefa.
- Escala para entradas variadas sem passos fixados.
Riscos
- Sobrecarga de coordenação, latência e custo de tokens.
- Mais difícil de prever e depurar que os fluxos fixos.
- O orquestrador pode planejar mal ou entrar em laço sem limites.
Quando não usar
- Quando a decomposição é conhecida de antemão: use encadeamento ou paralelização fixa.
- Para tarefas simples que uma única chamada resolve.
- Quando a previsibilidade e o controle estrito de custo são prioritários.
Tecnologias
Exemplos
- Uma tarefa de programação em que o líder decide quais arquivos mudar e delega as edições.
- Uma pesquisa dividida em subperguntas, cada uma pesquisada e depois sintetizada.
- Um relatório complexo montado a partir de seções escolhidas dinamicamente.
KPIs
- Taxa de conclusão ponta a ponta
- Proporção de trabalhos orquestrados que terminam corretamente em todas as subtarefas; o orquestrador é dono do resultado completo.
- Fan-out de workers e custo
- Número de chamadas a workers por trabalho e seu custo combinado em tokens; a orquestração pode disparar o gasto se a decomposição for descuidada.
- Latência do caminho crítico
- Tempo da cadeia dependente mais longa, não a soma dos workers; isso limita a capacidade de resposta.
- Taxa de erro de subtarefas
- Com que frequência os workers individuais falham ou devolvem resultados inúteis, provocando retentativas e recuperação.
Modos de falha observados
- Má decomposição: o orquestrador divide a tarefa errado, então workers corretos produzem um todo incorreto.
- Perda de contexto entre orquestrador e workers, causando resultados parciais inconsistentes ou contraditórios.
- Explosão de custo por gerar workers demais ou aninhamento profundo sem limites de orçamento.
- Ponto único de falha: se o orquestrador erra, todo o trabalho falha apesar de workers saudáveis.
Lições aprendidas
- Invista na lógica de decomposição: a maioria das falhas remonta a como o trabalho foi dividido, não aos workers.
- Passe aos workers o mínimo de contexto necessário, de forma explícita, para evitar deriva e contradições.
- Defina um orçamento e um teto de profundidade; a orquestração sem limites é onde o custo dispara.
- Torne o plano do orquestrador inspecionável para rastrear falhas até uma subtarefa concreta.
FAQs
- Como difere da paralelização?
- A paralelização usa uma divisão fixa predefinida. Orquestrador-trabalhadores decide as subtarefas dinamicamente em execução, então lida com tarefas cuja forma varia conforme a entrada.
- É um sistema multiagente?
- Sim, é um padrão multiagente comum. Use-o só quando uma tarefa realmente se beneficiar de subtarefas dinâmicas e separáveis.
- Como evito que descontrole?
- Defina orçamentos, limites de passos e condições de parada, e adicione observabilidade para ver e limitar o planejamento do orquestrador.