OrquestraçãoAtualizado 2026-06-21 · Versão 1.0

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.

Evidência: Observação do setorConfiança: AltaFonte: Observação do setorFonte: Paper

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

Modelo orquestrador (líder)Modelos trabalhadoresLógica de delegaçãoSintetizadorEstado / ferramentas compartilhados

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

LangGraphCrewAIOpenAI Agents SDKModel Context Protocol (MCP)

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.

Referências